一、用户管理
1、对用户而言:管理员uid为0 root
系统用户:uid (1--499)
普通用户:uid(大于500)
2、对组而言: 私有组 只有一个用户
公共组:有多个用户
系统组:gid在1---499的
3、组对用户而言又分为:基本组:用户最初属于组时
附加组:用户可以属于多个组,除了基本组外,其他的组就是用户的附加组,在/etc/group第四栏显示附加的用户
用户在登陆系统时要经过认证(AUTHENTICAION)和授权(AUTHCKIZATION)
4、用户和组的文件:
用户文件:/etc/passwd用户信息 /etc/shadow 用户密码
组文件:/etc/group用户组信息 /etc/gshadow 存放组密码
5、添加用户命令:useradd 参数有
-u uid 可以指定用户id 不用系统默认的
-g gid 指定组id
-G 组名 指定附加组
-s Shell 类型
-d 家目录
-M 不创建家目录 -m 创建家目录一般与-k连用
例如: Useradd -M jing 在/etc/passwd 文件里会有jing用户的一个位置 但在/home目录里不会出现jing的家目录
-c 添加注释信息
6、修改用户信息命令:usermod 参数与添加用户的一样
-u -g -s
-d 一般与-m 一块用(在改变家目录时目录有文件时用到 -dm)
-l 改变用户登录名时用到
-G 与-a(追加)连用
usermod -a -G user(组名) jack(用户名)
-e 修改用户密码过期时间 格式:usermod -e 年月日
-f 密码过期时 账号就禁用了但会有一段的缓和时间,这个时间的设定就用该参数
7、删除用户信息:userdel
直接加用户名该用户的账号家目录依然在
-r 家目录会被铲除
8、组的添加:groupadd 参数
-g gid
-r 系统组
修改:groupmod -g gid
-n 组名
gpasswd 改组密码
newgrp 临时切换到不属于该组成员的其他组 要有切换组的密码 是给组加密码的原因之一
二、用户密码/etc/shadow 第二栏
!!表示用户没设密码 如果用户设了密码就表示该用户账号被锁定
密码加密方式:MD5 salt(种子)
单向加密: 不可逆 提取用户特征码 定长输出 雪崩效应()
MD5 : 128位
在两个用户密码一样时,会够成威胁,系统验证时会加上种子值(salt)再进过计算
Sha1 :安全的哈希短算发 160位
非交互式的给用户加密:
echo '12345' | passwd -- stdin John(用户名)
三、文件管理:
1、 文件类型:-普通文件 d:目录 p:管道 l:链接文件
b:块设备文件 随机存储
c:字符设备文件 线性的 传输串连的字符
s:套接字设备
2、 文件权限:
(1)分为三类:u:文件的拥有者 g:文件所属组 o:不属于组的其他用户
对于每一类用户:r(4)读 w(写) x(1)执行
(2)特殊权限:setuid setgid sticky粘滞位
setuid(s)针对文件而言的 设置该属性表示其他用户在执行文件时以文件属主的身份执行
setgid(s)与setuid具有相同的属性,目录里的文件以目录的属组执行不以用户的
Setgid 组里的成员文件可以互相删除
sticky (t)针对目录而言:一旦目录设置了改参数就表示在此目录中,只有文件的拥有者,目录的拥有者及root可以删除该文件,其他用户不能删除 通常用于专项目录
(3)权限修改
命令:chmod chown chgrp
+ 添加权限 – 去除文件 =指定权限
例如:chmod u+s 文件名
chmod g+s 文件名
chmod o+t 文件名
也可以用数字表示 setuid(4) setgid (2) sticky(1)
chmod 4644 文件名 (-rwsr--r--)
对于文件或目录而言 如果本身就有执行权限则用大写S表示 没有的话就用小写s表示
Sticky一样有的话就用大写T表示没有的就用小写t
Chown 修改文件属主
#chown jing(所改用户) ping.sh(所改文件)
# chown 用户名:组名 文件路径 (也可以将属主和属组一起改)
Chgrp 修改文件的所在组
#chgrp 组名 文件名
(4)umask值 系统值:002 用户值:022
对文件而言:系统默认的文件权限为:666 目录:777 并不是最终权限要根据umask值
系统默认的最终权限为664 目录:775
Root用户的最终权限:文件 644 目录:755
设置umask值 #umask 023 只是临时生效的要永久设置在/hoem/profile里设
对于文件而言不管umask值是多少都不能用执行权限