一、随笔记录
1、
chattr +i a.txt
为a.txt文件添加隐藏属性i 添加之后root权限也无法直接删除a.txt文件
chattr -i a.txt
去除a.txt的隐藏属性后就可以正常删除
注:查看文件隐藏属性的方法:
lsattr
2、文件的特殊权限:SUID,SGID,SBIT
有些特殊的文件权限可能是:
drwxrwxrwt 1 root root 22984 Jan 7 2007 /usr/bin/password、
drwxrwxrws 1 root root 22984 Jan 7 2007 /usr/bin/password
原因:因为s与t这两个权限的意义与系统的账号(第14章)及系统的进程(process。第17章)较为相关,
SUID权限仅对二进制程序(binary program)有效
执行者对于该程序需要具有x的可执行权限
本权限仅在执行改程序的过程中(tun time)有效
执行者将具有改程序的所有者的权限
注:存在的意义:在Linux系统中,所有的账号密码都存放在 /etc/shadow这个文件中,这个文件的权限为
-r-------- 1 root root
,意思是这个文件仅有root可读且仅有root可以强制写入而已,既然root可以修改,那么自己的账号能否可以修改自己的密码呢? 答案是可以的,那这样就与上面所说的相冲突了,所以就有了SUID这个功能了。具体请查阅资料详细了解。
3、查看文件类型:file
如果想要知道某个文件的基本数据,例如是属于ASCII还是data文件,可以使用file命令来进行查看
[root@www ~]# file ~/ .bashrc
root/ .bashrc: ASCII text 《==告诉我们是 ASCII 的纯文本文件
二、命令与文件的查询
1、脚本文件名的查询
which -a 查找命令的存储文件位置,不同账号的查找结果可能不同。
2、常用的查找命令:find
用法:
find [path] [option] [option] [action]
find / -mtime 0 find /etc -newer /etc/passwd (寻找 /etc 下面的文件,如果文件的日期比 /etc/passwd新就列出来)
三、Linux 磁盘与文件系统管理
3.1、什么是EXT2文件系统?
3.1.1 硬盘组成与分区,整块磁盘的组成主要有:
~ 圆形的盘面 (主要记录数据的部分);
~ 机械手臂与机械手臂上的磁头(可读写盘面上的数据);
~ 主轴马达,可以转动盘片,让机械手臂的磁头在盘面上读写数据;
~ 扇区(Sector)为最小的的物理存储单位,每个扇区为512bytes;
~ 将扇区组成一个圆,那就是柱面(Cylinder),柱面是分区(partition)的最小单位;
~ 第一个扇区最重要,里面有硬盘主引导记录(Master boot record ,MBR)以及分区表(partition table),其中MBR占有446bytes,而partition table 则有64bytes;
~ /dev/sd[a-p][1-15]:为 SCSI,SATA,USB,Flash等接口的磁盘文件名;
~ /dev/hd[a-p][1-63]:为IDE接口的磁盘文件名;
注:一个可悲挂载的数据为一个文件系统而不是一个分区。
3.2 磁盘分区表
1、文件系统的最小单位:开始与结束柱面,也是分区的最小单位
注:问题1:为什么磁盘只能容纳四个分区?
答:
硬盘的第一扇区可以分成三个部分:第一部分MBR,需要占用446字节,第二部分DPT,需要占用64字节,这是因为一个分区表需要占用16字节,64/16=4,所以刚好能存放四个分区的 表,这就是为什么只能分四个分区。还有两个字节就用来存放结束标志(
两个字节AA和55幻数 用此来验证硬盘是否被分区过
);
如果还不是很理解,请参考: http://licoolxue.iteye.com/blog/607857这篇文章讲解的很详细。
*其实所谓的分区只是针对哪个64bytes的分区表进行设置而已。
*硬盘默认的分区表仅能写入四组分区信息
*这四组分区信息我们成为主(Primary)或扩展(extended)分区
*分区的最小单位为柱面(cylinder)
关于主分区、扩展分区与逻辑分区的特性我们可以作个简单的定义。
*主分区与扩展分区最多可以有四个(原因是硬盘的限制,参考如上内容)
*逻辑分区是由扩展分区持续切割出来的分区
*扩展分区最多只能有一个(原因是操作系统的显示导致的
)
*能够被格式化后作为数据访问的分区是主分区与逻辑分区,扩展分区无法格式化
*逻辑分区的数量依操作系统的不同而不同,在Linux系统中,lDE硬盘最多有59个逻辑分区(5号到63号,因为la前四号要留给主分区)
3.3 开机流程与主引导分区(MBR)
简单的说,整个开机流程到操作系统之前的动作应该是这样的:
1、BIOS:开机主动执行的韧体庙会认识第一个可开机的设备。
2、MBR:第一个可开机设备的第一个扇区内的主引导分区块,内含引导加载程序
3、引导加载程序(boot loader):一支可读取内核文件来执行的软件
boot loader的主要任务有下面的这些项目:
*提供菜单:用户可以选择不同的开机选项,这也是多重引导的重要功能。
*载入内核文件:直接指向可开机的程序区段来开始操作系统。
*转交其他loader:将引导加载功能转交给其他loader负责。
4、内核文件:开始操作系统的功能
3.4 Linux 安装模式下,磁盘分区的选择(极重要)
目录树结构(directory tree)
所谓的目录树结构(directory tree)就是以根目录为主,然后向下呈现分支状的目录结构的一种文件结构,所以,整个目录树结构最重要的就是那个根目录( root directory ),这个根目录的标识方法为一条斜线“/”,所有的文件都与目录树有关系。
文件系统与目录树的关系(挂载)
*所谓的挂载就是利用一个目录当成进入点,将磁盘的分区的数据防止在该目录下,也就是说:进去该目录就可以读取该分区的内容数据了,这个操作我们称之为“挂载”,那个进入点的目录我们称之为“挂载点”。