Рейтинг:-1

Резервное копирование моего веб-пространства на NAS

флаг id

Прежде всего: я не знаю, правильное ли это место, чтобы спросить, пожалуйста, скажите мне, куда я могу обратиться с этим, прежде чем вы удалите мой пост, это было бы здорово, спасибо!

Что я хочу сделать (и какие у меня есть варианты):

У меня есть Synology NAS, который может выполнять задачи, которые (да, я нуб) являются «командами Linux». Моя цель — сделать резервную копию всего моего веб-пространства или определенной папки на нем на NAS, но только новые или измененные файлы (например, это будет работать с git).

Я не могу использовать ключи SSH (что, как я полагаю, было бы лучшим способом), потому что я не могу правильно настроить их на своем NAS (это возможно, но мне не хватает знаний, и хотя я был бы признателен, если бы вы помогли мне с те, это просто слишком сложно для меня, я прочитал кучу всего, и это просто не работает, поэтому я пробую способ без SSH-ключей (по крайней мере, так я немного понимаю, что происходит)).

Итак, мой псевдокод будет примерно таким:

  1. Подключите NAS к веб-пространству
  2. Перейдите в мою конкретную папку (в моем случае вход по FTP уже ограничен только этой папкой, поэтому мы можем это пропустить)
  3. Создайте папку на моем NAS / или перейдите к ней (она уже существует)
  4. Клонируйте все материалы из папки веб-пространства изначально в первый раз
  5. gzip всю папку и назовите zip по дате
  6. При повторном выполнении скрипт должен только проверять, были ли изменены какие-либо файлы, и только обновлять файлы, загружать новые или также удалять старые (так что каждый из моих почтовых индексов будет полностью рабочим веб-пространством без каких-либо ненужных файлов)
  7. Итак, теперь моя основная папка обновлена ​​​​в веб-пространстве и снова заархивирована.

Что у меня есть на данный момент:

lftp -u МОЕ-FTP-ИМЯ ПОЛЬЗОВАТЕЛЯ,МОЙ-FTP-ПАРОЛЬ МОЕ-ВЕБ-ПРОСТРАНСТВО-URL 'зеркало / тест'

tar -zcvf /volume1/BACKUPS/backup-$(дата +%Y-%m-%d-%H-%M-%S).tar.gz /volume1/BACKUPS/ИМЯ-ИМЯ-ВЕБ-ПРОСТРАНСТВА/

rm -rf /volume1/BACKUPS/ИМЯ-ВЕБ-ПРОСТРАНСТВА/

Некоторые проблемы с этим:

  1. Он загружает все веб-пространство каждый раз, потому что я не мог заставить работать «только новые файлы». Размер файла не проблема, но это так много маленьких файлов, это занимает очень много времени и просто блокирует ресурсы NAS.
  2. По какой-то причине gzip при распаковке содержит весь путь /volume1/РЕЗЕРВНЫЕ КОПИИ/ИМЯ МОЕГО ВЕБ-ПРОСТРАНСТВА/ и только в последней папке мои файлы. я просто хочу МОЕ-ИМЯ-ВЕБ-ПРОСТРАНСТВА папку с моими файлами внутри заархивировать.

Я был бы очень признателен, если бы вы могли помочь мне с этим. Это не должно быть лфтп, я тоже пробовал wget но это тоже не сработало. Так что все, что работает, просто дерзайте. Недавно я работал над этим в последний раз, но если я правильно помню, я не могу использовать мерзавец но я больше не знаю, почему

флаг cn
Сейчас не по теме: Вопросы о сбое сервера должны касаться управления системами информационных технологий в бизнес-среде.Вопросы о домашних и конечных компьютерах можно задавать в Super User, а вопросы о разработке, тестировании и инструментах разработки можно задавать в Stack Overflow.
Рейтинг:0
флаг cn

Для проблемы 1, если вы используете GNU tar (вероятно, так и есть), есть вариант --after-date=дата или же -N дата. Вы можете использовать такое выражение, как --after-date='2 дня назад' или же tar --новее 20210601 или же -N '2021-06-01 12:00:00' - будьте осторожны, чтобы использовать правильные кавычки. Говорят, что форматы немного зависят от версии GNU tar (хотя у меня пока не было проблем), поэтому, если один не работает, по крайней мере один из других должен.

Вы также можете использовать путь (начиная с "/"!) вместо даты. В этом случае tar будет хранить только файлы, измененные или созданные после времени модификации указанного файла. Если вы храните свои резервные копии в /volume1/BACKUPS, вы можете использовать «-N /volume1/BACKUPS/имя-вашей-последней-резервной копии».

Для проблемы 2 самый простой способ — использовать tar с вариант примерно так:

tar -zcvf /volume1/BACKUPS/backup-$(date +%Y-%m-%d-%H-%M-%S).tar.gz -C /volume1/BACKUPS/ИМЯ-ИМЯ-ВЕБ-ПРОСТРАНСТВА/ .

Это указывает tar на "cd" для /volume1/РЕЗЕРВНЫЕ КОПИИ/ИМЯ МОЕГО ВЕБ-ПРОСТРАНСТВА/ а затем заархивируйте текущий каталог ("".", который теперь /volume1/РЕЗЕРВНЫЕ КОПИИ/ИМЯ МОЕГО ВЕБ-ПРОСТРАНСТВА/.

jona avatar
флаг id
Большое тебе спасибо. Я не тестировал первую часть, потому что теперь фактически переключился на ключи SSH и rsync, но вторая часть помогла.
Рейтинг:0
флаг my

Если я хорошо понимаю, что вы хотите сделать, я бы предложил вам использовать программу, которая позволяет архивировать все файлы версионным способом, чтобы сохранить все файлы, от всегда до всегда, например, с технологией ZPAQ. С чем-то вроде программного обеспечения с поддержкой tar-snapshot.

Если я правильно понимаю, ваше веб-пространство «монтируется» Synology NAS, как если бы это была папка, верно? Не уверен, потому что я портировал на QNAP, а не на Synology (PS не может комментировать, недостаточно репутации)

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.