通常在linux系统登录的时候默认是不以root用户,而执行某些命令的时候,需要超级管理员权限,普通用户以超级管理员权限执行命令的三种方法

首先最常用的方法是 直接加sudo命令,而加sudo 命令是有前提的,要么在sudoer 组内,具体有两种方法

1、见的最多的应该是,在  /etc/sudoers 文件中添加

username    ALL=(ALL:ALL) ALL

2、 在group中添加,具体也有两种方法,个人推荐的是 a中的方法,其他的没有测试过,慎用,修改passwd文件的方法详见:链接

a.命令修改
sudo adduser username sudo 

b.修改 /etc/passwd
username:x:0:0::/home/username:/bin/bash
[用户名]:[密码]:[UID]:[GID]:[身份描述]:[主目录]:[登录shell] 
这个用户这一行,把其中的uid改为0,gid改为0, 这样username用户就具有root权限了

第三种方法:不设置任何账户具有root权限,直接从普通账户切换到root账户

sudo - / su root

执行上面的命令可以直接从普通用户切换成root用户, 注意输入密码的时候,要输入的是root账户的密码,不是当前用户的密码,因此,这个root密码需要提前设置好(sudo passwd root)。

而如果输入的是 sudo -i / sudo su 切换成root的时候只要输入 当前用户的密码即可,注意区分。


补充移除超级管理员账户

对于1在/etc/sudoers 文件中添加的,可以直接删除或者在 添加那行最前面加上 # 注释掉就行

对于2 在group 中添加的,

a.命令修改
sudo adduser username sudo    
      |                                      
      | 移除                                  
      v                                       
sudo gpasswd -d username sudo   


b.修改 /etc/passwd
username:x:0:0::/home/username:/bin/bash
[用户名]:[密码]:[UID]:[GID]:[身份描述]:[主目录]:[登录shell] 

把UID和GID改成原来的ID即可,不推荐这种方法

参考文献:

https://blog.csdn.net/lumping/article/details/106459555

https://ubuntuqa.com/article/2202.html

https://www.cnblogs.com/ssc4469/p/4180353.html

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