文件系统(inode)
将inode记录block号码的区域定义为12个直接,1个间接,1个双间接和1个三间接。
直接就是这12个直接指向block号码的对照,这12个记录可以直接取得block号码。所以可以存储12*1K = 12K,共12条记录
间接就是再拿一个block来当作记录block号码的记录区,如果文件太大的时,就会使用间接的block来记录编号。
每条block号码的记录会花费4bytes,因此1k的大小能记录256条记录(256*1K = 256K)
双间接就是当文件持续长大时,第一个block仅再指出下一个记录编号的block在哪里,实际记录的在第二个block中。
第一层block会指定256个第二层,每个第二层可以指定256个号码(256*256*1K = 256^2 K)
三间接就是利用第三层block来记录编号
256*256*256*1K = 256^3 K
总额:12+256+256^2+256^3 K= 16 GB
Superblock是记录挣个文件系统相关信息的地方。
使用dumpe2fs [-bh] 设备文件名(-b:列出保留为坏道的部分;-h:列出superblock的数据,不会列出其他的区段信息),来查询与superblock的信息
df :这个可以调出目前挂载的设备
实际查看root目录内的文件所占用的inode号码时,使用ls -i(ls -li)参数来处理
显示自己的LINUX支持的文件系统有那些: ls -l /lib/modules/$ (uname -r)/kernel/fs
系统目前已经加载到内存中支持的文件系统则有: cat /proc/filesystems
文件系统的简单操作:df,du
df:列出文件系统的整体磁盘使用量
du:评估文件系统的磁盘使用量(常用于评估目录所占容量)
区别:du会直接到文件
df [-ahikHTm] [目录或文件名]
-a:列出所有的文件系统,包括系统特有的/proc等文件系统
-k:以KB的容量显示各文件系统
-m:以MB的容量显示各文件系统
-h:以人们较易阅读的GB、MB、KB等格式自行显示
-H:以M=1000K替代M=1024K的进位方式
-T:连同该分区的文件系统名称一起列出
-i:不用硬盘容量,以inode的数量显示
du [-ahskm] 文件或目录名称
-a:列出所有的文件与目录容量,因为默认仅统计目录下面的文件量而已
-h:以人们叫容易读的容量格式(G/M)显示
-s:列出总容量而已
-S:不包括目录下的总计
-k:以KB列出容量显示
-m:以MB列出容量显示
连接文件:ln
ln [-sf] 源文件 目标文件
-s:ruguo不加任何参数就进行连接,那么就是hard link,至于-s就是symbolic link,至于-s就是symbolic
-f:如果目标文件存在时,就将目标文件直接删除后再创建
注意:hard link只是再某个目录下新建一个文件名连接到某inode号码的关联记录而已,不能跨文件系统,不能链接到目录
删除磁盘分区:
1.fdisk/dev/hdc:新进入fdisk界面
2.p:先看下分区的信息,假设要删掉/dev/hdc1
3.d:选择一个分区,这里选1
4.w(or)q:保存离开或直接离开
磁盘格式化:
mkfs [-t 文件系统格式] 设备文件名
-t:可以直接接文件系统格式。如ext3,ext2,vfat等(系统有支持才会生效)
例:将/dev/hdc6格式化为window可读的vfat格式
mkfs -tvfat/dev/hdc6
mke2fs [-b block大小] [-i block的大小] [-L 卷标] [-cj] 设备
-b:可以设置每个block的大小,目前支持1024,2048,4096bytes三种
-i:多少容量给予一个inode呢
-c:检查磁盘错误,仅下达一个-c,会进行快速读取测试;如果下达两次-c -c,会测试读写(read-write)。
-L:后面接卷标名称(label),这个label时又用的
-j:本来mke2fs是EXT2,加上-j后,主动加入journal而成为EXT3
磁盘检验:fsck,badblocks
fsck [-t 文件系统] [-ACay] 设备名称
badblocks -[svw] 设备名称
磁盘的挂载与卸载
mount,unmount
将inode记录block号码的区域定义为12个直接,1个间接,1个双间接和1个三间接。
直接就是这12个直接指向block号码的对照,这12个记录可以直接取得block号码。所以可以存储12*1K = 12K,共12条记录
间接就是再拿一个block来当作记录block号码的记录区,如果文件太大的时,就会使用间接的block来记录编号。
每条block号码的记录会花费4bytes,因此1k的大小能记录256条记录(256*1K = 256K)
双间接就是当文件持续长大时,第一个block仅再指出下一个记录编号的block在哪里,实际记录的在第二个block中。
第一层block会指定256个第二层,每个第二层可以指定256个号码(256*256*1K = 256^2 K)
三间接就是利用第三层block来记录编号
256*256*256*1K = 256^3 K
总额:12+256+256^2+256^3 K= 16 GB
Superblock是记录挣个文件系统相关信息的地方。
使用dumpe2fs [-bh] 设备文件名(-b:列出保留为坏道的部分;-h:列出superblock的数据,不会列出其他的区段信息),来查询与superblock的信息
df :这个可以调出目前挂载的设备
实际查看root目录内的文件所占用的inode号码时,使用ls -i(ls -li)参数来处理
显示自己的LINUX支持的文件系统有那些: ls -l /lib/modules/$ (uname -r)/kernel/fs
系统目前已经加载到内存中支持的文件系统则有: cat /proc/filesystems
文件系统的简单操作:df,du
df:列出文件系统的整体磁盘使用量
du:评估文件系统的磁盘使用量(常用于评估目录所占容量)
区别:du会直接到文件
df [-ahikHTm] [目录或文件名]
-a:列出所有的文件系统,包括系统特有的/proc等文件系统
-k:以KB的容量显示各文件系统
-m:以MB的容量显示各文件系统
-h:以人们较易阅读的GB、MB、KB等格式自行显示
-H:以M=1000K替代M=1024K的进位方式
-T:连同该分区的文件系统名称一起列出
-i:不用硬盘容量,以inode的数量显示
du [-ahskm] 文件或目录名称
-a:列出所有的文件与目录容量,因为默认仅统计目录下面的文件量而已
-h:以人们叫容易读的容量格式(G/M)显示
-s:列出总容量而已
-S:不包括目录下的总计
-k:以KB列出容量显示
-m:以MB列出容量显示
连接文件:ln
ln [-sf] 源文件 目标文件
-s:ruguo不加任何参数就进行连接,那么就是hard link,至于-s就是symbolic link,至于-s就是symbolic
-f:如果目标文件存在时,就将目标文件直接删除后再创建
注意:hard link只是再某个目录下新建一个文件名连接到某inode号码的关联记录而已,不能跨文件系统,不能链接到目录
删除磁盘分区:
1.fdisk/dev/hdc:新进入fdisk界面
2.p:先看下分区的信息,假设要删掉/dev/hdc1
3.d:选择一个分区,这里选1
4.w(or)q:保存离开或直接离开
磁盘格式化:
mkfs [-t 文件系统格式] 设备文件名
-t:可以直接接文件系统格式。如ext3,ext2,vfat等(系统有支持才会生效)
例:将/dev/hdc6格式化为window可读的vfat格式
mkfs -tvfat/dev/hdc6
mke2fs [-b block大小] [-i block的大小] [-L 卷标] [-cj] 设备
-b:可以设置每个block的大小,目前支持1024,2048,4096bytes三种
-i:多少容量给予一个inode呢
-c:检查磁盘错误,仅下达一个-c,会进行快速读取测试;如果下达两次-c -c,会测试读写(read-write)。
-L:后面接卷标名称(label),这个label时又用的
-j:本来mke2fs是EXT2,加上-j后,主动加入journal而成为EXT3
磁盘检验:fsck,badblocks
fsck [-t 文件系统] [-ACay] 设备名称
badblocks -[svw] 设备名称
磁盘的挂载与卸载
mount,unmount