首页 > 解决方案 > 我可以更改 /proc/pid/exe 以反映不同的二进制文件吗?

问题描述

我希望更改我的进程 /proc/pid/exe 以反映不同的二进制文件,甚至根本没有二进制文件。

我一直在研究 prctl,但我对它的手册页不太了解,这是我尝试过的代码

此代码错误并显示“prctl:无效参数”,我通过 GitHub 搜索以找到正在使用的示例,并且以完全相同的方式使用它。

int main(int argc, char const *argv[]) {

int fd = open(argv[1], O_RDONLY);
if(fd < 0)
{
    perror("open");
    return -1;
}

int ret = prctl(PR_SET_MM, PR_SET_MM_EXE_FILE, fd, 0, 0);
if(ret < 0)
    perror("prctl");

close(fd);
return 0;
}

我愿意接受任何和所有建议,我应该如何或应该尝试做什么。

最好是使用尽可能少的烫发的东西

在不同的设备上搞砸了一点,并收到错误消息“prctl:设备或资源忙”,遗憾的是,这给我留下了比答案更多的问题

标签: clinuxfilesystems

解决方案


推荐阅读