Linux系统一般不推荐直接以root用户登录,因为root用户权限可以在系统中完成任何事情,但是如果确实需要使用root用户来执行某些命令时,注销系统再登录就显得比较繁琐。下面小编就以CentOS6.4系统为例,为大家演示如何在不注销系统的情况下切换用户。
工具/原料
CentOS6.4
使用su命令在系统下切换用户
1、使用su命令能够在不重新登录系统的情况下在用户之间切换,如果由普通用户切换到root用户必须输入辩尢霆靡密码;如果由root用户切换到其他用户则不需要炉慕法埋密码。该命令有几个常用选项:-、-c,第一个选项表示在切换用户时同时变更环境变量和工作目录,第二个选项表示运行指定命令后恢复原来的用户。下图为su命令的帮助信息。
2、由root用户切换到普通用户myLinux,同时变更环境变量和工作目录。方法:在提示符下输入 su - myLinux 。运行完成后,通过使用命令 pwd 查看当前目录发现工作家目录也发生了变更。
3、在普通用户myLinux下以root用户的身份执行id命令查看当前用户信息,执行完成后,恢复至myLinux身份。方法: 在提示符下输入 su -c id root ,输入密码。运行完成后发现显示的是root用户的身份信息,同时当前用户又切换回了myLinux。
4、在使用su命令切换至其他用户后,我们可以使用 exit 命令来退回到切换之前的用户。
以其他身份执行的sudo命令
1、在很多情况下,我们不需要长时间的切换至其他用户,而只是需要使用其他用户的身份完成某稍僚敉视个命令,此时sudo命令就可以完成。该命令在使用之前是需要修改/etc/sudoers这个配置文件的,只有在配置文件下赋予的操作命令,sudo才能够完成。另外这里需要注明的是sudo命令与su命令最大的区别就是使用root权限下的命令时sudo命令只需要知道自己用户的密码,而su命令需要root用户的密码,所以在某种程度上sudo命令具有更高的安全性。下图为sudo命令的帮助信息。
2、配置/etc/sudoers文件,使得myLinux用户具有使用useradd命令的权限(root用户下的命令)。方法:使用vi粕盘镱嘧编辑器编辑配置文件,然后在其中添加一段配置语句 myLinux ALL=(root) /usr/sbin/useradd ,然后保存并退出。需要注意的是默认该文件只读,所以保存时必须使用强制保存。
3、在myLinux用户下,使用命令 sudo useradd today 来创建用户today,可以看出在使用命令时,系统会提示用户输入密码,注意这个密码是myLinux用户的密码,而不是root用户的密码。执行完成后,通过检查/etc/passwd文件发现today用户已创建完成。