Я управляю многими жесткими дисками, часто общими по сети (SMB). Время от времени я нахожу папки, которые каким-то образом содержат тысячи или десятки тысяч скрытых файлов, например:
.dat.nosync40b7.5jNfXw
Они все называются .dat.nosync, но "40b7.5jNfXw" кажется инкрементальным или случайным. Эти файлы иногда делают невозможным перечисление содержимого каталога. И когда я просто rm -v '.dat.nosync*'
получаю too many arguments
, что файлов слишком много.
Что создает эти странные файлы и почему их так много?
решение1
Я наконец понял: это Adobe InDesign. Когда внешний HDD используется совместно по SMB, а на другом компьютере открыт файл InDesign на этом HDD, любое временное прерывание работы сети приводит к бесконечному циклу, создающему десятки тысяч этих крошечных скрытых файлов.
Это было подтверждено на Mac OS (различных версиях) с Adobe InDesign CC 2018.
Мне удалось удалить все эти проблемные файлы и «исправить» более 10 «сломанных» внешних дисков, запустив этот скрипт Python сразу после монтирования дисков:
import os
extdrv = '/Volumes/HDD24'
for root, dir, file in os.walk(extdrv):
for f in file:
if str(f).startswith('.dat.nosync'):
print(root + '/' + f)
os.remove(root + '/' + f)
Похоже, больше ни у кого нет такой проблемы, или они просто не понимают, что их жесткий диск не «умирает», а просто заполнен этими крошечными файлами, из-за чего их невозможно индексировать или перечислять.