笔记
(借鉴请改动)
5.3:文件特殊权限
SUID 临时拥有文件所有者的权限(基本上只是执行权限)
SGID 临时拥有文件所有组的权限,在目录中创建文件自动继承该目录的用户组。
SBIT 粘滞位,也称保护位,为了不让其他用户私自修改内容。(让用户只能删除自己的内容)
chmod //设置文件或目录的权限。chmod 【参数】权限 文件或目录
-R //递归操作 -f //忽略错误
例:chmod -Rf 777 /etc/fstab //给予777权限
chmod u+s /etc/fstab 添加suid权限
chmod u-s /etc/fstab 去掉suid权限
chmod g+s /etc/fstab 添加sgid权限
chmod g-s /etc/fstab 去掉sgid权限
chmod o+t test 添加sbit权限
chmod o-t test 去掉sbit权限
chmod -Rf 0777 /tmp 前面的0为特殊权限,suid=4,sgid=2,sbit=1
u为用户 g为组 其他用户为o -a代表所有人,也可单独授权:
例:chmod u+x /etc/fstab 授予所有者执行权限
chown 设置文件或目录的所有者或所有组属性。chown 【参数】 所有者:所有组 文件或目录
-R //递归操作 -f //忽略错误
例:chown linuxprobe:root test 把test所有者改为linuxprobe,所有组为root
如果rwxrwxrwx后面的s或者t是小写则代表原先有权限,大写就代表原先没有权限
以上t代表其他用户原先拥有执行权限
5.4:文件的隐藏属性
chattr 设置文件的隐藏属性。chattr 【参数】 文件,若想加隐藏参数,直接 “+参数” ,去掉隐藏权限 “-参数” 即可。
i //无法对文件进行修改,仅能修改子文件,不能创建和删除 a //仅允许补充(追加)内容,无法覆盖和删除
S //文件变更后立即同步硬盘 s //彻底从硬盘删除不可恢复
A //不再修改最后访问时间 b //不再修改存取时间
D //检查压缩文件中的错误 d //dump备份时忽略本文件
c //默认将文件或目录进行压缩 u //当删除时依然保留硬盘数据,方便以后恢复
t //让文件系统支持尾部合并 X // 可直接访问压缩文件中的内容
lsattr 用于显示文件的隐藏权限。lsattr 【参数】 文件
a // 显示所有的文件和目录 l //显示隐藏属性的全称,默认显示简称一个字母
R //递归处理 d //若目标为目录,请加此参数
5.5:文件访问控制列表
一般权限,特殊权限,隐藏权限对所有用户有效,所以引入针某一用户或用户组设置权限的ACL
setfacl 管理设置文件的ACL规则 setfacl 【参数】 文件
-R //目录递归处理 -m // 针对普通文件
-b //删除ACL规则参数
u是对用户的指定,g是对组的指定
例:setfacl -Rm u:linuxprobe:rwx /root 让用户linuxprobe对/root有rwx权限
setfacl -Rm g:linuxprobe:rwx /root 让用户组linuxprobe的用户对/root具有rwx权限
getfacl 用来查看ACL信息 。 getfacl 文件名称
最后的(.)变成(+)代表有facl权限
5.6:su命令与sudo服务
su命令可以解决切换用户身份的需求,使得当前用户在不退出登录的情况下,顺畅地切换到其他用户。
例:su - linuxprobe
su命令与用户名之间有个减号(-),是完全切换到新的用户,环境变量信息也变更为新用户的相应信息,强烈建议在切换用户身份时添加这个减号(-)。
root用户切换其他用户不用验证,其他用户切换到root用户需要验证
su命令会暴露root密码,所以引入sudo
sudo 给普通用户提供额外的权限来完成原本root管理员才能完成的任务。sudo 【参数】 命令
-h //列出帮助信息 -l //列出当前用户可执行的命令
-u 用户名或UID值 // 以指定的用户身份执行命令 -b //在后台执行指定的命令
-k //清空密码的有效时间,下次执行sudo时需要再次进行密码验证
-p //更改询问密码的提示语
sudo的功能:
1、限制用户执行指定的命令:
2、记录用户执行的每一条命令;
3、配置文件(/etc/sudoers)提供集中的用户管理、权限与主机等参数;
4、验证密码的后5分钟内(默认值)无须再让用户再次验证密码。
vim /etc/sudoers sudo配置文件,但有错不会提醒,建议使用visudo
谁可使用 允许的主机 = (以谁的身份) 可执行的命令列表
例:linuxprobe ALL=(ALL) /usr/bin/cat
第六章
6.1一切从“/”开始(FHS结构)
linux中的一切文件都是从“根(/)”开始的
linu中的常见目录:
/boot //开机所需文件—内核、开机菜单以及所需配置文件等
*/dev //以文件形式存放任何设备与接口
*/etc //配置文件
/home //普通用户家目录
/bin //存放单用户模式下还可以操作的命令
/lib //开机时用到的函数库,以及/bin与/sbin下面的命令要调用的函数
/sbin //开机过程中需要的命令
*/media //用于挂载设备文件的目录
/opt //放置第三方的软件
*/root //系统管理员的家目录
/srv //一些网络服务的数据文件目录
/tmp //任何人均可使用的“共享”临时目录
/proc // 虚拟文件系统,例如系统内核、进程、外部设备及网络状态等(只是运行状态,不是真实的数据)
/usr/local //用户自行安装的软件
/usr/sbin //Linux系统开机时不会使用到的软件/命令/脚本
/usr/share //帮助与说明文件,也可放置共享文件
/var //主要存放经常变化的文件,如日志
/lost+found // 当文件系统发生错误时,将一些丢失的文件片段存放在这里
上述加星号的新手需优先记住。
bin或sbin都是保存程序文件的目录
绝对路径:是从根目录(/)开始的目录或文件
相对路径:是相对于当前路径的写法
6.2、物理设备的命名规则
IDE设备 /dev/hd[a-d] //已经很少见
SCSI/SATA/U盘 /dev/sd[a-p] //常见的设备
软驱 /dev/fd[0-1]
打印机 /dev/lp[0-15]
光驱 /dev/cdrom //光驱一般以/dev/sr0,/dev/sr1......命名
鼠标 /dev/mouse
磁带机 /dev/st0或/dev/ht0
常见的 /dev/sd 开头设备
由a-p来代表16块不同的硬盘,默认从a开始,由内核的识别顺序来决定,识别的第一块为/dev/sda,第二块/dev/sdb ......
主分区或扩展分区编号从1开始至4结束
逻辑分区从5开始
分区编号只是编号,不是指第几个分区,例如/dev/sdb3 只是指第二块硬盘编号为3的主分区
在硬盘分区中,由于第一扇区字节容量问题(512字节),主引导记录(446字节),结束符(2字节),每个分区(16字节)
以上情况导致只能划分四个分区,实际中却可能需要超过的4个分区
为解决上述问题,需要最后16字节指向另外的分区,来实现划分多于4个分区。这就是扩展分区。
扩展分区不是确切的分区,可以说是一个指针,指向另外的分区,在扩展分区中可以划分逻辑分区。
例如:/dev/sdb8就是第二块硬盘中的逻辑分区
(借鉴请改动)
复习:第五章的权限,第六章的FHS目录结构
预习:预习第六章和第七章7.1