当以其他用户身份从命令行运行命令时,建议的最佳做法是什么?过去我曾像这样使用 sudo:
sudo -u username command [args]
有人告诉我(没有具体原因)使用 sudo 来达到这个目的是错误的。我想知道为什么。有没有“最佳方法”来实现这一点?例如,我也使用过 su 命令,如下所示:
su username - -c "command [args]"
我无法想象为什么这两种方法都是“不好的”。您怎么看?
答案1
su username
和之间的主要区别sudo -u username
在于,前者需要提供 的密码username
,而后者需要提供自己的密码。正如其他人已经指出的那样,这两种方法本质上没有优劣之分。