2015-10-29 12 views
1

У меня есть приложение PHP, которое отлично работает для меня, как в тестовой системе, так и в производственной системе.PHP, создающий файлы .nfs00000?

Но другой пользователь моего приложения написал мне, что он создает много файлов .nfs00000 * в своей системе и замедляет загрузку страницы.

Мое приложение не создает файлы в файловой системе, все данные хранятся в MySQL. Поэтому я был очень удивлен этим. Но этот пользователь удалил мое приложение PHP с его сайта, и проблема исчезла.

Буду честным - я ничего не знаю о файлах .nfs00000 *, и я не смог найти что-либо разумное в Google. Может кто-то попробует дать мне объяснение, что это такое, почему они созданы, и если я могу сделать что угодно, чтобы избежать их создания?

Thanx, Хонза

+1

[SF: SE уже есть вопрос по этому вопросу.] (Http://serverfault.com/questions/201294/nfsxxxx-files-appearing-what-are-those) – HPierce

+0

, похоже, является своего рода файлами журнала. Попросите пользователя проверить содержимое файла. возможно, что-то, что требуется приложению, отсутствует на его компьютере –

ответ

0

Может быть, это может помочь:

Под Linux/Unix, если вы удалите файл, который в настоящее время работает процесс по-прежнему имеет открытый, файл на самом деле не удален. Как только процесс закрывает файл, ОС затем удаляет дескриптор файла и освобождает блоки диска. Этот процесс немного усложняется, когда файл, открытый и удаленный, находится в установленной файловой системе NFS. Поскольку процесс с открытым файлом работает на одном компьютере (например, на рабочей станции в вашем офисе или лаборатории), а файлы находятся на файловом сервере, должно быть каким-то образом, чтобы обе машины могли передавать информацию об этом файле. Способ NFS делает это с файлами .nfsNNNN. Если вы попытаетесь удалить один из этих файлов, и файл все еще открыт, он снова появится с другим номером. Итак, чтобы полностью удалить файл, вы должны убить процесс, в котором он открыт.

Если вы хотите узнать, в каком процессе открыт этот файл, вы можете использовать 'lsof .nfs1234'. Обратите внимание, что это будет работать только на машине, где запущены процессы, в которых открыт файл. Итак, если ваш процесс запущен на одной машине (например, bobac), и вы запускаете lsof на какой-либо другой машине норы (например, силосе или прерии), вы ничего не увидите.

(Source)

Если ваше приложение удаления или изменения некоторых файлов это может быть причиной проблемы.

 Смежные вопросы

  • Нет связанных вопросов^_^