Linux学习日志_文件、用户管理
#######文件、用户管理########
ls --->list显示文件的文件名与相关属性
-al --->列出所有的文件详细的权限与属性
[[email protected] Desktop]$ ls -al
total 12drwxr-xr-x. 2 kiosk kiosk 57 Dec 11 12:50 .
drwx------. 17 kiosk kiosk 4096 Jan 3 20:07 ..
-rwxrwxr-x. 1 kiosk kiosk 294 Dec 9 13:45 rht-desktop.desktop
-rwxrwxr-x. 1 kiosk kiosk 289 Dec 9 13:45 rht-server.desktop
[ 1 ] [ 2 ][ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ]
[ 权限 ] [ 连接 ][ 所有者 ][用户组 ][文件容量][ 修改日期 ] [ 文件名称 ]
1 . 权限
(1)第一个字符代表这个文件是哪种属性(目录、文件等)
d ---> 目录
- ---> 文件
l ---> 连接文件
b ---> 设备文件中可供存储的借口设备(快设备)
c ---> 目录设备文件中串行端口设备(键盘、鼠标等一次性读取设备、字符设备)
s ---> 套接字
p ---> 管道
(2)接下来的字符三个一组,均为rwx组合
r ---> 可读 read
w ---> 可写 write
x ---> 可执行 execute
- ---> 无权限
(3)权限的数字意义
---|---|---
* & %
*所有人权限
&所有组权限
%其他人权限
210| 权限的位数
rwx
r=4(2的2次方) w=2(2的1次方) x=1(2的0次方)
7 = rwx 6 = rw- 5 = r-w 4 = r-- 3 = -rw 2 = -r- 1 = --x 0 = ---
421|421|421
u=421=7|g=421=7|o=421=7 pub=777 --->满权限
700-111=600
(4)系统预留权限umask
0022 --->系统保留022
umask 077 --->将系统保留更改为077
777-022 = 755>目录的初始权限为755-111(被内核保留)=644
file 为更改系统保留权限之前建立的文件 , 权限为644
file2 为更改系统保留权限之后建立的文件 , 权限为700
westos 为更改系统保留权限后建立的文件组 , 权限为600
用命令方式进行系统命令的更改--->临时的,关闭shell后失效
vim /etc/procfile --->系统配置文件存储位置 60行普通普通用户,62超级用户
vim /etc/bashrc --->shell配置文件存储位置 71行普通用户,62超级用户
上面配置两者一致。
source /etc/procfile ---->重新加载
sourse /etc/bashrc
sticky 特殊权限 --->限制用户不能删除不属于自己的文件
chmod 1777
或chmod o+t /pub/
强制位 --->使得在普通用户建立/mnt/westos/文件,文件的所有组为root而不是普通用户
chmod g+s /mnt/westos/ 所有的人执行watch时,都为超级用户
u+s /bin/watch 任何人执行watch时,都为超级用户
2. 用户标识符: Uid 与 Gid
ID 与帐号的对应关系在 /etc/passwd中
GID:Group ID 用户组ID
UID:User ID 用户ID
用指令 ID + 用户名查看用户信息
3.用户账户密码
调出/etc/passwd下前四行的内容,共七段,每段之间用:隔开
[账户名] : [密码] : [UID] : [GID] : [用户信息说明] : [主文件夹] : [Shell]
注意:
1. root 对应的UID为 0
2. 密码的数据存放在了 /etc/shadow中,因此只显示x
3. UID为0时为系统管理员,1-499为系统帐号,500-65535为可登陆帐号
4. root的主文件目录在/root中,普通用户存放在/home/UID中
4.用户密码passwd
su - student 更改为普通用户
logout 登出
passwd student 修改普通用户student密码
-------------- Q:设置一个shell脚本,实现1个命令修改普通用户的密码 --------------
vim建立文本,输入
sh file执行该脚本
运用su - student
su - student
输入新的密码进行验证
得到
后,验证成功
5. 权限的级位
下放权限
vim /etc/sudoers 查看权限信息
·更改配置文件
visudo(后回车,不需要接任何东西)去配置文件,推出后错误会有提示(强制行为规范)
##开头表示说明文字,注释
·下放权限:
hostname查看主几名
在进行权限下放前,进行创建用户,错误信息中会指出权限所在文件及位置
其中,权限所在位置为 /usr/sbin/ 权限为/useradd
##Allow westos to run useradd +主机名
westos +主机名 =(root) /usr/sbin/useradd
注意:此方式更改权限是临时的,关闭后失效
sudo useradd 调用输入的文件
6. 权限和文件属性的修改
chgrp :改变文件所属的用户组
chown :改变文件的所有者
chmod :改变文件的权限
文件:
文件的类型,文件的读写文件,需要删除几次才可以被删除(硬链接次数,被硬盘记录了多少次),名字,文件组,文件大小,最后更改时间,文件名称
sock 开启程序的借口,用户可以通过该套接字进入程序内部
|表示缺失权限
目录:
目录的类型,目录的读写文件,子目录的个数,名字,文件组,文件的属性,最后更改时间,文件名称
文件的用户和用户组只有root可以更改
rw-|r--|r--
u g o
u:文件所有人对文件可以修改
g:文件组成员对文件可读
o:其他人对文件可读
chown westos /mnt/file
chown 文件名 地址
chown -R第归修改
chown westos,student /mnt/westos/ -R修改所有人及其其中的内容一起修改
ugo权限 ,user group other
-R全部更改
能不能进去--->执行权限
--------- Q:去除file文件组成员对其可读 ---------
chmod g-r /mnt/file #file2是未经修改创建文件的默认属性644,file是修改后的属性604
chowd root.root 复原
---------- Q:1.新建用户组,shengchan,caiwu,jishu
2.新建用户要求如下:
1)tom是shengchan组的附加用户
2)carry是caiwu组的附加用户
3)leo是jishu组的附加用户
3.新建目录要求如下:
1)/pub目录为公共存储目录对艘由用户rwx
原始创建目录的权限为:
chmod ugo+rwx /pub/ 后:
2)/sc目录为生产部存储目录只能对生产部人员w
改变生产组的目录chgrp shengchan /sc ,默认权限为755
chmod ugo ug=rwx,o=--- /sc/
3)/cw目录为财务部存储目录只能对财务部人员可以w
同上,先进行组改变,接着进行权限更改
useradd -G 组 用户 --->添加一个用户到组
7.权限的提升,下降
suid(SetUID)
以所有者的身份执行,与组无关 ###冒险位
只针对二进制可执行文件,
文件内记录的程序产生的进程的所有认为文件所有人,和进程的发起人身份无关
设定方法:
chmod u+s file
suid=4
chmod 4xxx file
sgid(SetGID)
以组的身份执行,与所有者无关 ###强制位
只针对于二进制可执行文件,
任何人运行二进制文件程序时产生的进程和所有组都是文件的所有组
sbit (Sticky BIT)
仅对于目录有效--->当用户对于此目录具有wx权限时,即具有写入的权时,
当用户在该目录下创建文件或目录时,仅有自己与root才有权力删除该文件
特殊权限设置:
用数字更改权限的方法进行修改,在一组的三个数字之前再加上一个数字,加上的这个数字就是这几个权限
4 ---> SUID
2 ---> SGID
1 ---> SBIT
8. setfacl与getfacl ########不太懂########
Q:让student和root对/mnt/file 可写,其他都不可以
acl访问控制列表
setfacl -m u:用户:rw .mnt.file
getfcal /mnt/file
列表空了,功能可以用
+出现,表示权限列表未关闭
setfcal -b //mnt/file
setfacl -m u:student 增添student
setfacl -m u:student 删除student