Существует универсальный инструмент, который может сделать дефрагментацию на Linux, названном встряской. Можно загрузить источник, или для пользователей Ubuntu существует PPA ( shake
пакет в официальном репозитории не связан).
Я только что протестировал его в файловой системе NTFS, смонтированной с помощью ntfs-3g, и это, казалось, работало без проблем (никакие ошибки, подробный вывод выглядит типичным). Так, вероятно, независимо от файловой системы... Почти, так как это может использовать расширенные атрибуты. Для работы, не используя их необходимо использовать -X
опция. Попытайтесь использовать
shake --old=0 -v -X /some/directory/
На основе моего опыта это должно быть выполнено как корень.
vfat и ntfs файловая система не содержат информации для представления полномочий файла Unix. Не будет возможно установить некоторые определенные полномочия на файлы и сохранить их.
Возможно установить первоначальные полномочия на определенное значение и использовать это также для создания новых файлов. Это называют umask
и поддерживаемый mount
команда. Можно также дифференцироваться между файлами и каталогами. Вот некоторые строки man mount
:
umask=value
Set the umask (the bitmask of the permissions that are not
present). The default is the umask of the current process. The
value is given in octal.
dmask=value
Set the umask applied to directories only. The default is the
umask of the current process. The value is given in octal.
fmask=value
Set the umask applied to regular files only. The default is the
umask of the current process. The value is given in octal.
Используйте это в столбце опции в Вашем /etc/fstab
файл, например:
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/hda1 /mnt/usb auto rw,suid,dev,exec,auto,user,async,umask=755 0 1