useradd
Linux系统是一个多用户的操作系统,但是在安装系统时只创建了一个超级管理员用户。useradd命令用于创建用户,默认情况下只有系统超级用户root才能使用。
1.useradd命令加参数-D查看系统创建账户的默认值
[[email protected] hcy]# useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
解释:
1)新用户添加到GID为100的公共组
2)新用户的HOME目录将会位于/home/username
3)新用户账户密码在过期后不会被禁用
4)新用户账户未被设置为某个日期后就过期
5)新用户账户将bash shell作为默认shell
6)系统会将/etc/skel目录下的内容复制到用户的HOME目录下
7)系统为该用户账户在mail目录下创建一个用于接收邮件的文件
可以用-D参数后面跟一个要修改的值的参数,来修改系统默认的新用户值。这些参数如下表:
-b default_home 更改默认的创建用户HOME目录的位置
-e expiration_date 更改默认的新账户的过期日期
-f inactive_days 更改默认的新用户从密码过期到账户被禁用的天数
-g group 更改默认的组名称或GID
-s shell 更改默认的登录shell
2.useradd添加账户和userdel删除账户
[root@localhost ~]# useradd hcy
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
Creating mailbox file: File exists
[root@localhost ~]# tail -1 /etc/passwd
hcy:x:500:500::/home/hcy:/bin/bash
[root@localhost ~]# userdel -r hcy
[root@localhost ~]# useradd hcy
[root@localhost ~]# tail -1 /etc/passwd
hcy:x:500:500::/home/hcy:/bin/bash
由于我之前创建过hcy账户,删除账户的时候没有加-r参数,所以再次创建相同账户的时候会提示文件目录或者邮箱文件夹已存在。加-r参数重新删除账户再创建不会出现任何提示,然后在/etc/passwd下查看账户基本信息。
PS:加上参数-r,userdel会删除用户的HOME目录以及mail目录。
userdel删除账户时可能会遇到以下问题:
[root@localhost /]# userdel hcy
userdel: user hcy is currently logged in
提示hcy账户当前状态是已登录,因此需要退出账户才能够userdel删除,退出用exit或者logout。
3.设置账户密码
passwd 【用户名】设置账户密码,或者利用”echo “密码”|passwd –stdin 账户名“修改密码。
[[email protected] ~]# passwd hcy
Changing password for user hcy.
New password:
BAD PASSWORD: it is WAY too short
BAD PASSWORD: is a palindrome
Retype new password:
passwd: all authentication tokens updated successfully.
[[email protected] ~]# echo "111"|passwd --stdin hcy
Changing password for user hcy.
passwd: all authentication tokens updated successfully.
4.useradd参数
在创建用户时,可以使用下面的命令行参数改变默认值或默认行为:
-c comment 给新用户添加备注
-d home_dir 为主目录指定一个名字(如果不想用登录名作为主目录名的话)
-e expire_date 用YYYYY-MM-DD格式指定一个账户过期的日期
-f inactive_days 指定这个帐户密码过期后多少天这个账户被禁用;0表示密码一过期就立即禁用,-1表示禁用这个功能
-g initial_group 指定用户登录组的GID或组名
-G group ... 指定用户除登录组之外所属的一个或多个附加组
-k 必须和-m一起使用,将/etc/skel目录的内容复制到用户的HOME目录
-m 创建用户的HOME目录
-M 不创建用户的HOME目录(当默认设置里指定创建时,才用到)
-n 创建一个同用户登录名同名的新组
-r 创建系统账户
-p passwd 为用户账户指定默认密码
-s shell 指定默认登录shell
-u uid 为账户指定一个唯一的UID
时间: 2024-10-08 15:16:27