Linux基础命令之用户管理常用命令

在Linux操作系统中,有许多用于用户管理的命令。以下是一些常用的命令

# 1、whoami

显示当前登录的用户名。

$ whoami

将返回当前用户的名称。这个命令在所有Linux发行版中都可以使用。

例如,如果你是 root 用户,那么输出可能是这样的:

$ whoami
root

如果你是一个名为 "john" 的普通用户,那么输出可能是这样的:

$ whoami
john
# 2、id

在 Linux 系统中用于显示用户和组信息的命令

$ id [OPTION]... [USER]

将 [OPTION] 替换为你想使用的选项,将 [USER] 替换为你想查询的用户名。如果你没有指定用户名,那么 id 将显示当前用户的信息。

例如,如果你想查询当前用户的信息,你可以这样使用 id 命令

$ id

这将返回当前用户的 UID 和 GID。例如,输出可能是这样的:

$ id
uid=1000(john) gid=1000(john) groups=1000(john),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),128(sambashare)

如果你想查询特定用户的信息,你可以这样使用 id 命令

$ id john
uid=1001(john) gid=1001(john) groups=1001(john)

id命令常用选项:

  • -u 选项可以显示用户的 UID
  • -g 选项可以显示用户的 GID
  • -G 选项可以显示用户的所有 GID
  • -n 选项可以显示用户或组的名称,而不是数字
# 3、who

用于显示当前登录到当前主机的用户信息的命令

$ who

这将返回当前登录的用户的信息。例如,如果有两个用户 "john" 和 "doe" 同时登录到主机,那么输出可能是这样的:

$ who
john pts/0 2023-10-16 19:00
doe pts/1 2023-10-16 19:02
# 4、passwd

这个命令用于更改用户密码。你可以使用它来设置你自己的密码,或者如果你有权限的话,设置其他用户的密码。

$ passwd
New password:

如果你在passwd后面添加用户名,你可以为其他用户设置密码。输入新密码两次,你就完成了。

如果你是 root 用户,那么输出可能是这样的:

$ passwd
Changing password for root.
(current) UNIX password: 
Enter new UNIX password: 
Retype new UNIX password: 
passwd: all authentication tokens updated successfully.

如果你是一个名为 "john" 的普通用户,那么输出可能是这样的:

$ passwd
Changing password for john.
(current) UNIX password: 
Enter new UNIX password: 
Retype new UNIX password: 
passwd: all authentication tokens updated successfully.

需要注意的是,passwd 命令只能更改当前用户的密码。如果你需要更改其他用户的密码,你需要使用 sudo 命令,例如 sudo passwd john。这需要你有 sudo 权限。

# 5、su

这个命令用于切换用户。你可以使用它来切换到另一个用户。

$ su <username>

<username>替换为你想切换到的用户名。这将切换到指定的用户。

如果你想切换到名为 "john" 的用户,你可以这样使用 su 命令:

$ su john

这将提示你输入 "john" 用户的密码,然后你将切换到 "john" 用户。

如果你想切换到 root 用户,你可以直接使用 su 命令:

$ su

需要注意的是,su 命令只能切换到已经存在的用户。如果你想切换到不存在的用户,你需要先创建这个用户。

此外,su 命令还有一些选项可以用来改变其行为。例如,-l 或 --login 选项可以使环境变量更类似于用户直接登录时的环境,-c 或 --command 选项可以让你在不切换 shell 的情况下运行一个命令。例如,你可以这样使用 su 命令来在不切换 shell 的情况下运行一个命令:

$ su john -c "whoami"

这将返回 "john" 用户的名称,而不切换到 "john" 用户。

# 6、useradd

这个命令用于添加新用户。

$ sudo useradd <username>

<username>替换为你想添加的用户名。这将在系统中添加一个新用户。

例如,如果你想添加一个名为 "john" 的用户,你可以这样使用 useradd 命令:

$ sudo useradd john

useradd 命令选项:

  • -c 选项:添加用户的注释或描述
  • -d 选项:指定用户的主目录
  • -e 选项:设置用户账号的过期日期
  • -f 选项:设置用户的失效天数
  • -g 选项:指定用户的初始组
  • -G 选项:指定用户的附加组
  • -m 选项:创建用户的主目录
  • -s 选项:指定用户的默认 shell
  • -u 选项:指定用户的 UID

例如,你可以这样使用 useradd 命令来添加一个用户,并为其设置注释、主目录和默认 shell:

$ sudo useradd -c "This is a test user" -d /home/john -s /bin/bash john

上述命令的意思是:添加一个名为 "john" 的用户,注释是 "This is a test user",主目录是 "/home/john",默认 shell 是 "/bin/bash"。

需要注意的是,useradd 命令只能添加用户,而不能更改用户的信息。如果你需要更改用户的信息,你需要使用其他命令,例如 usermod 或 chsh

useradd 命令添加的用户默认没有密码,需要使用 passwd 命令为其设置密码。

# 7、userdel

这个命令用于删除用户

$ sudo userdel <username>

<username>替换为你想删除的用户名。这将从系统中删除指定的用户。

例如,如果你想删除名为 "john" 的用户,你可以这样使用 userdel 命令:

$ sudo userdel john

userdel 命令有一些选项:

  • -r 选项:删除用户的主目录和邮件队列
  • -f 选项:强制删除用户,即使用户仍然登录

例如,你可以这样使用 userdel 命令来强制删除 "john" 用户:

$ sudo userdel -f john

这将强制从系统中删除 "john" 用户,即使 "john" 用户仍然登录。

或者,你可以这样使用 userdel 命令来删除 "john" 用户的主目录和邮件队列:

$ sudo userdel -r john

这将删除 "john" 用户的主目录和邮件队列,但不删除用户账户。

需要注意的是,userdel 命令只能删除已经存在的用户。如果你想删除不存在的用户,你需要先创建这个用户。此外,userdel 命令需要 sudo 权限,因为删除用户是一个具有危险性的操作。

  • 19
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值