美文网首页
Linux下sudo命令详解

Linux下sudo命令详解

作者: 高鸿祥 | 来源:发表于2017-11-28 19:40 被阅读71次

    sudo命令的作用是让普通用户获得root账户的权限。

    默认普通用户不在sudo组,要想用sudo命令就得把普通用户加入sudo组里。

    操作

    若是root用户,直接操作;若是普通用户,通过su -r(继承root的shell环境)临时切换到root用户。(su是临时让普通用户切换到root账户命令,详细见后文)。

    编辑/etc/sudoers文件将普通用户加入sudo组

    执行 vim /etc/sudoers

    找到root ALL=(ALL)ALL所在行,

    在它下面的行输入

    你的用户名 ALL=(ALL)ALL

    保存时会提示/etc/sudoers为只读文件,无法保存退出,这时需要强制保存退出 :wq!

    这样就把普通用户加入了sudo组,可以使用sudo命令了。

    默认5分钟后刚才输入的sudo密码过期,下次sudo需要重新输入密码,如果觉得在sudo的时候输入密码麻烦,把刚才的输入换成如下内容即可:

    你的用户名 ALL=(ALL) NOPASSWD: ALL

    普通用户sudo到root用户时使用的是自己的密码

    su

    切换用户之后原本用户的shell环境继续使用(还在原用户的目录下),没有转到目标用户家目录下,也就是说这时虽然是切换为目标用户了,但并没有改变目标用户登录环境,还处于原用户的环境中。cd一下可以改变到目标用户的家目录下。

    su 加参数 -

    切换到目标用户,并且改变到目标用户的环境(目标用户的家目录下)。相当于重新起了一个shell

    切换用户后想回到原来的用户,命令行输入exit就可以退出。不要再切回原来用户如su 原来用户。切的方式的话相当于又走了一层。

    正常登录用户想退出的话也是exit退出。

    root用户uid gid为0。命令行提示符是#号。如[~/root]#

    普通用户uid gid默认从1000往后排。 命令行提示符是$号。如[~/home]$

    若把普通用户uid gid改为为0。命令行提示符也变为#号。如[~/home]#

    相关文章

      网友评论

          本文标题:Linux下sudo命令详解

          本文链接:https://www.haomeiwen.com/subject/wlojbxtx.html