首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bash脚本-更改为root,然后退出root

Bash脚本-更改为root,然后退出root
EN

Stack Overflow用户
提问于 2013-04-13 07:10:31
回答 2查看 5.2K关注 0票数 0

如果我正在运行bash脚本,有没有办法切换到root用户,处理一个命令,然后退出root模式?例如,我想在bash脚本中间包含以下命令:

代码语言:javascript
复制
sudo su
umount /home/user/myMount
exit

问题是,在第一行运行之后,shell进入root模式,但随后停止执行。当然,此时我可以创建并执行第二个脚本,但这违背了编写脚本的目的,因为我只能自己键入命令。

另一个显而易见的想法是从一开始就以root用户身份运行脚本。但是,如果我是root用户,则此脚本中的其他一些命令会失败,因为它们会暴露具有如此多访问权限的安全漏洞。

因此,我需要一种方法来进入根,然后退出它。

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-13 07:14:00

要以根用户身份执行umount,请使用

代码语言:javascript
复制
sudo umount /home/user/myMount
票数 1
EN

Stack Overflow用户

发布于 2013-04-13 07:15:58

指定命令

sudo命令可以接受一个命令和可选参数。例如:

代码语言:javascript
复制
sudo umount /home/user/myMount

这将仅以root用户身份运行指定的命令及其参数。如果您希望以另一个用户身份运行该命令,则可以使用-u标志。例如,要以Fred身份运行umount,您可以使用:

代码语言:javascript
复制
sudo -u fred umount /home/user/myMount

虽然当然还有其他方法来解决这个问题,但这是迄今为止最简单和最常见的方法。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15982273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档