文件系统管理

1.文件系统简介

(1)文件系统是操作系统用于明确存储设备或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件结构称为文件管理系统,简称文件系统
(2)从系统角度来看,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,安全控制,日志,压缩,加密等
(3)支持的文件系统:/lib/modules/`uname –r`/kernel/fs

2.文件系统类型

(1) Linux文件系统:ext2(Extended file system), ext3,ext4, xfs(SGI),  
                  btrfs(Oracle), reiserfs, jfs(AIX), swap              
(2) 光盘:iso9660
(3) Windows:FAT32, exFAT,NTFS
(4) Unix: FFS(fast), UFS(unix), JFS2
(5) 网络文件系统:NFS, CIFS
(6) 集群文件系统:GFS2, OCFS2(oracle)
(7) 分布式文件系统: fastdfs,ceph, moosefs, mogilefs,glusterfs, Lustre
(8) RAW:未经处理或者未经格式化产生的文件系统

3.系统的配置文件/etc/fstab

系统启动时,会自动挂载此文件中定义的每个文件系统
mount -a :挂载/etc/fstab 文件中所有定义的文件系统

4.文件系统分类

(1)根据其是否支持"journal"功能:
日志型文件系统: ext3, ext4, xfs, ...
非日志型文件系统: ext2, vfat
(2) 文件系统的组成部分:
内核中的模块:ext4, xfs, vfat
用户空间的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat
(3)Linux的虚拟文件系统:VFS
(4)查前支持的文件系统:cat /proc/filesystems

5.创建文件系统

  • mkfs命令:

(1) mkfs.FS_TYPE /dev/DEVICE(不能是扩展分区)
mkfs -t 文件类型=mkfs.ext或xfs类型

ext4
xfs
btrfs
vfat

(2) mkfs -t FS_TYPE /dev/DEVICE

-L 'LABEL': 设定卷标
  • 创建ext文件系统

(1) mke2fs:ext系列文件系统专用管理工具

-t {ext2|ext3|ext4}(ext2没有日志功能,ext3有 )
-b {1024|2048|4096}:指定块大小,默认为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:关闭指定特性
-a 自动修复
-t FSTYPE:指定文件类型

文件系统标签

 指向设备的另一种方法
 与设备无关

6. blkid:块设备属性信息查看

blkid [OPTION]... [DEVICE]

-U UUID: 根据指定的UUID来查找对应的设备
-L LABEL:根据指定的LABEL来查找对应的设备
Paste_Image.png

7. e2label:管理ext系列文件系统LABEL

# e2label DEVICE [LABEL]

8. findfs :查找分区

# findfs [options] LABEL=

9. tune2fs:重新设定ext系列文件系统可调整参数的值

-l:查看指定文件系统超级块信息;super block
-L 'LABEL':修改卷标
-m #:修预留给管理员的空间百分比
-j: 将ext2升级为ext3
-O: 文件系统属性启用或禁用, –O ^has_journal
-o: 调整文件系统的默认挂载选项,–o ^acl
-U UUID: 修改UUID号
Paste_Image.png

10. dumpe2fs:块分组管理,32768块

-h:查看超级块信息,不显示分组信息

11.文件系统检测和修复

 常发生于死机或者非正常关机之后
 挂载为文件系统标记为“no clean”
 注意:一定不要在挂载状态下修复
fsck: File System Check检查并修复Linux文件系统

# fsck.FS_TYPE
# fsck -t FS_TYPE
-p: 自动修复错误
-r: 交互式修复错误
FS_TYPE一定要与分区上已经文件类型相同

12. e2fsck:ext系列文件专用的检测修复工具

-y:自动回答为yes
-f:强制修复

13.挂载mount

(1) 挂载:将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件访问入口的行为(就是像卷标或者快捷方式一样)
(2) 卸载:为解除此关联关系的过程
(3)挂载点下原有文件在挂载完成后会被临时隐藏(成为垃圾文件)
(4) 挂载点目录一般为空,如果不为空原有的文件将被隐藏
  • 用mount命令挂载文件系统
 挂载方法:mount DEVICE MOUNT_POINT
 mount:通过查看/etc/mtab文件显示当前已挂载的所有设备
 mount [-fnrsvw] [-t vfstype] [-o options] device dir
