Когда я попробовал опубликовать ваш код, я тоже получил те же ошибки (смог воспроизвести ошибки).
Затем я попытался поставить вместо вашего полного только lsof
lsof
команда с awk
для просмотра полной ошибки, и я получил следующую ошибку.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sh 1 root cwd unknown /proc/1/cwd (readlink: Permission denied)
sh 1 root rtd unknown /proc/1/root (readlink: Permission denied)
sh 1 root txt unknown /proc/1/exe (readlink: Permission denied)
sh 1 root NOFD /proc/1/fd (opendir: Permission denied)
time 9 root cwd unknown /proc/9/cwd (readlink: Permission denied)
time 9 root rtd unknown /proc/9/root (readlink: Permission denied)
После этого я погуглил и нашел отличную ссылку https://unix.stackexchange.com/a/109228 (межсайтовая ссылка), котораяговорит нам, что lsof
выдает ошибку, поскольку у нас нет доступа к этим файлам / командам, и, очевидно, мы НЕ запускаем команду с root
.
Так что, чтобы преодолеть эту проблему, ИМХО, вы могли бы:
- Запустите команду
lsof
как sudo
, чтобы избавиться от ошибок в случае, если у вашего пользователя есть доступ sudo для выполнения этой команды. - В случае, если вас НЕ интересуют подробности корневых процессовтогда вы можете удалить эти ошибки, отправив их на
/dev/null
.