【linux命令讲解大全】179.Linux用户管理命令:userdel和usermod简介

2024-03-02 14:33:01 浏览数 (1)

userdel

用于删除给定的用户以及与用户相关的文件

补充说明

userdel 命令用于删除给定的用户,以及与用户相关的文件。若不加选项,则仅删除用户帐号,而不删除相关文件。

语法

代码语言:javascript复制
userdel [选项] [用户名]

选项

  • -f:强制删除用户,即使用户当前已登录;
  • -r:删除用户的同时,删除与用户相关的所有文件。

参数

  • 用户名:要删除的用户名。

实例

userdel 命令很简单,比如我们现在有个用户 linuxde,其家目录位于 /var 目录中,现在我们来删除这个用户:

代码语言:javascript复制
userdel linuxde       # 删除用户 linuxde,但不删除其家目录及文件;
userdel -r linuxde    # 删除用户 linuxde,其家目录及文件一并删除;

请不要轻易使用 -r 选项;它会删除用户的同时删除用户所有的文件和目录,切记如果用户目录下有重要的文件,在删除前请备份。

其实也有最简单的办法,但这种办法有点不安全,也就是直接在 /etc/passwd 中删除您想要删除用户的记录;但最好不要这样做,/etc/passwd 是极为重要的文件,可能您一不小心会操作失误。

usermod

用于修改用户的基本信息

补充说明

usermod 命令用于修改用户的基本信息。usermod命令不允许你改变正在线上的使用者帐号名称。当 usermod命令用来改变user id,必须确认这名user没在电脑上执行任何程序。你需手动更改使用者的 crontab 档。也需手动更改使用者的 at 工作档。采用 NIS server 须在server上更动相关的NIS设定。

语法

代码语言:javascript复制
usermod [选项] [参数]

选项

  • -c <备注>:修改用户帐号的备注文字;
  • -d <登入目录>:修改用户登入时的目录,只是修改 /etc/passwd 中用户的家目录配置信息,不会自动创建新的家目录,通常和 -m 一起使用;
  • -m <移动用户家目录>: 移动用户家目录到新的位置,不能单独使用,一般与 -d 一起使用。
  • -e <有效期限>:修改帐号的有效期限;
  • -f <缓冲天数>:修改在密码过期后多少天即关闭该帐号;
  • -g <群组>:修改用户所属的群组;
  • -G <群组>:修改用户所属的附加群组;
  • -l <帐号名称>:修改用户帐号名称;
  • -L:锁定用户密码,使密码无效;
  • -s <shell>:修改用户登入后所使用的shell;
  • -u <uid>:修改用户ID;
  • -U:解除密码锁定。

参数

  • 登录名:指定要修改信息的用户登录名。

实例

newuser2 添加到组 staff 中:

代码语言:javascript复制
usermod -G staff newuser2

修改 newuser 的用户名为 newuser1

代码语言:javascript复制
usermod -l newuser1 newuser

锁定账号 newuser1

代码语言:javascript复制
usermod -L newuser1

解除对 newuser1 的锁定:

代码语言:javascript复制
usermod -U newuser1

增加用户到用户组中:

代码语言:javascript复制
apk add shadow # 安装 shadow 包, usermod 命令包含在 usermod 中
usermod -aG group user # 添加用户到用户组中

-a 参数表示附加,只和 -G 参数一同使用,表示将用户增加到组中。

修改用户家目录:

代码语言:javascript复制
[root@node-1 ~]# useradd lutixiaya
[root@node-1 ~]# ls /home
lutixiaya
[root@node-1 ~]# usermod -md /data/new_home lutixiaya
[root@node-1 ~]# ls /home/
[root@node-1 ~]# ls /data/
new_home 

0 人点赞