以其他用户身份运行程序时重置环境

问题描述 投票:0回答:1

我正在尝试以其他用户的身份在Rust(libc)中运行程序。

nix::unistd::setuid(uid).unwrap();

如果我分叉并执行一个运行printenv的进程,则环境没有改变。

如何将用户的环境重置为默认值?

c linux rust environment-variables libc
1个回答
0
投票

使用第三个参数nix::unistd::execve()进行env调用,您可以完全控制下一个过程环境。另请参阅exec(3)

© www.soinside.com 2019 - 2024. All rights reserved.