Файл можна видалити, поки процес відкритий. Коли це відбувається, запис каталогу видаляється, але сам файл (вклад та вміст) залишається позаду; файл видаляється дійсно лише тоді, коли більше посилань немає, і він не відкривається жодним процесом.
NFS - це протокол без стану: операції можна виконувати незалежно від попередніх операцій. Можна навіть перезавантажити сервер, і як тільки він повернеться в Інтернет, клієнти продовжать доступ до файлів, як і раніше. Для того, щоб це працювало, файли повинні бути позначені своїми іменами, а не обробкою, отриманою при відкритті файлу (про що сервер забуде при перезавантаженні).
Зберіть їх разом: що відбувається, коли клієнт відкриває файл та видаляє? Файл повинен мати ім’я, щоб клієнт, який його відкрив, все ще мав доступ до нього. Але коли файл буде видалений, очікується, що після цього більше не буде файлу з таким іменем. Таким чином, сервери NFS перетворюють видалення відкритого файлу на перейменування: файл перейменовують у .nfs…
(з .nfs
наступним рядком літер та цифр).
Ви не можете видалити ці файли (якщо ви спробуєте, все, що трапляється, .nfs…
з’являється новий з іншим суфіксом). Вони врешті зникнуть, коли клієнт, у якого відкритий файл, закриває його. (Якщо клієнт зникає перед закриттям файлу, може пройти деякий час, поки сервер не помітить.)
ps -Af | grep 'indicator-services-start' | awk '{ print $2 }' | xargs kill
вcrontab -e
.