Пожалуйста, объясните мне, как используется опция -links в команде find. Страница руководства не дает много информации. Некоторые из наших скриптов, которые мы используем, имеют параметр -links 0 в команде find.
Для этого я использую следующую команду.
find /data -type f -links 0 -ls
Ну, прямо со страницы руководства:
-links n
File has n links.
Итак, в опубликованной вами команде он будет фильтровать файлы с нулевыми ссылками.
В Linux данные файлов хранятся в inodes, которые безымянны. Каждый раз, когда вы создаете ссылку на файл (жесткую ссылку), т.е. добавляете ему имя, это количество ссылок увеличивается. Если вы удалите один файл, то количество ссылок уменьшится. Когда он достигает 0, файл удаляется.
В некоторых случаях удаления не происходит. Затем мы говорим об осиротевшем inode (данные, но никто не указывает на них). Счетчик ссылок тогда равен 0.
Любой файл, который вы можете увидеть, используя ls
или в любом файловом браузере хотя бы количество ссылок равно 1.