目录
1、基本组(私有组):有且只有一个,一般为创建用户时指定的组。
2、附加组(公共组):可有可无,用户除了基本组以外,额外添加指定的组。
1、/etc/passwd:存放用户信息文件,系统上所有的用户信息都存在这个文件中
第九字段:无用字段,保留字段收费内容五、管理用户账号的相关命令
-U 解锁用户 ? passwd ?-u ? 一样4、userdel :删除用户账号
6、usermod :对已有用户属性进行修改(选项和useradd基本一致)
1、读取:r? ? 允许查看文件内容(有rx权限才可以显示目录列表)
2、写入:w? ? 允许修改文件内容,在目录中新建移动或者删除文件
①超级用户:拥有最高权限,root用户是Linux操作系统默认的超级用户账户,是最高级权限,系统中超级用户是唯一的。
②普通用户:权限受限的用户,账号需要管理员创建,拥有的权限会受到限制,一般只在自己的宿主目录中有完整的权限。
③程序用户:给程序用的用户,仅用于维持系统的某个程序正常运行。
生成用户的时候,自动会分配一个uid账号,用户之前用uid账号来进行区分。
UID的取值范围
超级用户UID | 0 | 0 |
---|---|---|
普通用户UID | CentOs6以前 500+ | CentOs7以后 1000-60000 |
程序用户UID | CentOs6以前 1-499 | CentOs7以后 201-999 |
root不一定是超级管理员,uid=0的才是超级管理员
与UID类似,每一个组账号都有自己身份标识,成为GID。
一共七个字段,七段用冒号(:)隔开
第一字段:root:用户名
第二字段:x:密码占位符
第三字段:0 :?uid 用户编号
第四字段:0:gid 组编号
第五字段:root: 备注
第六字段:/root: 家目录的位置
第七字段:?/bin/bash:用户默认加载的 shell? 环境
用来保存用户密码,账号有效期等信息
root:$6$4V92DDnjpoaeXmmD$Dx./:18318:0:99999:7: : :
第一字段:root:用户名
第二字段:$6$4V92DDnjpoaeXmmD$Dx:算法加密后密码 ? ?如果此处 ?为* ? !! ?禁止登陆
第三字段:18318: ? 从1970.1.1 (linux 诞生的日期) ? 到 今天 ?过了19318
第四字段:0: ?代表不限制 ?更改密码的时间 ? ?,如果写10 ? 代表10天内不能修改
第五字段:99999:密码 有效期 ? ? 约等200年 ? ?永久?
第六字段:7:密码到期前 7天 提醒你
第七字段: ?密码过期后的宽限天数 ? ?30 ?天 还能登陆
第八字段: 账号失效时间 ??
对新建用户的基本信息进行修改(对已经有的用户无法设置)
格式:useradd? ?选项 用户名
-u 指定uid
-d? 指定家目录
-M? 不建立家目录
-s 指定shell类型
-e 指定用户失效时间
建立一个用户指定uid 不建立家目录 不让用户登录(s/abin/nologin)
-g? 表示指定基本组的uid
-G? 指定附加组的uid
格式:passwd 选项? ?用户
-l? ?锁定用户,不让用户登录
-S? ?查看是否锁定
-u? 解锁
-fu? 强制解锁
-d? ?清空密码 ,不需要密码登录
补充:①tr -d 123就是删除123
echo 123abc |tr -d 123
输出=abc
②面交互修改密码
echo 123123 | passwd lisi --stdin
useradd 新建用户的信息进行修改
已存在的用户需要使用usermod进行修改
格式: usermod? 选项? 用户名
-l ? ? 更改用户名
-u ? ?指定uid ? ? ?
-d ? ?指定家目录
-M ?不建立家目录
-s ? ?指定shell类型
-e ? 账户失效时间 ?yy-mm-dd
-g ? ?指定基本组的 gid
-G ? 指定附加组的gid
-L ?锁定用户 ? passwd -l ? ?一样
格式:userdel? -r 用户名
-r? 就是连家目录一起删除
格式:echo 密码 | passwd --stdin 用户名
-l? ?修改用户名? ? ?
格式:useradd -l 新名字? ?旧名字
-L锁定改后的名字
-U? 解锁
补充:cat /etc/shells? ? 就是查看shell的类型
格式:gpasswd? ?选项? ?用户? 组名
-a? ? 添加? ? gpasswd -a? 用户? 组名
-d? 删除
-M 用,隔开,一次性添加多人
w? ? ?who? ? ? users? 依次详细
yum install finger -y? 安装finger命令
[root@localhost ~]#yum install finger -y
.bash_logout
退出前先运行命令
.bash_profile
.bashrc
进入用户前先运行命令
用户账号初始配置文件从/etc/skel中复制而来。
etc /passwd :用户信息
etc /shadow :用户密码,保存组账号的密码信息?
/etc/group: 保存组账号基本信息
格式? ?groupadd? ?组名
gpasswd? ?选项? ? 组名? 用户名
选项 | 功能作用 |
---|---|
-a? | 向组内添加一个用户 |
-d | 从组内删除一个用户成员 |
-M | 向组内批量添加用户 |
格式:groups? 用户名
格式? ? :id? 用户名
格式:finger? 用户名
使用前需要先下载:yum install finger -y
权限(文件夹)一定要有x,如果没有x,有rw也没有用
读 | r | 4 |
写 | w | 2 |
执行 | x | 1 |
读写执行 | rwx | 7 |
rwx有就写没有就用-表示
rw表示属主
r--表示数组
r--表示其他
-rw-r--r--.1.root root 08月26 2021 abc.txt
root可读可写,root组中用户只可读,其他用户只可读
例题:一个文件可以被删除,和本身权限有关吗?
和所在文件夹有关,有wx权限就可以删除
例题:cp/etc/issue/mnt/dir这跳命令中,cp? etc issue dir mnt? 分别最低需要什么权限?
/bin/cp 需要x权限 ?; ? ? ? ? ? ? ? /etc/ 需要x权限 ; ? ? ? ? ? ? ? ? ? ? ?/etc/issue 需要r权限 ;
/data 需要x权限 ?; ? ? ? ? ? ? ? ? /data/dir 需要w,x权限
例题:作为超级管理员,别人没有读写权限,我有读写权限,那么别人没有执行权限,我有吗?
别人有权限,我也有权限,如果别人没有执行权限,那么我也没有权限
补充:复制文件有r只读权限就性了。
格式:chmod? ugoa? +-= rwx? 文件或者目录
u:属主 ? ? ? ? ?g:属组 ? ? ? ? ? ?o:其他用户 ? ? ? ? ? a:所有用户
+:在原有的基础上增加权限? ? ? ? ? ?-:在原有的基础上去除权限? ? ? ? ? =:赋予权限
r: 读 ? ? ? ? ? ? ? ? ?w:写 ? ? ? ? ? ? ?x :运行
格式:chmod? ?777? ?文件或目录
补充:chmod? o+t? ? DIR? ? 添加sticky位
chemod? o-t? DIR? ?减少sticky位
给所有人赋予权力:chmod? -a rwx*
chown? ?属主? ?文件或目录
?chown? ?:属组? ? 文件或目录
??chown? ?属主:属组? ? 文件或目录
①都改:chown? ? 用户名: 组名? ?文件或者文件夹
②只改属主:chown? ? 用户名
③只改属组:chown? ?:组名
文件落地最高权限 666 (为安全性考虑,文件没有执行权限) ;文件夹落地最高权限 777
新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变
新建目录的默认权限: 777-umask
非特权用户umask默认是 002
root的umask 默认是 022
使用此命令时,把当前用户当成文件的主人
chmod? u+s? /user/bin/vim
chmod? u-s? /user/bin/vim
setfacl -x u:lisi passwd
-x就是删除。