有没有办法在特定用户下将 Go 的 os 包调用默认为 运行

Is there a way to default Go's os package calls to run under a specific user

基本上我不能使用os.Mkdiros.MkdirAll 因为它会创建根目录。我知道我可以走 exec.Cmd 路线并设置 syscall.Credential{}。但这有点麻烦,我必须删除和替换很多代码。

我想知道是否可以设置任何全局设置,因此对 os 包的调用将 运行 作为指定用户。

提前致谢。

一般来说,进程会以运行进程的用户身份进行系统调用。也许 seteuid 就是您要找的东西?