У меня очень большой каталог (содержащий миллионы файлов размером до 150 ГБ), который я хочу удалить.
Есть ли более быстрый метод, чем использование rm -rf
что требует времени для завершения в этом каталоге?
Кстати: это система AIX, и каталог находится на монтировании NFS.
Переименовать (mv
) каталог с временным именем, создайте его заново с тем же именем, владельцем и разрешениями. Таким образом, любые пользователи / процессы, использующие этот каталог, могут продолжить работу в считанные секунды. Удалите временный каталог позже (или в фоновом режиме).
Альтернатива, требующая изменений на стороне фактического сервера NFS: подготовьте отдельную пустую файловую систему, которая будет хранить ваши данные, и смонтируйте ее в каталоге. Каталог будет пустым с точки зрения клиента. Позже вы можете удалить файлы, которые скрыты ниже точки монтирования. Преимущество здесь существенное, потому что в следующий раз, когда вам нужно удалить тот же каталог, вы можете просто перезаписать всю файловую систему (mkfs
), что занимает минуты, а не часы. Не нужно rm -rf
что-нибудь вообще.
rm -rf будет максимально быстрым, если вы не запустите команду на самом сервере NFS. Вы можете увидеть некоторое ускорение, запустив его с удаленного компьютера. Вы также можете сделать
rm -rf /path/ &
чтобы отложить работу на задний план, чтобы вы могли продолжать работать.