device:指明要挂载的设备;
(1) 设备文件:例如/dev/sda5
(2) 卷标:-L 'LABEL', 例如 -L 'MYDATA'
(3) UUID, -U 'UUID':例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'
(4) 伪文件系统名称:proc, sysfs, devtmpfs, configfs
dir:挂载点事先存在;建议使用空目录
     进程正在使用中的设备无法被卸载
  • mount常用命令选项
 -t vsftype:指定要挂载的设备上的文件系统类型
 -ro: readonly,只读挂载
 -rw: read and write, 读写挂载
 -n: 不更新/etc/mtab,mount不可见
 -a:自动挂载所有支持自动挂载的设备(定义在了/etc/fstab文件中,且挂载选项中有auto功能)
 -L 'LABEL': 以卷标指定挂载设备
 -U 'UUID': 以UUID指定要挂载的设备
 -B, --bind: 绑定目录到另一个目录上
 查看内核追踪到的已挂载的所有设备cat /proc/mounts
 -o options:(挂载文件系统的选项),多个选项使用逗号分隔
      async:异步模式
      sync:同步模式,内存更改时,同时写磁盘
      atime/noatime:包含目录和文件(noatime可以取消时间更新,实现网络性能的优化)
      diratime/nodiratime:目录的访问时间戳
      auto/noauto:是否支持自动挂载,是否支持-a选项
      exec/noexec:是否支持将文件系统上运行应用程序
      dev/nodev:是否支持在此文件系统上使用设备文件
      suid/nosuid:是否支持suid和sgid权限
      remount:重新挂载
      ro:只读
      rw:读写
      user/nouser:是否允许普通用户挂载此设备,/etc/fstab使用
      acl:启用此文件系统上的acl功能
      loop: 使用loop设备
 defaults:相当于rw, nosuid, dev, exec, auto, nouser, async
  • 永久挂载
    写入文件/etc/fstab

14.卸载命令

(1)查看挂载情况

# findmnt MOUNT_POINT|device

(2)查看正在访问指定文件系统的进程

# lsof MOUNT_POINT
# fuser -v MOUNT_POINT

(3)终止所有在正访问指定的文件系统的进程

# fuser -km MOUNT_POINT

(4)卸载

# umount DEVICE
# umount MOUNT_POINT

15.挂载点和/etc/fstab

 配置文件系统体系
 被mount、fsck和其它程序使用
 系统重启时保留文件系统体系
 可以在设备栏使用文件系统卷标
 使用mount -a 命令挂载/etc/fstab中的所有文件系统

(1)文件挂载配置文件

 /etc/fstab每行定义一个要挂载的文件系统
 要挂载的设备或伪文件系统
     设备文件
     LABEL:LABEL=""
     UUID:UUID=""
     伪文件系统名称:proc, sysfs

(2)挂载点

 文件系统类型
 挂载选项:defaults
 转储频率:0:不做备份 1:每天转储 2:每隔一天转储
 自检次序: 0:不自检
1:首先自检;一般只有rootfs才用1

16.swap分区

**(1)swap简介 **

 交换分区是系统RAM的补充
 基本设置包括:
• 创建交换分区或者文件
• 使用mkswap写入特殊签名
• 在/etc/fstab文件中添加适当的条目
• 使用swapon -a 激活交换空间

(2)挂载交换分区(和内存交换数据)
创建交换分区:

#mkswap /dev/sda

启用:swapon

swapon [OPTION]... [DEVICE]
-a:激活所有的交换分区;
-p PRIORITY:指定优先级
/etc/fstab:pri=value

禁用:swapoff [OPTION]... [DEVICE]

SWAP的优先级

(1) 可以指定swap分区0到32767的优先级,值越大优先级越高
(2) 如果用户没有指定,那么核心会自动给swap指定一个优先级
,这个优先级从-1开始,每加入一个新的没有用户指定优先
级的swap,会给这个优先级减一
(3) 先添加的swap的缺省优先级比较高,除非用户自己指定一个
优先级,而用户指定的优先级(是正数)永远高于核心缺省指定
的优先级(是负数)
(4) 优化性能:分布存放,高性能磁盘存放

16.移动介质

 挂载点通常在/media 或/mnt下

17.使用光盘

 在图形环境下自动启动挂载/run/media//

(1)创建ISO文件

cp /dev/cdrom /root/centos7.iso
mkisofs -r -o /root/etc.iso /etc

(2)刻录光盘

wodim –v –eject centos.iso

(3)挂载USB介质

1.查看USB设备是否识别
• lsusb
2. 被内核探测为SCSI设备
• /dev/sdaX、/dev/sdbX、或类似的设备文件
3.在图形环境中自动挂载
• 图标在[计算机]窗口中创建
• 挂载在/run/media//

18. 内存空间使用状态:free

free [OPTION]

-m: 以MB为单位
-g: 以GB为单位

19.文件系统空间占用等信息的查看工具:df

df [OPTION]... [FILE]...

-H 以1000为单位
-T 文件系统类型
-h: human-readable
-i:inodes instead of blocks
-P: 以Posix兼容的格式输出

20. 查看某目录总体空间占用状态:du

du [OPTION]... DIR

-h: human-readable(人类易读的模式 )
-s: summary(汇总)
文件系统管理_第1张图片
Paste_Image.png

你可能感兴趣的:(文件系统管理)