以用户身份使用sudo,启动一个进程并记录日志

3

我正在尝试运行这个命令:

sudo -i -u User-1 /home/User-1/steamcmd.sh +force_install_dir /home/User-1/game +login anonymous +app_update 740 validate +quit >> /home/User-1/game/steam.log &

是的,我用不同的用户登录,并且该用户具有sudo权限。

当我使用相同的用户登录,而不在此命令中使用sudo时,它可以正常工作。似乎存在一些关于 >> 路径和sudo的问题。

返回结果如下:

 bash: /home/User-1/game/steam.log: No permission

看起来日志命令没有在同一用户级别上执行。有什么办法可以解决吗?


嗯,是的,shell执行重定向,然后调用sudo。这就是您的命令要做的事情,因此是预期行为。 - Christopher Creutzig
1个回答

2
sudo -u User-1 bash -c "/home/User-1/steamcmd.sh +force_install_dir /home/User-1/game +login anonymous +app_update 740 validate +quit >> /home/User-1/game/steam.log"

试试看


@Neoon,你能否尝试不带“-i”选项? - jayant

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接