linux 用户操作命令


今日思语:看到优秀的人还那么努力,你是否会眼馋~

linux系统上经常会对用户进行一些相关操作,像新增、修改、删除用户等操作。

1、新增用户

useradd 选项 用户

参数说明:

? 选项:
  ? -c comment 指定一段注释性描述。
  ? -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
  ? -g 用户组 指定用户所属的用户组。
  ? -G 用户组,用户组 指定用户所属的附加组。
  ? -s Shell文件 指定用户的登录Shell。
  ? -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
? 用户名:
  指定新账号的登录名。

示例:

useradd –d  /home/kingson -m kingson

上述命令创建了一个用户kingson,其中-d和-m选项用来为登录名kingson 产生一个主目录 /home/kingson

添加完之后使用users命令查看用户情况:

进入/home/目录下查看目录结构

可以在root用户下使用su - kingson进入kingson用户

使用exit退出

新增完用户之后需设置用户的口令,即密码,方式有以下三种:

//方式一
passwd kingson
//方式二
echo "11111111" | passwd --stdin kingson;
//方式三
echo 'kingson:22222222'|chpasswd

2、修改用户

usermod 选项 用户名

参数说明:

选项:

  • -a|--append  把用户追加到某些组中,仅与-G选项一起使用
  • -c|--comment  修改/etc/passwd文件第五段comment
  • -d|--home  修改用户的家目录通常和-m选项一起使用
  • -e|--expiredate  指定用户帐号禁用的日期,格式YY-MM-DD
  • -f|--inactive  用户密码过期多少天后采用就禁用该帐号,0表示密码已过期就禁用帐号,-1表示禁用此功能,默认值是-1
  • -g|--gid  修改用户的gid,改组一定存在
  • -G|--groups  把用户追加到某些组中,仅与-a选项一起使用
  • -l|--login  修改用户的登录名称
  • -L|--lock  锁定用户的密码
  • -m|--move-home  修改用户的家目录通常和-d选项一起使用
  • -s|--shell  修改用户的shell
  • -u|--uid  修改用户的uid,该uid必须唯一
  • -U|--unlock  解锁用户的密码

示例:

usermod -d /home/kingson2 kingson

上述命令为修改kingson用户的主目录为kingson2

对需要修改用户名和主目录等信息时,一般会使用到以下命令:

2.1、修改用户名

usermod -l 新用户 旧用户

这只会更改用户名,而其他的东西,比如用户组、家目录、ID 等都保持不变。

另外修改前需要从要改名的帐号中登出并杀掉该用户的所有进程,要杀掉该用户的所有进程可以执行下面命令

pkill -u 旧用户名
pkill -9 -u 旧用户名

2.2、修改所属目录

usermod -d /home/新用户名 -m 新用户名

2.3、修改组名

groupmod -n 新用户名 旧用户名

2.4、修改UID

usermod -u 1000 新用户名

2.5、检查

id 新用户名

3、删除用户

userdel 选项 用户名

对一些不再使用的用户账号,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。
删除一个已有的用户账号使用userdel命令,经常使用参数选项-r把用户的主目录一起删除。
示例:

userdel -r kingson

上述命令删除用户kingson在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录