Linux 用户管理:su 命令
命令 su 可以让你使用其他用户运行shell。
语法:
su <username>
例子:
su jtp
看上面的截图,用户账号从 sssit 变成 jtp。
su to root
如果你知道root用户密码,你可以转换成root用户。
语法:
su root
su as root
root 用户能转换成任何存在用户,即是不知道密码。反之,需要密码。
例子:
su - sssit
查看上面的截图,从用户 jtp 切换到 sssit 要求输入密码。
现在让我们看下面的例子。
例子:
su - jtp
看上面截图,我们是root用户。从 root 切换到 jtp 时,不需要输入密码,故我们能成功使用 jtp 用户。
su - $username
默认情况下,su 命令维护相同的 shell 环境。要访问目标用户的 shell 环境,请使用带(-)的 su 命令,后跟目标用户名。
例子:
su - jtp
su jtp
看上面的截图,命令 「su - jtp"」 使得当前的 shell环境是在 「/home/jtp」而且用户还是 jtp 。但是 「su jtp」 使得当前的 shell环境是在 「/home/ssit」而用户是 sssit。
su -
如果没使用任何用户名,则默认情况下,它将以 root 用户作为目标用户。
例子:
su -
看上面的截图,命令 「su -」 已经默认用户为roo。
以其他用户身份运行程序 / sudo 命令
命令 sudo 允许用户使用另一个用户的凭据来启动程序。
例子:
/usr/sbin/useradd -m akki
看上面的截图,当没有创建用户 'akki' shell给出上面的信息。
使用 sudo 命令
使用 sudo 命令,我们可以在系统上创建新新用户而不需要成为 root 用户或 root 用户的密码。
例子:
sudo /usr/sbin/useradd -m akki
看上面的截图, 使用 sudo 命令创建了用户 'akki'。
sudo su -
默认情况下,一些Linux系统(如Ubuntu)没有为root用户设置密码。这意味着您不能以root用户身份登录。
为了以 root 权限执行任务,通过 etc / sudoers 授予用户所有sudo权限。属于admin组成员的所有用户都可以使用sudo命令执行 root 任务。
语法:
grep admin /etc/sudoers
看上面的截图,命令 「grep admin /etc/sudoers」 允许所有admin组用户获得root权限。
通过输入 sudo su- ,用户可以成为 root 用户 而不需要输入 root 用户密码。 sudo命令将询问问用户自己的密码。
语法:
sudo su -
看上面的截图,bash 要求输入 sssit 用户密码而不是 root 用户密码,然后我们以 root 用户身份登录。
推荐文章: