先备考一下上节内容:

1.用户组添加groupadd

2.用户组更改groupmod

3.用户组删掉groupdel

4.作业创建一个id为501的组group1,之后改成group2linux命令vi跳到指定行,同时id变为502,最后删掉这个组,命令分别如下:

groupadd–g501group1

groupmod–g502–ngroup2group1

groupdelgroup2

这一节,我们来说一下用户切换相关命令

为何要进行用户切换?

在操作过程中须要使用特定的用户进行特定的操作,多数情况下是由于权限,例如要更改一个文件,只有root用户有权限更改红旗linux安装,这么就要切换到root用户下进行操作。切换用户通常有两个命令:

1.su命令

su命令不加参数,默认切到root用户,须要输入root用户密码进行验证,

exit命令可退出root用户。

su命令可以加一个“-”再加上用户名,此时,不但身分变化了,同时也拥有了此用户的“用户环境”,例如用户家目录以及此用户的其它个性化设置。

linux常用命令切换用户_linux命令vi跳到指定行

普通用户切换其它用户须要晓得其它用户的密码,root用户使用su命令切换其它用户,不须要晓得用户密码

2.sudo命令

sudo的用法是,在sudo前面加上要执行的命令,表示用root身分执行此命令,例如

sudouseradduser1,表示用root身分执行添加用户的操作。

此命令在系统中的动作流程是

1.检测当前用户是否有sudo的权限,通过检测/etc/sudoers文件

例如我们用user1执行sudouseradd命令,会报错

linux常用命令切换用户_linux命令vi跳到指定行

2.在用户输入自己的密码后linux命令vi跳到指定行,验证用户密码

3.密码正确后,假如当前用户有权限用sudo执行对就的命令,系统还会以root用户身分执行相关命令

基于以上流程,我们须要先给用户sudo的权限,此权限储存在/etc/sudoers这个文件中,可以用vi或vim进行编辑(这两个命令以面会提到),或是用sudoers文件的专用命令visudo,这儿我们用visudo进行编辑如何安装linux,可以看见root用户的sudo权限:

这一行表示的意思是,root用户(第一列),从任何地方登陆(第二列的ALL),可以执行任何人(第三列的ALL)的任何命令(第四列的ALL),按照这个定义,我们把user1的权限也加上

保存后退出,再度在user1中执行sudouseradd命令,此时要求输入user1的密码,证明权限生效了

还可以通过%组名称的方法给用户组分配权限,例如

%usersALL=(ALL)ALL

表示所有users组中的用户都可以执行sudo命令。

怎么不想每次都输入密码,可以使用NOPASSWD进行配置,如下:

再度执行sudouseradd命令

已不再要求输入密码。

再进一步,可以设置用户有权限执行什么命令,例如我们让user1只能执行shutdown命令,可以做如下配置

保存退出后,在user1中再度执行sudouseradd命令

已没有执行权限

Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复