Red Hat System Administration II 8.2
В этом упражнении вы настроите systemd-tmpfiles, чтобы изменить скорость удаления временных файлов из каталога /tmp, а также периодически удалять файлы из другого каталога.
Результаты
Вы сможете:
настроить
systemd-tmpfilesна удаление неиспользуемых временных файлов из каталога/tmp;настроить
systemd-tmpfilesна периодическое удаление файлов из другого каталога.
Войдите на workstation как пользователь student с паролем student.
На workstation выполните команду lab scheduling-tempfiles start, чтобы начать упражнение. Этот сценарий создает необходимые файлы и обеспечивает правильную настройку среды.
[student@workstation ~]$lab scheduling-tempfiles start
На
workstationустановите SSH-подключение кserveraкак пользовательstudent.[student@workstation ~]$ssh student@servera...output omitted...[student@servera ~]$Настройте утилиту
systemd-tmpfilesна очистку каталога/tmp, чтобы в нем не было файлов, которые не использовались в течение последних пяти дней. Убедитесь, что конфигурация не перезаписывается при обновлении пакетов.Выполните команду
sudo -i, чтобы переключиться на пользователяroot.[student@servera ~]$sudo -i[sudo] password for student:student[root@servera ~]#Скопируйте
/usr/lib/tmpfiles.d/tmp.confв/etc/tmpfiles.d/tmp.conf.[root@servera ~]#cp /usr/lib/tmpfiles.d/tmp.conf \/etc/tmpfiles.d/tmp.confНайдите в файле
/etc/tmpfiles.d/tmp.confстроку конфигурации, которая применяется к каталогу/tmp. Замените существующий возраст временных файлов в этой строке конфигурации на5дней. Удалите из файла все остальные строки, включая закомментированные. Используйте командуvim /etc/tmpfiles.d/tmp.confдля редактирования файла конфигурации. Содержание файла/etc/tmpfiles.d/tmp.confдолжно быть следующим:q /tmp 1777 root root 5d
В приведенной выше конфигурации тип
qидентиченd. Он указывает утилитеsystemd-tmpfilesсоздать каталог/tmp, если он не существует. Для каталога должны быть заданы восьмеричные разрешения1777. Пользователь и группа, владеющие каталогом/tmp, ―root. В каталоге/tmpне должно быть временных файлов, которые не использовались в течение последних пяти дней.Выполните команду
systemd-tmpfiles --clean, чтобы убедиться в наличии правильной конфигурации в файле/etc/tmpfiles.d/tmp.conf.[root@servera ~]#systemd-tmpfiles --clean /etc/tmpfiles.d/tmp.confПоскольку вышеуказанная команда не вернула никаких ошибок, это подтверждает, что параметры конфигурации правильные.
Добавьте новую конфигурацию, которая гарантирует наличие каталога
run/momentaryс пользователем-владельцем и группой-владельцемroot. У каталога должны быть восьмеричные разрешения0700. Конфигурация должна удалить из этого каталога файлы, которые не использовались в течение последних 30 секунд.Создайте файл с именем
etc/tmpfiles.d/momentary.confи следующим содержимым. Используйте командуvim /etc/tmpfiles.d/momentary.confдля создания файла конфигурации.d /run/momentary 0700 root root 30s
Вышеуказанная конфигурация указывает утилите
systemd-tmpfilesпроверить наличие каталога/run/momentaryс восьмеричными разрешениями0700. Пользователь и группа, владеющие каталогом/run/momentary, ―root. Все файлы, которые не использовались в течение последних 30 секунд, должны быть удалены из этого каталога.Выполните команду
systemd-tmpfiles --create, чтобы убедиться в наличии правильной конфигурации в файле/etc/tmpfiles.d/momentary.conf. Команда создает каталог/run/momentary, если он не существует.[root@servera ~]#systemd-tmpfiles --create \/etc/tmpfiles.d/momentary.confПоскольку вышеуказанная команда не вернула никаких ошибок, это подтверждает, что параметры конфигурации правильные.
Выполните команду
ls, чтобы убедиться, что каталог/run/momentaryсоздан с соответствующими разрешениями, пользователем-владельцем и группой-владельцем.[root@servera ~]#ls -ld /run/momentarydrwx------.2root root40 Mar 21 16:39 /run/momentaryОбратите внимание, что восьмеричный набор разрешений для
/run/momentary―0700, а пользователь-владелец и группа-владелец ―root.
Убедитесь, что из каталога
/run/momentaryудалены все файлы, не использовавшиеся в течение последних 30 секунд, согласно конфигурацииsystemd-tmpfilesдля каталога.С помощью команды
touchсоздайте файл с именем/run/momentary/testfile.[root@servera ~]#touch /run/momentary/testfileВыполните команду
sleep, чтобы приглашение командной оболочки не появлялось в течение 30 секунд.[root@servera ~]#sleep 30Когда появится приглашение оболочки, выполните команду
systemd-tmpfiles --cleanдля удаления устаревших файлов из каталога/run/momentaryна основе правила, указанного в файле/etc/tmpfiles.d/momentary.conf.[root@servera ~]#systemd-tmpfiles --clean \/etc/tmpfiles.d/momentary.confВышеуказанная команда удаляет файл
/etc/tmpfiles.d/momentary.conf, поскольку он не использовался в течение 30 секунд и должен был быть удален на основе правила, указанного в файле/etc/tmpfiles.d/momentary.conf.Выполните команду
ls -l, чтобы убедиться, что файл/run/momentary/testfileне существует.[root@servera ~]#ls -l /run/momentary/testfilels: cannot access '/run/momentary/testfile': No such file or directoryВыйдите из командной оболочки пользователя
rootи из системыservera.[root@servera ~]#exitlogout[student@servera ~]$exitlogout Connection to servera closed.[student@workstation ~]$