Linux 用户管理-用户添加

admin 发布于:2014-8-12 8:39 分类:Linux  有 1635 人浏览,获得评论 0 条 标签: useradd 

1、 用户管理

Linux是个多用户多任务的分时操作系统,所有一个要使用系统资源的用户都必须先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面能帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也能帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的用户名和用户口令。用户在登录时键入正确的用户名和口令后,才能进入系统和自己的主目录。
实现用户账号的管理,要完成的工作主要有如下几个方面:
a.用户账号的添加、删除和修改。
b.用户口令的管理。
c.用户组的管理。


用户账号的管理主要涉及到用户账号的添加、删除和修改。

1.1 用户添加


添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell等资源。刚添加的账号是被锁定的,无法使用。
1、添加新的用户账号使用useradd命令,语法如下:

useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name
useradd 选项 用户名

Options:
  -b, --base-dir BASE_DIR       base directory for the home directory of the new account
  -c, --comment COMMENT         GECOS field of the new account  comment (指定一段注释性描述)。
  -d, --home-dir HOME_DIR       home directory of the new account   (指定用户主目录)
  -D, --defaults                print or change default useradd configuration (默认)
  -e, --expiredate EXPIRE_DATE  expiration date of the new account (自 1/1/1970 起,密码被修改的天数,指定账号的有效期限,缺省表示永久有效 )
  -f, --inactive INACTIVE       password inactivity period of the new account  (指定在密码过期后多少天即关闭该账号)
  -g, --gid GROUP               name or ID of the primary group of the new account  (指定用户所属的用户组)
  -G, --groups GROUPS           list of supplementary groups of the new account   (指定用户所属的附加组)
  -h, --help                    display this help message and exit  (帮助)
  -k, --skel SKEL_DIR           use this alternative skeleton directory
  -K, --key KEY=VALUE           override /etc/login.defs defaults
  -l, --no-log-init             do not add the user to the lastlog and faillog databases
  -m, --create-home             create the user's home directory  (如果此目录不存在,则同时使用-m选项,能创建主目录)
  -M, --no-create-home          do not create the user's home directory (不创建用户目录)
  -N, --no-user-group           do not create a group with the same name as the user (不创建组)
  -o, --non-unique              allow to create users with duplicate (non-unique) UID (重复UID)
  -p, --password PASSWORD       encrypted password of the new account (设置密码)
  -r, --system                  create a system account (创建一个系统用户)
  -s, --shell SHELL             login shell of the new account (指定用户登入后所使用的shell)
  -u, --uid UID                 user ID of the new account (需要说明的是,设定ID值时尽量要大于500,以免冲突。因为Linux安装后会建立一些特殊用户,一般0到499之间的值留给bin、mail这样的系统账号)
  -U, --user-group              create a group with the same name as the user (附加组)
  -Z, --selinux-user SEUSER     use a specific SEUSER for the SELinux user mapping  (SEUSER用户)



范例1: useradd demouser1  

建立用户名=demouser1(uid=503),  用户组=demouser1(gid=503), 用户目录=/home/demouser1, SHELL=/bin/bash ,密码=''


demouser1:x:503:503::/home/demouser1:/bin/bash   (/etc/passwd)

demouser1:x:503:  (/etc/group)

demouser1:!!:16113:0:99999:7::: (/etc/shadow)


范例2: useradd -d /var/loguser -m  -g log -G root,www -s /sbin/nologin -u 555  -p 123456  -c '我是一个LOG管理员' -e 20000 -f 7

loguser:x:555:505:我是一个LOG管理员:/var/loguser:/sbin/nologin (/etc/passwd)


log:x:505:    (/etc/group)

root:x:0:root,loguser (/etc/group)

www:x:501:loguser (/etc/group)


loguser:123456:16113:0:99999:7:7:20000:  (/etc/shadow)