linux中useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。 如果我们只是创建用户,则可以不使用任何选项,系统会按照默认值帮我们指定这些选项,只需要最简单的命令就可以了。
参数useradd [-c comment] [-d home_dir] [-e expire_date] [-f inactive_time] [-g initial_group] [-G group[,...]] [-m [-k skeleton_dir] | -M] [-s shell] [-u uid [ -o]] [-n] [-r] name
-u UID: 手工指定用户的 UID,注意手工添加的用户的 UID 不要小于 500;
-d 家目录:手工指定用户的家目录。家目录必须写绝对路径,而且如果需要手工指定家目录,则一定要注意权限;
-c 用户说明:手工指定用户说明。还记得 /etc/passwd 文件的第五个字段吗?这里就是指定该字段内容的;
-g 组名:手工指定用户的初始组。一般以和用户名相同的组作为用户的初始组,在创建用户时会默认建立初始组。如果不想使用默认初始组,则可以用 -g 手工指定。不建议手工修改;
-G 组名:指定用户的附加组。我们把用户加入其他组,一般都使用附加组;
-s shell:手工指定用户的登录 Shell。默认是 /bin/bash;
-e 曰期:指定用户的失效曰期,格式为”YYYY-MM-DD”。也就是/etc/shadow文件的第八个字段;
-o 允许创建的用户的 UID 相同。例如,执行”useradd -u 0 -o usertest”命令建立用户 usertest,它的 UID 和 root 用户的 UID 相同,都是 0;
-m 建立用户时强制建立用户的家目录。在建立系统用户时,该选项是默认的;
-f 指定在密码过期后多少天即关闭该账号。
-M 不要自动建立用户的登入目录。
-n 取消建立以用户名称为名的群组。
-r 建立系统账号。
useradd账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件中。
实例useradd -s mytest //新建系统用户mytestuseradd mytest -u 566 //设定ID值时尽量要大于500,以免冲突;一般0到499之间的值留给bin、mail这样的系统账号useradd -m -d /home/mytest mytest //指定创建用户家目录的路径,/home/mytest目录会被创建useradd -s /sbin/nologin mytest //创建一个没有家目录且不能登录的用户useradd -m -G test,sudo mytest //创建时把用户加入不同的用户组test,sudouseradd -u 2015 -m -g web mytest //添加用户mytest其id为2015,并且将其添加到组