Linux系统用户和用户组介绍

1.请问如下登录环境故障的原理及解决办法?

 1 [root@server test]# useradd rr  ##创建用户rr
 2 [root@server test]# id rr
 3 uid=510(rr) gid=511(rr) groups=511(rr)
 4 [root@server ~]# ls -la /home/rr/    ##查看/home/rr目录下都有什么文件
 5 total 28
 6 drwx------   2 rr   rr   4096 Dec 26 09:41 .
 7 drwxr-xr-x. 12 root root 4096 Dec 26 09:41 ..
 8 -rw-r--r--   1 rr   rr     18 Jul 24 02:55 .bash_logout
 9 -rw-r--r--   1 rr   rr    176 Jul 24 02:55 .bash_profile
10 -rw-r--r--   1 rr   rr    124 Jul 24 02:55 .bashrc
11 -rw-r--r--   1 rr   rr    658 Nov 10 20:27 .zshrc
12 -rw-r--r--   1 rr   rr     15 Dec 25 11:03 readme.txt
13 [root@server ~]# cd /home/rr
14 [root@server rr]# rm -f .bash
15 .bash_history  .bash_logout   .bash_profile  .bashrc
16 [root@server rr]# rm -f .bash*   ##将目录下以bash开头的文件删除
17 [root@server ~]# su - rr   ##切换到rr账户
18 -bash-4.1$   ##登录环境故障
19 ##处理办法
20 -bash-4.1$ cp /etc/skel/.bash* /home/rr  ##将/etc/skel目录下bash文件拷贝到缺少文件的用户账号目录下
21 -bash-4.1$ logout
22 [root@server ~]# su - rr    ##重新切换到rr账号成功
23 [rr@server ~]$ 

 1 ### 2 [root@server /home 09:56:56]#PS1='[\u@\h \w \t]\$' ##如果想让配置永久生效,可以写入到/etc/profile文件中 

2.了解/etc/login.efs特定参数的意义

 1 # *REQUIRED*
 2 #   Directory where mailboxes reside, _or_ name of file, r
 3 elative to the
 4 #   home directory.  If you _do_ define both, MAIL_DIR tak
 5 es precedence.
 6 #   QMAIL_DIR is for Qmail
 7 #
 8 #QMAIL_DIR      Maildir
 9 MAIL_DIR        /var/spool/mail    ##mail邮箱路径
10 #MAIL_FILE      .mail
11 # Password aging controls:
12 #
13 #       PASS_MAX_DAYS   Maximum number of days a passw
14 ord may be used.
15 #       PASS_MIN_DAYS   Minimum number of days allowed
16  between password changes.
17 #       PASS_MIN_LEN    Minimum acceptable password le
18 ngth.
19 #       PASS_WARN_AGE   Number of days warning given b
20 efore a password expires.
21 #
22 PASS_MAX_DAYS   99999    ##密码有效期最大的天数
23 PASS_MIN_DAYS   0   ##最小有效期
24 PASS_MIN_LEN    5    ##密码最小长度
25 PASS_WARN_AGE   7  ##过期的警告
26 
27 # Min/max values for automatic uid selection in userad
28 d
29 #
30 UID_MIN                   500
31 UID_MAX                 60000      ##用户ID的大小
32 
33 #
34 # Min/max values for automatic gid selection in groupa
35 dd
36 #
37 GID_MIN                   500
38 GID_MAX                 60000    ##组ID的大小
39 
40 # If useradd should create home directories for users 
41 by default
42 # On RH systems, we do. This option is overridden with
43  the -m flag on
44 # useradd command line.
45 #
46 CREATE_HOME     yes   ##是否创建家目录,默认要求创建;可用-m参数来控制
47 
48 # The permission mask is initialized to this value. If
49  not specified,
50 # the permission mask will be initialized to 022.
51 UMASK           077     ##家目录的UMASK
52 
53 # This enables userdel to remove user groups if no mem
54 bers exist.
55 #
56 USERGROUPS_ENAB yes ##删除用户同时删除用户组

3.掌握/etc/default/useradd配置文件中的信息;

1 [root@server ~]# cat /etc/default/useradd    
2 # useradd defaults file
3 GROUP=100
4 HOME=/home   ##把用户的家目录建在/home中。
5 INACTIVE=-1  ##是否启用账号过期提权,-1表示不启用
6 EXPIRE=    ##账号终止日期,不设置表示不启用
7 SHELL=/bin/bash  ##新用户默认所用的shell类型
8 SKEL=/etc/skel  ##配置新用户家目录的默认文件存放路径。前文提到的/etc/skel,即当我们用useradd添加用户时,用户家目录下的文件,都是从这里配置的目录中复制过去
9 CREATE_MAIL_SPOOL=yes  ##创建mail文件

实例:

useradd -c、-u、-G、-s、-d多个参数组合例子

自定义用户的家目录、shell类型、所归属的用户组等;

添加用户oldboy6,并设置其用户注释信息为HandsomeBoy,UID指定为806,归属为用户组root、oldboy、sa成员

其shell类型为/bin/sh,设置家目录为/oldboy6。

实操作结果为:

 1 ###首先创建用户组sa
 2 [root@server ~]# grep "sa" /etc/group
 3 vcsa:x:69:
 4 saslauth:x:76:
 5 sa:x:512:
 6 [root@server ~]# grep -o "\bsa\b" /etc/group   ##只过滤以“sa”开头的单独单词
 7 sa
 8 [root@server ~]# useradd -c "HandsomeBoy" -u 806 -G root,oldboy,sa -s /bin/sh -d /oldboy6 oldboy6  
 9 ##注释
10 -c:设置备注信息
11 -u:设置UID号
12 -G:设置对于的属组
13 -s:设置对应的shell
14 -d:设置相应的家目录
15 ###成果如下
16 [root@server ~]# grep "oldboy6" /etc/passwd
17 oldboy6:x:806:806:HandsomeBoy:/oldboy6:/bin/sh
18 [root@server ~]# id oldboy6
19 uid=806(oldboy6) gid=806(oldboy6) groups=806(oldboy6),0(root),512(sa),513(oldboy)

 

posted @ 2015-12-27 09:42  Simon92  阅读(2239)  评论(0编辑  收藏  举报