Введение
Вы работаете младшим системным администратором в TechCorp — быстрорастущем технологическом стартапе. Вам поручили реализовать важную часть стратегии управления данными компании. Технический директор (CTO) подчеркнул значимость регулярного резервного копирования системных журналов для соблюдения нормативных требований по защите данных и облегчения поиска неисправностей в работе систем.
Руководитель группы доверил вам создание ежедневных резервных копий системных логов. Эта задача критически важна по нескольким причинам:
- Это помогает отслеживать активность системы и выявлять потенциальные угрозы безопасности.
- Это предоставляет ценные данные для отладки и оптимизации системы.
- Это обеспечивает соответствие отраслевым стандартам, требующим хранения истории журналов.
В рамках этого испытания вы научитесь создавать автоматизированные резервные копии файлов системных журналов на сервере Linux. Этот навык является фундаментальным для любого системного администратора и станет регулярной частью вашей работы в TechCorp.
Резервное копирование системных журналов
Ваша первая задача — создать резервную копию директории с системными журналами. Имя архива должно содержать дату создания, чтобы его можно было легко найти при необходимости.
Задачи
- Создайте резервную копию директории
/var/log/и сохраните её в каталоге/home/labex/project/. - Назовите файл резервной копии в формате
year-month-day.tar.gz. Например, если сегодня 20 февраля 2024 года, имя файла должно быть2024-02-20.tar.gz.
Требования
- Используйте команду
tarдля создания архива. - Убедитесь, что у вас есть необходимые права доступа для чтения директории
/var/log/. Для выполнения этой задачи вам может потребоватьсяsudo. - Резервная копия должна быть сжата для экономии дискового пространства.
Подсказка
Чтобы сформировать имя файла в нужном формате, воспользуйтесь командой date. Команда date со строкой формата +%Y-%m-%d выведет текущую дату в виде "год-месяц-день". Например:
date +%Y-%m-%d
Эта команда выведет что-то вроде "2024-02-20". Вы можете использовать это в сочетании с подстановкой команд для создания имени файла архива.
💡 Нажмите здесь для подробного объяснения подстановки команд
Подстановка команд (Command Substitution)
Вы можете использовать подстановку команд, чтобы перехватить вывод команды date и использовать его как часть имени файла. Это позволяет выполнить одну команду и вставить её результат в другую команду.
Существует два способа выполнения подстановки команд:
Использование синтаксиса
$()(рекомендуется):$(date +%Y-%m-%d)Использование обратных кавычек (устаревший синтаксис):
`date +%Y-%m-%d`
Например, чтобы создать переменную с именем файла, содержащим сегодняшнюю дату, можно использовать:
filename="backup-$(date +%Y-%m-%d).tar.gz"
В результате в переменной будет сохранена строка вида "backup-2024-02-20.tar.gz".
Пример
После создания резервной копии вы должны увидеть tar-файл в директории проекта:
labex:project/ $ ls
2024-02-20.tar.gz
Резюме
В этом испытании вы успешно выполнили важную задачу в рамках стратегии управления данными TechCorp. Вы научились:
- Использовать команду
tarдля создания резервных копий системных директорий. - Использовать команду
dateдля генерации меток времени в именах файлов. - Создавать сжатые архивы системных журналов в формате
.tar.gz.
Эти навыки незаменимы в системном администрировании, особенно для обеспечения сохранности важной системной информации. Успешно справившись с этим заданием, вы сделали значительный шаг в освоении роли младшего системного администратора.
Помните, что в реальных условиях этот процесс обычно автоматизируется для ежедневного запуска. По мере профессионального роста вам может потребоваться написать скрипт или настроить задание cron для автоматического выполнения этой задачи. Продолжайте в том же духе и совершенствуйте свои навыки администрирования Linux!



