文件系统操作系统通过文件系统管理文件及数据,磁盘或分区需要创建文件系统后才能够为操作系统使用格式化:创建文件系统的过程裸设备(raw):没有文件系统的设备常见文件系统:fat32, NTFS(Wind
文件系统
操作系统通过文件系统管理文件及数据,磁盘或分区需要创建文件系统后才能够为操作系统使用
格式化:创建文件系统的过程
- 裸设备(raw):没有文件系统的设备
- 常见文件系统:fat32, NTFS(Windows), ext2, ext3(Linux), ext4(Linux), xfs, HFS
- 文件系统区别:日志,支持的分区大小,支持的单个文件大小,性能
MKE2FS
创建文件系统
mke2fs -t ext4/ /dev/sdb?
- b blocksize 指定文件系统块(每次读取文件的最小大小)大小
- c 建立文件系统时检查坏损块
- L label 指定卷标
- j 建立文件系统日志(ext3, ext4默认带日志)
MKFS
较简单,支持参数较少
dumpe2fs
查看分区的文件系统详细信息
JOURNAL
带日志的文件系统(ext3, ext4),在出错时可以进行恢复
两阶段提交
- 文件系统将准备执行的事务的具体内容写入日志
- 文件系统进行操作
- 操作成功后,将事务的具体内容从日志中删除
当事务执行出现意外时,可以通过日志进行恢复操作,丧失部分性能
E2LABEL
为文件系统添加标签
- e2label /dev/sda2 显示sda2的系统标签
- e2label /dev/sda linuxcast 添加标签到sda2
FSCK
检查并修复损坏的文件系统
fsck /dev/sdb1
- -y 不提示而直接进行修复
- -t 指定文件系统类型(fsck会默认自动判断,一般在文件系统损坏较严重时使用)
- 识别为文件的损坏数据,会被集中到lost+found目录
- 系统启动时会对磁盘进行fsck操作
挂载
创建好文件系统后,需要挂载到一个目录才能够使用;
window/mac 自动挂载linux需要手动进行挂载
/dev/sda3 ext4 --> /mnt
MOUNT
mount /dev/sda3 /mnt
- 不带参数 显示已挂载的文件系统
- t 指定文件系统类型
- o 指定挂载选项
- ro 只读
mount -o remount,ro /dev/sdb1 /mnt
- rw 读写形式挂载(默认)
- sync 不使用缓存,所有操作直接写入磁盘
- async 使用缓存(默认)
- noatime 每次访问文件时不更新文件的访问时间
- atime 更新文件的访问时间
- remount 重新挂载文件系统
- ro 只读
umount
卸载已挂载的文件系统,类似window的磁盘弹出
umount 文件系统/挂载点umount /dev/sdb1 == umount mnt/
报错信息
fuser -m /mnt
查看正在使用文件系统的进程lsof /mnt
查看正在被使用的文件
自动挂载
配置文件 /etc/fstab 自动挂载文件系统
fstab配饰格式
/dev/sdb1 /mnt ext4 defaults 0 0 需要挂载设备 挂载点 文件系统 挂载选项
- 挂载的设备可以使用LABEL进行标识,使用label代替/dev/sdb1(LABEL = LINUXCAST)
- mount -a 挂载所有fstab中定义的自动挂载项