Почему в файловой системе /proc есть эта информация
Бежать :
lsof|grep delete
может найти какой-то процесс, открытый fd, но система сказала, что он был удален:
mingetty 2031 root txt REG 8,2 15256 49021039 /sbin/mingetty (deleted)
Я смотрю в файловой системе / proc:
ls -l /proc/[pid]
lrwxrwxrwx 1 root root 0 9月 17 16:12 exe -> /sbin/mingetty (deleted)
но на самом деле исполняемый файл (/ sbin / mingetty) является нормальным в пути / sbin / mingetty.
и некоторые сокеты показывают эту ситуацию:
ls -l /proc/[pid]/fd
82 -> socket:[23716953]
но, используя команды: netstat -ae|grep [socket id]
могу найти это.
почему ОС отображает эту информацию??
1 ответ
Возможно, вы побежали yum update
, mingetty был обновлен, и исполняемый файл, который вы наблюдаете, является старой, фактически удаленной версией.
Как вы можете знать или не знать, в Linux некоторые файлы не удаляются, пока все дескрипторы файлов, использующие этот файл, не будут закрыты. Старый mingetty все еще работает и хранит дескрипторы файла.