Почему Nethogs не будет видеть PID процессов генерация некоторого трафика NFS?

Один возможный подход должен найти inode число для каталога и использование это к mv это. Вы не говорите нам, какую платформу Вы используете, таким образом, Вы, возможно, должны были бы изменить эти предложения для установки инструментам, доступным Вам (я нахожусь на FreeBSD).

Используйте Ваш ls утилита для получения inode числа - -i переключатель делает это на FreeBSD:

$ ls -i
106739 test

(test пустой каталог, который я просто создал для иллюстрирования этого решения),

Теперь, можно использовать find утилита для нахождения каталога с inode числом:

$ find . -inum 106739
./test

И перемещать неприятный каталог:

$ find . -inum 106739 -exec mv {} fixed \;
find: ./test: No such file or directory

Не волнуйтесь о сообщении об ошибке - это происходит, потому что индекс каталога изменяется во время выполнения команды, таким образом, find становится немного перепутанным; каталог был переименован к fixed:

$ find . -inum 106739
./fixed

Как я сказал, Вы, возможно, должны консультироваться со своей локальной документацией для получения правильных переключателей, но этот подход должен работать.

7
10.07.2014, 20:55
1 ответ

NFS - это файловая система, в соответствии с ее названием. Пользовательские процессы, которые открывают / читают / ищут / записывают / закрывают файлы в каталоге, смонтированном с помощью NFS, не знают, что это файловая система NFS, потому что ядро ​​делает NFS похожей на любую другую файловую систему.

Таким образом, пользовательский процесс, который читает смонтированный NFS файл, сгенерирует системный вызов read (2) , который в конечном итоге приведет к запуску некоторого кода ядра. Весь трафик NFS будет поступать из самого ядра Linux / Unix, а не из процесса на уровне пользователя. Следовательно "?" как PID.

7
27.01.2020, 20:18

Теги

Похожие вопросы