У меня старое хранилище с сотнями домашних каталогов пользователей. Я хочу освободить место на диске, удалив все "старые" домашние каталоги. Он находится на сервере Linux, RHEL 6. Я хочу удалить весь домашний каталог, но только в том случае, если нет файлов, которые были созданы, изменены, обновлены или открыты менее чем за 7 лет. Кто-нибудь знает, как создать скрипт для этого?
Спасибо.
Я думаю, вам нужно будет создать сценарий bash, чтобы сделать это, если вам нужна помощь, может быть, лучше спросить о переполнении стека, потому что это разработка сценария.
Хотя это возможно, если используемый дистрибутив поддерживает atime
некоторые не используются по умолчанию, они явно монтируют файловую систему с помощью noatime
в этом случае вы не сможете узнать, когда файл был в последний раз прочитан, и только при создании или изменении (обновление - это то же самое) другой вариант, который используется, но будет работать для вас, - realtime
это будет обновлять файл, к которому последний раз обращался обычно, только один раз в день.
Чтобы проверить это, используйте ls -l --time=atime
затем вы можете использовать это в сценарии bash с ls -ls --time=atime | while read line
Как я сказал выше, это инструмент, который вам нужен, если вам нужно создание сценария, чтобы сделать это за вас, я бы сказал, что вы должны быть на переполнении стека, а не на сбое сервера, в то время как это сервер, создающий сценарий, больше относится к стороне программирования, чем к сторона управления сервером двух сайтов.