# root ____区分两种符号____ $ user
/etc/passwd
user1:x:500:500:描述:/home/user1:/bin/bash
用户名:密码:用户userid:组id:描述:主目录home目录:默认shell默认执行脚本 其中密码一般加密后放在/etc/shadow内
/etc/shadow
name:!!:13675:0:99999:7:::
每一行给一个特殊帐户定义密码信息,每个字段用 : 隔开。
字段 1 定义与这个 shadow 条目相关联的特殊用户帐户。
字段 2 包含一个加密的密码。
字段 3 自 1/1/1970 起,密码被修改的天数
字段 4 密码将被允许修改之前的天数(0 表示“可在任何时间修改”)
字段 5 系统将强制用户修改为新密码之前的天数(1 表示“永远都不能修改”)
字段 6 密码过期之前,用户将被警告过期的天数(-1 表示“没有警告”)
字段 7 密码过期之后,系统自动禁用帐户的天数(-1 表示“永远不会禁用”)
字段 8 该帐户被禁用的天数(-1 表示“该帐户被启用”)
字段 9 保留供将来使用
如果查看/etc/shadow下存放的普通帐号信息如下:
(1):帐号名称
(2):密码:这里是加密过的,但高手也可以解密的。要主要安全问题(代!符号标识该帐号不能用来登录)
(3):上次修改密码的日期
(4):密码不可被变更的天数
(5):密码需要被重新变更的天数(99999表示不需要变更)
(6):密码变更前提前几天警告
(7):帐号失效日期
(8):帐号取消日期
(9):保留条目,目前没用
例如:abc:!!:14768:0:99999:7:::
$su -sky 切换到sky用户
$su - 切换到root账户
$ls -l 查看所有文件 -la:查看所有文件包括隐藏文件
$cd .. 切换到上层文件夹
$cd /home/sky 进入sky文件
$pwd 查看现在的目录
$groups 列出所属群组
$vi /etc/passwd 查看passwd文件
$vi /etc/group 查看group文件
————————————————用户的管理————————————————
useradd指令:添加新用户
#useradd -u 520 -g user1 -G user2 -d /home/usertest user3
说明:
-u:指定一个特殊的UID给该账号
-g:指定一个主要群组的名称 会修改passwd文件
-G:指定一个次要群组的名称 会修改group文件
-M:强制不要创建用户家目录 系统账号root默认
-m:强制建立用户家目录 一般账号user默认
-c:passwd文件中第五个字段的说明文字
-d:指定用户的家目录位置,不要使用默认的值
-s:指定默认的shell,如果没有指定则默认是/bin/bash
usermod指令:修改用户信息
/root切换到下面的用户不需要密码 /冻结就是在shadow文件下对应的用户的密码前加上! 禁用
-c:该账号的说明文字
-d:账号的家目录
-e:指定账号的禁用日期 格式YY-MM-DD
-G:修改次要群组的名称,会修改group文件
-g:修改主要群组名称
-a:与-G何用,添加次要群组
-l:将当前账号的名称重命名为指定名称
-u:修改UID
-L:暂时将该账号的密码冻结,无法登录
-U:解冻账号吗,就是删除shadow的!字符
userdel username
-r:连同home目录一同删除
passwd 修改密码
通过root修改 不需要输入当前密码 普通用户则需要输入修改的账号的当前密码
#passwd user5 修改指定用户密码
#passwd 修改当前用户密码
————————————————用户信息的检查————————————————
finger [-s] username 指令 查询用户的相关信息 finger指令没有权限限制,所有用户下都可以查看
# finger
# finger user3
# finger -s user3
-s:仅仅列出用户的账号、全名、登录时间等
id指令 查看某人或自己相关的UID GID信息
# id 查看当前
# id jike 查看特定用户
whoami指令 查看当前是哪个用户登录的系统
who&w指令 与finger类似,查看当前有哪些用户在使用系统
users指令 只显示当前使用系统的用户名
groups指令 查看当前用户所属的群组
————————————————默认权限的控制————————————————
1、内核级别,文件的默认权限是666
2,、内核级别,目录的默认权限是777
3、最终权限会通过umask进行遮盖,来阻止一些权限,从而产生最终权限
4、非管理账号的umask是0002
5、root的umask是0022
6、umask的作用原理 注意是遮盖 不是减法!
举例:
(#操作符表示root下操作)
#mkdir testdir 结果:rwx r-x r-x
#touch testfile 结果:rw- r-- r--
原因:
dir 666 r w x r w x r w x
Umask 022 - - - - w - - w -
____________________________________
结果 644 r w x r - x r - x
File 666 r w - r w - r w -
Umask 022 - - - - w - - w -
____________________________________
结果 644 r w - r - - r - -
————————————————用户群组的管理————————————————
groupadd [-g gid] [-r] 组名 :创建群组
例子:groupadd -g 505 group2
-g:后面接特定的GID 用来指定GID GID从500开始计算 例506
-r:建立系统群组 GID小于500 例104
groupmod [-g gid] [-n group_name] 群组名 :修改群组
例子:groupmod -g 515 -n grouptwo group2 /将group2群组GID修改为515 群组名修改为grouptwo
-g:修改当前的GID
-n:修改当前的组名
groupdel [groupname] :删除群组
例子:groupdel grouptwo /删掉上面的已经将name修改为grouptwo的群组