-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit ac566db
Showing
4 changed files
with
90 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
# Домашнее задание к занятию «`Резервное копирование`» - `Коряко Виталий` | ||
|
||
https://github.com/netology-code/sflt-homeworks/blob/main/3.md | ||
|
||
https://losst.pro/nastrojka-cron | ||
|
||
### Цель задания | ||
В результате выполнения этого задания вы научитесь: | ||
1. Настраивать регулярные задачи на резервное копирование (полная зеркальная копия) | ||
2. Настраивать инкрементное резервное копирование с помощью rsync | ||
|
||
--- | ||
|
||
### Задание 1 | ||
- Составьте команду rsync, которая позволяет создавать зеркальную копию домашней директории пользователя в директорию `/tmp/backup` | ||
- Необходимо исключить из синхронизации все директории, начинающиеся с точки (скрытые) | ||
- Необходимо сделать так, чтобы rsync подсчитывал хэш-суммы для всех файлов, даже если их время модификации и размер идентичны в источнике и приемнике. | ||
- На проверку направить скриншот с командой и результатом ее выполнения | ||
|
||
### Решение 1 | ||
|
||
``` | ||
rsync -av --delete --exclude='.*' --checksum /home/tester /tmp/backup | ||
``` | ||
|
||
![rsync](./images/rsync.png) | ||
|
||
--- | ||
|
||
### Задание 2 | ||
- Написать скрипт и настроить задачу на регулярное резервное копирование домашней директории пользователя с помощью rsync и cron. | ||
- Резервная копия должна быть полностью зеркальной | ||
- Резервная копия должна создаваться раз в день, в системном логе должна появляться запись об успешном или неуспешном выполнении операции | ||
- Резервная копия размещается локально, в директории `/tmp/backup` | ||
- На проверку направить файл crontab и скриншот с результатом работы утилиты. | ||
|
||
### Решение 2 | ||
|
||
``` | ||
nano backup_script.sh | ||
#!/bin/bash | ||
rsync -av --delete --exclude='.*' --checksum /home/tester /tmp/backup >> /var/log/backup.log 2>&1 | ||
chmod 777 backup_script.sh | ||
sudo touch /var/log/backup.log | ||
sudo chmod 777 /var/log/backup.log | ||
crontab -e | ||
0 0 * * * /home/tester/backup_script.sh | ||
sudo systemctl restart cron | ||
crontab -l | ||
sudo cat /var/spool/cron/crontabs/tester | ||
grep CRON /var/log/syslog | ||
cat /var/log/backup.log | ||
``` | ||
[crontab_tester](./crontab_tester) | ||
|
||
![crontab_rsync](./images/crontab_rsync.png) | ||
|
||
--- | ||
|
||
## Задания со звёздочкой* | ||
Эти задания дополнительные. Их можно не выполнять. На зачёт это не повлияет. Вы можете их выполнить, если хотите глубже разобраться в материале. | ||
|
||
--- | ||
|
||
### Задание 3* | ||
- Настройте ограничение на используемую пропускную способность rsync до 1 Мбит/c | ||
- Проверьте настройку, синхронизируя большой файл между двумя серверами | ||
- На проверку направьте команду и результат ее выполнения в виде скриншота | ||
|
||
--- | ||
|
||
### Задание 4* | ||
- Напишите скрипт, который будет производить инкрементное резервное копирование домашней директории пользователя с помощью rsync на другой сервер | ||
- Скрипт должен удалять старые резервные копии (сохранять только последние 5 штук) | ||
- Напишите скрипт управления резервными копиями, в нем можно выбрать резервную копию и данные восстановятся к состоянию на момент создания данной резервной копии. | ||
- На проверку направьте скрипт и скриншоты, демонстрирующие его работу в различных сценариях. | ||
|
||
------ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
0 0 * * * /home/tester/backup_script.sh |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.