10 Linux磁盘管理

设备的分类:

  • 块设备
  • 字符设备

10.1 磁盘设备的文件命名

  • IDE /dev/hd
  • SCSI,SATA,SAS,USB /dev/sd

10.2 机械式硬盘

磁道
每个盘片上被分为N个同心圆,每个同心圆就是一个磁盘。
柱面
相同编号的磁道
扇区
每个磁道512个字节

磁道越靠外的分区器读写速度越快,通常外面的划分为系统分区,第0磁道0扇区是被预留出来的,不属于任意的分区,称为MBR

10.3 MBR

前446字节:                 存储boot loader,引导加载器
64字节:                    存储分区表的,4个部分,每个16字节
2字节:                     结束标志55AA

10.4 磁盘分区管理命令

fdisk [DEVICE]

p           显示分区表
n           创建分区
d           删除分区
t           修改分区id
l           列出系统id
w           保存退出
q           不保存退出

10.5 LINUX文件系统

常用文件系统

普通文件系统              ext2,ext3,ext4,xfs,btrfs,reiserfs,jfs,swap
网络文件系统              nfs,smbfs,cifs
集群文件系统              gfs,ocfs
分布式文件系统            ceph,moosefs,mogilefs,glusterfs
光盘文件系统              iso9660

10.5.1 创建文件系统

mkfs

-t 指定文件系统
-L 指定卷标

mke2fs

-t 指定文件系统
-b 指定块大小
-L 指定卷标
-j 相当于-t ext3
-i 每多少字节创建一个inode
-N 直接指定inode个数
-m 设置预留的百分比,默认5
-O 指定分区特性

blkid

-L 查看指定的卷标
-U 查看指定的uid

e2label

修改卷标名字

tunefs

-l 查看指定文件系统的超级块信息
-j ext2–>ext3
-L 修改卷标
-m 修改预留百分比
-O 启用指定特性
-o 开启或或者关闭指定挂载选项
-U 修改UUID

10.5.2 文件系统监测

fsck

-t 指定类型
-a 自动修复错误
-r 交互式修复

e2fs

-y 对问题自动回答yes
-f 强制进行检查

10.5.3 超级块

超级块的作用是存储文件系统的元数据信息

10.6 文件系统的挂载

所谓的挂载文件系统就是将额外的分区和根文件系统上的某个目录建立关联的过程。

mount

-t 指定文件系统
-r 只读
-w 读写
-L 卷标
-U uuid
-a 自动挂载
-n 不更新mtab
-B 绑定到目录
-o 指定挂载选项

挂载详细选项

async/sync              同步异步问题
atime/noatime           是否更新atime
auto/noauto             是否自动挂载
/diratime/nodiratime    目录被访问,是否更新时间戳
/dev/nodev              是否支持使用设备
exec/noexec             是否执行二进制程序
suid/nosuid             是否支持suid
remount                 重新挂载
ro                      读
rw                      读写
user/nouser             是否运行普通用户挂载
acl                     是否支持acl

10.7 挂载交互分区

swapon

-a 激活所有的交互分区
-p 指定优先级

10.8 文件系统的卸载

umount即可完成卸载,有时候有访问的时候需要fuser -km配合使用

10.8 设备自动开机挂载

/etc/fstab一共6个部分,空格后者tab分割即可

  1. 挂载的设备
  2. 挂载点
  3. 文件系统类型
  4. 挂载选项
  5. 转储频率
  6. 自检次序

10.9 硬链接

一般情况下一个文件名和inode号码是一一对应的。多个文件名指向同一个inode就是硬链接。

ln 源文件 目标文件

10.10 软连接

软连接文件和源文件的inode是不同的, 软连接文件存储的是相对应源文件的路径。

ln -s 源文件 目标文件