-
文件的隐藏属性
chattr +权限 文件 设置隐藏权限
chattr -权限 文件 取消隐藏权限
lsattr 文件 查看隐藏权限
chattr命令中的参数及其作用
参数 | 作用 |
i | 无法对文件进行修改;若对目录设置了该参数,则仅能修改其中的子文件内容而不能新建或删除文件 |
a | 仅允许补充(追加)内容,无法覆盖/删除内容(Append Only) |
S | 文件内容在变更后立即同步到硬盘(sync) |
s | 彻底从硬盘中删除,不可恢复(用0填充原文件所在硬盘区域) |
A | 不再修改这个文件或目录的最后访问时间(atime) |
b | 不再修改文件或目录的存取时间 |
D | 检查压缩文件中的错误 |
d | 使用dump命令备份时忽略本文件/目录 |
c | 默认将文件或目录进行压缩 |
u | 当删除该文件后依然保留其在硬盘中的数据,方便日后恢复 |
t | 让文件系统支持尾部合并(tail-merging) |
x | 可以直接访问压缩文件中的内容 |
-
文件访问控制列表
可以针对单一用户或用户组、单一文件或目录来进行读/写/执行权限的控制。其中,针对目录文件需要使用-R递归参数;针对普通文件则使用-m参数;如果想要删除某个文件的ACL,则可以使用-b参数。
setfacl 设置FACL
getfacl 查看FACL
# setfacl -Rm u:zhangsan:rwx /root 设置单个用户允许rwx这个目录 (针对/root目录设置ACL用到-R)
# setfacl -m g:zhangsan:rw /etc/fstab 设置允许某个组的用户都可以读写/etc/fstab个文件
# setfacl -x g:zhangsan /etc/fstab 取消权限(单个:-x 全部:-b )
# getfacl -R /home > backup.acl 备份FACL
# setfacl --restore backup.acl 恢复FACL
setfacl命令中的参数以及作用
参数 | 作用 |
-m | 修改权限 |
-M | 从文件中读取权限 |
-x | 删除某个权限 |
-b | 删除全部权限 |
-R | 递归子目录 |
-
su命令与sudo服务
su 用户名
su - 用户名 表示完全切换(包括环境变量)
sudo命令 用于给普通用户提供额外的权限,语法格式为:“ sudo [参数] 用户名”。
sudo命令中的可用参数以及作用
参数 | 作用 |
-h | 列出帮助信息 |
-l | 列出当前用户可执行的命令 |
-u 用户名或UID值 | 以指定的用户身份执行命令 |
-k | 清空密码的有效时间,下次执行sudo时需要再次进行密码验证 |
-b | 在后台执行指定的命令 |
-p | 更改询问密码的提示语 |
visudo命令 用于编辑配置用户sudo权限文件,语法格式为:“ visudo [参数]”。
# visudo
99 ## Allow root to run any commands anywhere
100 root ALL=(ALL) ALL
101 linuxprobe ALL=(ALL) ALL
谁可以使用 允许使用的主机=(以谁的身份) 可执行命令的列表
谁可以使用:稍后要为哪位用户进行命令授权。
允许使用的主机:可以填写ALL代表不限制来源主机,亦可填写如192.168.10.0/24的网段限制来源地址,只有从允许网段登录时才能使用sudo命令。
以谁的身份:可以填写ALL代表系统最高权限,也可以是另外一位用户的名字。
可执行命令的列表:可以填写ALL代表不限制命令的列表,亦可填写如/usr/bin/cat的文件名称来限制命令列表,多个命令文件之间用逗号(,)间隔。
可以添加NOPASSWD参数,使得用户下次再执行sudo命令时就不用密码验证啦~
101 linuxprobe ALL=(ALL) NOPASSWD:/usr/bin/cat,/usr/sbin/reboot
- Linux系统存储结构
一切从“/”开始
Linux系统中常见的目录名称以及相应内容
目录名称 | 应放置文件的内容 |
/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 | 当文件系统发生错误时,将一些丢失的文件片段存放在这里 |
-
物理设备的命名规则
常见的硬件设备及其文件名称
硬件设备 | 文件名称 |
IDE设备 | /dev/hd[a-d] |
SCSI/SATA/U盘 | /dev/sd[a-z] |
virtio设备 | /dev/vd[a-z] |
软驱 | /dev/fd[0-1] |
打印机 | /dev/lp[0-15] |
光驱 | /dev/cdrom |
鼠标 | /dev/mouse |
磁带机 | /dev/st0或/dev/ht0 |
主分区或扩展分区的编号从1开始,到4结束;
逻辑分区从编号5开始。
其中:“/dev/sda5”表示的就是“这是系统中第一块被识别到的硬件设备中分区编号为5的逻辑分区的设备文件”
第一个扇区来讲,主引导记录需要占用446字节,分区表为64字节,结束符占用2字节;其中分区表中每记录一个分区信息就需要16字节,这样一来最多只有4个分区信息可以写到第一个扇区中,这4个分区就是4个主分区。第一个扇区中的数据信息如图
于是为了解决分区个数不够的问题,可以将第一个扇区的分区表中16字节(原本要写入主分区信息)的空间(称之为扩展分区)拿出来指向另外一个分区。也就是说,扩展分区其实并不是一个真正的分区,而更像是一个占用16字节分区表空间的指针—一个指向另外一个分区的指针。这样一来,用户一般会选择使用3个主分区加1个扩展分区的方法,然后在扩展分区中创建出数个逻辑分区,从而来满足多分区(大于4个)的需求。当然,就目前来讲大家只要明白为什么主分区不能超过4个就足够了。
- 书本笔记截图