磁盘存储和文件系统 概述
-
设备文件
- 磁盘设备的设备文件命名: /dev/DEV_FILE
- SCSI,SAS,IDE,USB:/dev/sd
- 虚拟磁盘:/dev/vd、/dev/xvd
- 硬盘存储术语:head 磁头 、track 磁道、cylinder 柱面、sector 扇区,512bytes
-
CHS 和 LBA
CHS
- 采用24bit位寻址
- 其中前十位表示cylinder,中间8位表示head,后面6位表示sector
- 最大寻址空间8G
LBA - LBA是一个整数,通过转换化成chs格式完成磁盘具体寻址
- 由于chs寻址方式的寻址空间在大概8G以内,所以在磁盘容量小于大概8G时,可以使用chs寻址方式或是lba寻址方式;在磁盘容量大于8G时,则只能使用lba寻址方式
-
分区
分区可以优化I/O性能,实现磁盘空间配额限制,提高修复速度,隔离系统和程序,安装多个os,采用不同文件系统。
两种分区方式: MBR,GPT- MBR:按柱面分区,使用32位表示扇区数,分区不超过2T
MBR分区中一块硬盘最多有四个主分区,也可以3主分区+1扩展(N个逻辑分区)
MBR分区结构:硬盘主引导记录MBR由主引导程序、出错信息数据区、分区表、结束标志字四个部分组成。 - GPT:使用128位UUID表示磁盘和分区,GPT分区表自动备份在头和尾两份,并有CRC校验位。
- MBR:按柱面分区,使用32位表示扇区数,分区不超过2T
-
管理分区
- lsdik:列出块设备
- fdisk:创建MBR分区
- gdisk:创建GPT分区
- parted:高级分区操作
- partprobe:重新设置内存中的内核分区表版本
子命令:
p:分区列表
t:更改分区类型
n:创建新分区
d:删除分区
v:校验分区
u:转换单位
w:保存并退出
q:不保存直接退出
- 同步分区表
cat /proc/partations 查看内核是否已经识别新的分区
文件系统
类型:
- Linux文件系统:
- ext2:适用于分区容量不大,更新不频繁的情况,例如/boot分区
- ext3:ext2的改进版,支持日志功能。
- ext4:ext系统的最新版,支持纳秒级时间戳、创建和使用巨型文件、最大1E的文件系统。
- 光盘:iso9660
- windows:FAT32,exFAT,NTFS
- UNIX:FFS(fast),UFS(unix),JSS2
- 网络文件系统:NFS,CIFS
- 集群文件系统:GFS2,OCFS2(oracle)
- 分布式文件系统:fastdfs,ceph,moonsefs,mogilefs,lustre
- RAW:未经处理或者未经格式化产生的文件系统
创建文件系统
mkfs:
- mkfs.FS_TYPE[ext4|xfs|btrfs|vfat] /dev/DEVICE
- mkfs -t FS_TYPE /dev/DEVICE
-L ‘LABEL‘ 设定卷标
创建ext文件系统
- mke2fs:ext系列文件系统专用管理工具
- -t {ext2|ext3|ext4} 指定文件系统类型
- -b {1024|2048|4096} 指定块大小
- -L ‘LABEL’ 设置卷标
- -j 相当于 -t ext3
- mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3
- -i # 为数据空间中每多少个字节创建一个inode;不应该小于block大小
- -N # 指定分区中创建多少个inode
- -I 一个inode记录占用的磁盘空间大小,128---4096
- -m # 默认5%,为管理人员预留空间占总空间的百分比
- -O FEATURE[,...] 启用指定特性
- -O ^FEATURE 关闭指定特性
- tune2fs :重新设定ext系列文件系统可调整参数的值
-l:查看指定文件系统的超级块信息;super block
-L ‘LABEL‘ 修改卷标
-m # 修改预留给管理员的空间百分比
-j 将ext2升级为ext3
-O 文件系统属性启用或禁用,-O^has_journal
-o 调整文件系统的默认挂载选项,-o ^acl
-U UUID 修改UUID号 - 文件系统检测和修复
fsck:
fsck.FS_TYPE
-p 自动修复错误
-r 交互式修复错误
FS_TYPE 一定要与分区上的文件类型相同 - e2fsck:ext系列文件专用的修复工具
-y 自动回答为yes
-f 强制修复 -
挂载
将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录作为其他文件访问入口的行为,叫做挂载。 卸载则是解除此关联关系的过程。
mount point :把设备关联挂载点
umount point: 卸载
挂载成功后,挂载点下原有文件在挂载完成后会被隐藏,所以挂载点目录一般为空。卸载时,可以用设备,也可以使用挂载点。- mount常用命令选项
-t vsftype 指定要挂载的设备上的文件系统类型
-r readonly,只读挂载
-w read and write, 读写挂载
-n 不更新/etc/mtab,mount不可见
-a 自动挂载所有支持自动挂载的设备(定义在了/etc/fstab文件
中,且挂载选项中有auto功能)
-L ‘LABEL‘ 以卷标指定挂载设备
-U ‘UUID‘ 以UUID指定要挂载的设备
-B, --bind 绑定目录到另一个目录上
cat /proc/mounts 查看内核追踪到的已挂载的所有设备
- mount常用命令选项
原文地址:https://blog.51cto.com/14233371/2372023
时间: 2024-10-08 15:54:49