mysqladmin генерирует сообщения об ошибках

Можем ли мы предположить, что файлы не были изменены на диске (, по крайней мере, файлы с тем же именем не добавлялись и не удалялись )и /proc/[pid]/cmdlineнадежны (см. примечание ниже )?

Согласно proc (5):/proc/[pid]/environсодержит исходные переменные окружения (, которые не будут изменены, даже если сама программа изменит переменные окружения внутри ), включая PWDи PATH.

Поэтому:
если путь в cmdlineначинается с относительного имени каталога (с ), вы можете использоватьPWD/proc/[pid]/environ)в качестве базового пути и разрешить относительный путь;
если путь в cmdlineявляется именем самой программы, вы можете перебрать каждый каталог вPATH/proc/[pid]/environ), а целью является первый файл с таким же именем.


Дополнительные примечания:

/proc/[pid]/exeкажется разыменованным файлом (, например. /usr/bin/python3.6вместо /usr/bin/python3или /usr/bin/python, если они являются символическими ссылками );

/proc/[pid]/cmdlineтакже может содержать странную информацию для некоторых программ, поэтому может быть ненадежной. Кажется, это связано с программой, но не с ядром,и я не заметил, чтобы скрипты Python вели себя таким образом (и редактирование sys.argvв python, похоже, не влияет на/proc/[pid]/cmdline). Мой вопрос также немного говорил об этом.

1
25.01.2019, 04:47
0 ответов

Теги

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