磁盘分区
进行硬盘分区的时候,最小都是以磁柱为单位进行分割的,那么分割完成之后自然就是格式化(format),在 Linux里面进行格式化的时候必须要考虑到Block与inode的信息。
Block(块)是磁盘可以存取的最小单位,是由数个扇区所组成的,所以块的大小通常为n*512 bytes。
Block
记录文件内容数据的地方
innode
是记录文件属性、及该文件放置在哪个块上
文件读取过程
1. 当Linux系统要找到某个文件时,他会先去搜寻inode table找到这个文件的属性及数据放置的地方,然后再去找数据存放的Block进而将数据取出利用。
2. inode数目在一开始格式化时就会被设定好,他的设定方式通常是利用 (硬盘大小/一个容量 ),这个容量至少应该比Block要大一些较佳。
3. 例如块设定为4K,那么inode可以订为8K左右。所以,一块1GB的硬盘,如果以8K来规划他的inode表的话,他的inode就会有 131072 个。
inode的大小为128bytes
4. 分区被格式化为一个文件系统之后,基本上他一定会有 inode table与data area两个区块
硬链接和软链接
硬链接共享i节点,和平常的文件一样,只有当所有关联的同一个inode号的文件都被删除,源文件才会被删除;软链接不共享i节点,可以类比与快捷方式,删除快捷方式不影响源文件。
硬链接不可以跨文件系统,软链接可以。
硬链接不可以链接不存在的文件,软链接可以。
类似于windows的快捷方式
ln -s xxxx xxx
区别
ln input input.hard
rm -rf input
cat input.hard(innode可找到,故可找到文件)
ln -s input input.soft
rm -rf input
cat input.soft(innode找不到,故找不到数据文件)