- 文件系统的功能
- 以块为单位的存储组织形式
- 要有索引, 方便查找
- 热点文件应该有缓存
- 可以以文件夹形式组织, 方便管理
- 在内存中维护数据结构, 保存哪些文件被哪些进程打开/使用
- 文件系统相关命令行
- 格式化, 组织成一定格式的文件系统; Windows→NTFS, Linux→ext3/ext4
- fdisk -l 查看分区
- mkfs.ext3/mkfs.ext4 /dev/... 进行格式化
- 可建立多个分区, 再分别以不同文件系统进行格式化
- fdisk /dev/... 打开交互式程序
- p 打印分区
- n 新建分区: p primary 建立主分区; e extended 建立扩展分区; 设置大小; w 执行分区修改
- 再执行 mkfs.ext* 进行格式化
- 挂载分区到某个目录, 才能正常访问
- mount /dev/... /目录
- umount /目录
- 查看文件类型 ls -l
- 第一个标识符: - 普通文件; d 文件夹; c 字符设备文件; b 块设备文件; s socket 文件; l 符号链接(软连接)
- 文件系统相关系统调用
- open 打开一个文件, 返回文件描述符 fd; 参数 O_CREAT 不存在就创建, O_RDWR 以读写方式打开, O_TRUNC 文件长度截断为 0; 返回成功写入字节数
- write 写数据, 参数 fd, 数据位置, 写入字节数; 返回成功写入字节数
- lseek 重新定位读写位置, 参数 fd, 位置, SEEK_SET
- read 读数据, 参数 fd, 存放位置, 读取字节数; 返回成功读取字节数
- close 关闭文件
- stat/lstat 通过文件名获取文件信息; fstat 通过 fd 获取文件信息
- opendir 打开一个目录, 生成一个目录流 DIR
- readdir 读取目录流的一个条目, 自动指向下一个条目
- closedir 关闭目录流
展开