useradd命令详解
2015-07-17 17:14
260 查看
useradd是Linux添加新用户的命令,这个命令提供了一次性创建新用户账户及设置用户HOME目录结构的简便方法。1、useradd命令加参数-D参看系统的默认值:
# useradd -D GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/bash SKEL=/etc/skel CREATE_MAIL_SPOOL=yes解释: 1)新用户添加到GID为100的公共组 2)新用户的HOME目录将会位于/homoe/username 3)新用户账户密码在过期后不会被禁用 4)新用户账户未被设置为某个日期后就过期 5)新用户账户将bash shell作为默认shell 6)系统会将/etc/skel目录下的内容复制到用户的HOME目录下 7)系统为该用户账户在mail目录下创建一个用于接收邮件的文件倒数第2个值很有意思。useradd命令允许管理员创建一个默认的HOME目录配置,然后把它作为创建新用户HOME目录的模板。这样,就能自动在每个新用户的HOME目录里放置默认的系统文件。在Ubuntu Linux系统上,/etc/skel目录下有下列文件:
$ ls -la /etc/skel total 32 drwxr-xr-x 2 root root 4096 Jun 24 09:43 . drwxr-xr-x 132 root root 12288 Jun 19 09:53 .. -rw-r--r-- 1 root root 220 Apr 3 2012 .bash_logout -rw-r--r-- 1 root root 3486 Apr 3 2012 .bashrc -rw-r--r-- 1 root root 179 Apr 3 2012 example.desktop -rw-r--r-- 1 root root 675 Apr 3 2012 .profile $在创建用户时,可以使用下面的命令行参数改变默认值或默认行为:
============================================================================ 参 数 描 述 ---------------------------------------------------------------------------- -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 ============================================================================同样,你可以用-D参数后面跟一个要修改的值的参数,来修改系统默认的新用户值。这些参数如下表:
============================================================================ 参 数 描 述 ---------------------------------------------------------------------------- -b default_home 更改默认的创建用户HOME目录的位置 -e expiration_date 更改默认的新账户的过期日期 -f inactive_days 更改默认的新用户从密码过期到账户被禁用的天数 -g group 更改默认的组名称或GID -s shell 更改默认的登录shell ============================================================================如 #useradd -D -s /bin/tsch ,修改默认的shell为/bin/tsch。另外,删除用户,使用userdel命令。默认情况下,userdel命令只会删除/etc/passwd文件中的信息,而不会删除系统中属于该账户的任何文件。 如果加上-r,userdel会删除用户的HOME目录以及mail目录。然后,系统上仍可能存有归已删除用户所有的其他文件。这在有些环境中会造成问题。 PS:在有大量用户的环境中使用-r参数时要特别小心。你永远不知道用户是否在他的HOME目录下存放了其他用户或其他程序要使用的重要文件。记住在删除用户的HOME之前一定要检查清楚!
相关文章推荐
- 详解 CSS 属性 - 伪类和伪元素的区别
- SQL 多条记录整合到一个字段 一个字段拆分多条记录
- 郁闷中创建虚拟网卡
- java 使用JDesktopPane
- Java过滤emoji表情,找出emoji的unicode范围。
- C#中按指定质量保存图片的实例代码 24位深度
- 逻辑数据库设计 - 可变属性(继承)
- 黑马程序员-----------设计模式
- Java笔记--基础
- U-Boot添加命令的方法
- 解决svn working copy locked问题
- codevs1006
- 简单的MD5查询工具
- 2012 金华 现场赛
- 排序_归并排序算法
- leetcode:Palindrome Linked List
- 逻辑数据库设计 - 元数据分裂(分区表)
- setsockopt中参数之SO_REUSEADDR的意义(转)
- 介绍一种在Xcode中删除一整行代码的快捷键设置,
- HDU4240 Route Redundancy