Linux下的用户管理
Linux下有三类用户
1,超级用户:root具有操作系统的一切权限,UID值为0.
2,普通用户:普通用户具有操作系统有限的权限,UID的值500——6000
3,伪用户:是为了方便系统管理,满足相应的系统进程文件属主的要求,不能登录,
UID 1—499
passwd /etc/passwd 只定义账号不定义权限
ll 在该文件中一行定义一个用户,分7个部分。
账号名称:root
用户密码:x
用户标识码(用户ID):0
组标识吗(用户组ID)0
用户相关信息:admin
用户家目录:/root /home/lijian
用户的环境:/bin/bash
/etc/shadow 这个文件中有root用户可以读 这个文件用冒号间隔9个字段组成
1 用户名:root
2 口令:存放加密口令,如果这个口令的第一个字符是!则这个用户不能登录
3 最后一次修改的时间
4 最大时间间隔:0:可以随时改变
5 最小时间间隔:99999永远不过期
6 警告时间:默认1周
7 不活动时间:还没改就禁用
8 失效时间;
用户账户管理
创建账户
1,在/etc/passwd中添加一条记录
2,创建用户主目录
3,在用户主目录在设置默认的配置文件
4,设置用户的初始口令
useradd 或adduser
cd
useradd lijian
参数:
useradd -u 600(指定用户id) -g 500(指定组) -G 502(指定附加组)-d /home/www
-s /bin/sh(指定shell) -c lijianxxx(指定全名) lijian
用户账户的维护
passwd lijian 为其设置账户口令
passwd 在哪用户下即修改的是他的密码
userdel lijian 删除账户 -r 删除所有信息
usermod -l newname oldname 修改账户名称
usermod -L lijian 可以锁住账户
usermod -U lijian 解锁账户
进入 vi /etc/passwd 在用户前加#注释掉, 即停用账户
cd /etc/skel 该目录下的文件在新建用户时每个用户都会有
用户组的管理
分两组:
私有组:当在创建一个新用户user时,若没有指定他属于的组,linux就建立一个和
该用户同名的私有组
标准组:可以容纳多个用户,若使用标准组,则在创建新用户时就应该指定该用户所属于 的组
/etc/passwd
组文件 /etc/grop 三个冒号,四个部分。
1,组名:用户登录所在的组名
2,组口令:一般不使用
3,组的ID(GID):组标识号
4,组内用户列表:属于该组所有用户名表
添加用户组:
useradd lijian 一个组和用户名同名 lijian
groupadd 组账号名 该组账号必须大于500
改变组的账号名:
groupmod -n 新组名 原组名
删除组账号名:
groupdel 组账号名称
注意,必须存在且不是私有组
要删除组,要先删除用户(userdel)然后groupdel
添加用户到之指定组:
useradd -g mygroup myuser
组名 用户名
gpasswd -a 用户账号 组账号名
删除用户从组中:
gpasswd -d 用户账号 组账号
查看组 :
groups 组名-------查看用户
groups 用户名------查看所在组
tail -n /etc/group
id命令:
查看一个用户的UID和GID
id [选项] 用户名
-g 只显示用户组ID
-G 附加组ID
-u 只UID
finger 命令:
可以查看用户的相关信息,包括用户的主目录,启动shell,用户名等
finger [选项] 用户名
变换用户身份
su 命令
如果从管理员到普通用户不用密码,反之则需要,包括向其他普通用户切换。
这样只是登录的身份变为root,但诸如文件等其他环境还是原用户
因此可用 su - 命令
只允许root登录
可以在 /etc/目录下建立一个名为nologin的文件
管理员维护系统时使用
touch /etc/nologin
rm -rf /etc/nologin
权限管理:
chmod
a(所有用户) u(用户)(前三行) g(组)(再三行) o(其他用户)(最后三行)
+ - =
r(读) w(写) x(执行)
例: chmod u-w file.txt
chmod a=w file.txt
chmod g-x o-rx file.txt
八进制的数字
0 1 2 3 4 5 6 7
0 什么也没有
1 x
2 w
3 1+2 x+w xw
4 r
5 4+1 r+x rx
6 4+2 r+w rw
7 4+2+1 rwx
r=4 x=1 w=2
chmod 755(每个数分别代表该用户,组内用户,其他用户) file.txt
改变目录权限
chmod 权限 用户名
chmod 777 file
chmod -R 777 file 连同子目录一起改
chown 改变文件或目录的所有人(用户)
chown 用户名 文件或目录
chown -R 用户名 目录或文件 //目录下所有子目录一起改变
chgrp 改变文件或目录的所属组
chgrp 组 文件或目录
chgrp -R 组 文件或目录
chown 一起改变
chown -R 用户.组名 文件或目录
umask :设置文件的默认生成掩码的
目录 755 + 022 = 777
文件 644 + 022 + 111 = 777
可以改变umask码