sudo su 命令

来源:互联网 发布:java future get方法 编辑:程序博客网 时间:2024/04/29 10:18

       今天在linux下,同学使用我电脑帮忙搞东西,由于我使用的不是 root 用户,不时的要求授权,总是让我来输入密码很是麻烦,而且也不太好,不过 root 的密码告诉别人又不大好,于是使用  sudo passwd root 命令,将 root 的密码更改了,因为我安装系统是新建的用户不是 root , 本人又是新手,对用户和 root 理解不是很明白,以为修改了 root 的密码,是修改了自己的当前用户密码,结果在使用的时候发现,密码不对,有两个密码了,于是google了一下,又学到了些东西。

         root 用户和安装系统时的用户是两回事,除非安装时用户名取名 root。

         在系统使用过程中,可以通过 sudo passwd root 来修改 root 密码,前提是正在使用的用户被允许使用 sudo 命令,也可以用来修改其他用户的密码,只要把 root 改为其他用户名即可。

         sudo 使用命令时不需要用户输入 root 的密码,只需要输入自己帐号的密码即可拥有 root 权限,当然,前提是该用户被允许使用 sudo 命令。

         其实,“  1. 当用户执行sudo时,Linux系统会去寻找/etc/sudoers文件,并且这是主动的,判断用户是否有执行sudo命令的权限
                        2. 如果用户有执行sudo的权限,让用户输入自己的密码来确认,这里比使用root的密码强多了,赞一下
                        3. 如果密码输入正确,开始执行sudo后面跟的shell命令
                        4. 如果要切换的身份相同, 和su命令一样,也不用输入密码      

                                    配置非root账户,使其被允许使用 sudo 命令方式如下:

                                    /etc/sudoers文件:

                                    使用visodu命令后,打开的窗口与vi界面一致,如果想要为账号增加使用sudo命令的话,可以在 root ALL=(ALL) ALL这行后面加上如下内容:

                                    # 用户账号 登录的主机 = (可以变换的身份) 可以执行的命令
                                    username ALL=(ALL) ALL

                                    刚才介绍的是用户身份的声明,下面还有一个特殊的用户组说明——wheel有如下内容:

                                    ## Allows people in group wheel to run all commands
                                    %wheel ALL=(ALL)       ALL    

                                    ## Same thing without a password
                                    ## 用户在使用sudo命令时不用输入密码,后面的ALL可以换为具体的shell命令
                                    # %wheel        ALL=(ALL)       NOPASSWD: ALL     “
                                 (此段内容引用别人)

         另一个命令,su 命令是切换用户的,su 后面不带参数默认是切换到 root 帐号,此时需要输入 root 的密码才行。