一、Linux系统上用户和用户组类别
用户类别
1、管理员 uid=0
2、普通用户 id:1~65535
2.1、系统用户 id:1~499,一般不允许登陆系统
2.2、一般用户 id:500~60000
组类别
1、管理员组
2、普通组
2.1、系统组
2.2、一般组
基本组:用户的默认组
私有组:每个用户都有自己的默认组,没有指定所属组,系统默认创建一个和用户名同名的组
附加组:又称额外组,默认组之外的组
针对/etc/passwd、 /etc/shadow配置文件,在/etc/default目录下有两个文件是定义创建用户初始化的文件
有兴趣的可以研究下
1
2
3
4
|
[root@lovelace ~]
# ll /etc/default/
total 16
-rw-r--r-- 1 root root 1756 Jan 20 2012 nss
-rw------- 1 root root 119 Oct 25 2011
useradd
|
二、关于用户管理
涉及到的命令有:useradd 、userdel、usermod、passwd、chsh、shfn、finger、id、change
详情可参考下图:(怎么每次传图片都那么不给力呢…)
三、关于组管理
涉及到的命令有:groupadd、groupdel、groupmod、gpasswd
详情可参考下图:
四、问题延伸
案例:新建一个用户lovetest,没有创建家目录,然后切换到该用户模式下,发现bash环境有问题,这时我们该怎么做?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#新建用户,不创建家目录
[root@lovelace ~]
# useradd -M lovetest
#验证家目录是否存在
[root@lovelace ~]
# ls /home/
kale mark practice scripts
test
test2 user2 user4 user6 user8
lovelace nick python1.py shell test1 user10 user3 user5 user7 user9
#给用户lovetest创建密码
[root@lovelace ~]
# passwd lovetest
Changing password
for
user lovetest.
New UNIX password:
Retype new UNIX password:
passwd
: all authentication tokens updated successfully.
#切换到lovetest用户下,这时我们将看到如下的结果
[root@lovelace ~]
# su -l lovetest
su
: warning: cannot change directory to
/home/lovetest
: No such
file
or directory
-
bash
-3.2$
ls
ls
: .: Permission denied
|
碰到这种情况我们该怎么办?解决方法如下:
1
2
3
4
5
6
|
#把/etc/skel目录复制到/home目录下,并且命名为lovetest
[root@lovelace ~]
# cp -r /etc/skel /home/lovetest
#然后给/home/lovetest设置属组属主,注意要使用递归选项
[root@lovelace ~]
# chown -R lovetest.lovetest /home/lovetest/
#给/home/lovetest目录设置权限,注意要使用递归选项
[root@lovelace ~]
# chmod -R go-rwx /home/lovetest
|
再次切换用户看看效果:
1
2
3
4
|
[root@lovelace ~]
# su -l lovetest
[lovetest@lovelace ~]$
ls
[lovetest@lovelace ~]$
pwd
/home/lovetest
|
五、后记
关于用户管理和组管理的知识点很多,需要我们用心去学习,特别是关于用户时间限制这一块特别重要,希望朋友们要认真学习下。。。。
本文转自lovelace521 51CTO博客,原文链接:http://blog.51cto.com/lovelace/1201762,如需转载请自行联系原作者