Есть ли способ изменить цель symlink / proc / self / exe? - PullRequest
1 голос
/ 29 октября 2010

привет всем: В последнее время я работаю над созданием контрольной точки в процессе Linux и столкнулся с проблемой, похоже, что когда я отображаю карту памяти исполняемого файла в текущий процесс, symlink / proc / self / exe мертва. символическая ссылка, указывающая на другой исполняемый файл (тот, что для моих возобновленных процессов), это возможно? Я попытался удалить его и воссоздать, разрешение отклонено. английский не мой родной язык, я надеюсь, что сделал свою точку зрения, спасибо

Ответы [ 2 ]

2 голосов
/ 29 октября 2010

Нет./proc полностью управляется ядром и не допускает подобных изменений.

Но вы можете запустить новый процесс (возможно, с fork()) и отобразить в нем свой снимок памяти.*

1 голос
/ 11 июля 2017

prctl (PR_SET_MM_EXE_FILE, ...) Заменить символическую ссылку / proc / pid / exe новой ссылкой, указывающей на новый исполняемый файл, определенный дескриптором файла, предоставленным в аргументе arg3.Дескриптор файла должен быть получен с помощью обычного вызова open (2).

...