如果我正在运行bash脚本,有没有办法切换到root用户,处理一个命令,然后退出root模式?例如,我想在bash脚本中间包含以下命令:
sudo su
umount /home/user/myMount
exit问题是,在第一行运行之后,shell进入root模式,但随后停止执行。当然,此时我可以创建并执行第二个脚本,但这违背了编写脚本的目的,因为我只能自己键入命令。
另一个显而易见的想法是从一开始就以root用户身份运行脚本。但是,如果我是root用户,则此脚本中的其他一些命令会失败,因为它们会暴露具有如此多访问权限的安全漏洞。
因此,我需要一种方法来进入根,然后退出它。
谢谢。
发布于 2013-04-13 07:14:00
要以根用户身份执行umount,请使用
sudo umount /home/user/myMount发布于 2013-04-13 07:15:58
指定命令
sudo命令可以接受一个命令和可选参数。例如:
sudo umount /home/user/myMount这将仅以root用户身份运行指定的命令及其参数。如果您希望以另一个用户身份运行该命令,则可以使用-u标志。例如,要以Fred身份运行umount,您可以使用:
sudo -u fred umount /home/user/myMount虽然当然还有其他方法来解决这个问题,但这是迄今为止最简单和最常见的方法。
https://stackoverflow.com/questions/15982273
复制相似问题