Linux文件系统管理

 1 Linux文件系统管理:
 2     Linux文件系统: ext2, ext3, ext4, xfs, btrfs, reiserfs, jfs, swap
 3         swap: 交换分区,磁盘当内存用,
 4         光盘:iso9660
 5     Windows:fat32, ntfs
 6     Unix: FFS, UFS, JFS2
 7     网络文件系统:NFS, CIFS
 8     集群文件系统:GFS2, OCFS2
 9     分布式文件系统:ceph, 
10         moosefs, mogilefs, GlusterFS, Lustre
11 
12     根据其是否支持"journal"功能:
13         日志型文件系统: ext3, ext4, xfs, ...
14             便于非正常断电引起数据出现问题,通过日志就可以查看,否则还得一一对比才能知道
15         非日志型文件系统: ext2, vfat
16 
17     文件系统的组成部分:
18         内核中的模块:ext4, xfs, vfat(上述除了分布式)
19         用户空间的管理工具:mkfs.ext4, mkfs.xfs, mkfs.vfat
20 
21     Linux的虚拟文件系统:VFS-----站在各种文件系统之上,便于开发人员使用
22 
23     创建文件系统:
24             cat /proc/filesystems :支持的文件系统
25             lsmod:装载的模块
26         mkfs命令:
27             (1) # mkfs.FS_TYPE /dev/DEVICE
28                 ext4
29                 xfs
30                 btrfs
31                 vfat
32                 [root@localhost ~]# blkid  /dev/sdb5 # 查看随机号UUID,以及文件系统
33                 /dev/sdb5: UUID="1e26dfa3-50eb-4f28-bbfc-cc204c03ff3d" TYPE="ext4" 
34             (2) # mkfs -t FS_TYPE /dev/DEVICE
35 
36             -L 'LABEL': 设定卷标
37 
38         mke2fs:ext系列文件系统专用管理工具
39             -t {ext2|ext3|ext4}
40             -b {1024|2048|4096} # 2个扇区,4个 8个 一个扇区512字节
41             -L 'LABEL'
42             -j: 相当于 -t ext3
43                 mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3
44             -i #: 为数据空间中每多少个字节创建一个inode;此大小不应该小于block的大小;
45                     每一条元数据信息就是一个inode
46             -N #:为数据空间创建个多少个inode;
47             -m #: 为管理人员预留的空间占据的百分比;
48             -O FEATURE[,...]:启用指定特性
49                 -O ^FEATURE:关闭指定特性
50 
51         mkswap:创建交换分区
52             mkswap [options] device
53                 -L 'LABEL'
54 
55             前提:调整其分区的ID为82;
56 
57 
58     其它常用工具:
59 
60         blkid:块设备属性信息查看
61             blkid [OPTION]... [DEVICE]
62                 -U UUID: 根据指定的UUID来查找对应的设备
63                 -L LABEL:根据指定的LABEL来查找对应的设备
64 
65         e2label:管理ext系列文件系统的LABEL,也能设定或修改
66             # e2label DEVICE [LABEL]
67 
68         tune2fs:重新设定ext系列文件系统可调整参数的值
69             -l:查看指定文件系统超级块信息;super block
70             -L 'LABEL':修改卷标
71             -m #:修预留给管理员的空间百分比
72             -j: 将ext2升级为ext3
73             -O: 文件系统属性启用或禁用
74             -o: 调整文件系统的默认挂载选项
75             -U UUID: 修改UUID号;
76 
77         dumpe2fs:
78             -h:查看超级块信息
79             超级快:记录块的相关信息(要做备份)
80 
81     文件系统检测:
82         fsck: File System CheCk
83             fsck.FS_TYPE
84             fsck -t FS_TYPE
85                 -a: 自动修复错误
86                 -r: 交互式修复错误
87 
88                 Note: FS_TYPE一定要与分区上已有文件类型相同;
89 
90         e2fsck:ext系列文件专用的检测修复工具
91             -y:自动回答为yes; 
92             -f:强制修复;




注:如果格式化硬盘出现/dev/sdb5 is apparently in use by the system错误,证明sdb5在被dm管理,cat /proc/partation 有。
  解决方式:
[root@hpf-linux~]# dmsetup status
sdb3: 0 6313545 linear 
sdb2: 0 4209030 linear 
sdb1: 0 10506447 linear 
sdb5: 0 4208967 linear 
sdb4: 0 2 linear 
[root@hpf-linux~]# dmsetup remove_all
[root@hpf-linux~]# dmsetup status
No devices found






 

  1 文件系统管理:
  2 
  3     rootfs---> /sbin/init
  4     启动kernel /etc/grub.cfg   ————》 跟文件系统 
  5 
  6     将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件访问入口的行为称之为挂载;
  7 
  8     解除此关联关系的过程称之为卸载;
  9 
 10     把设备关联挂载点:Mount Point
 11         mount
 12 
 13     卸载时:可使用设备,也可以使用挂载点
 14         umount
 15 
 16     注意:挂载点下原有文件在挂载完成后会被临时隐藏;
 17 
 18     挂载方法:mount DEVICE MOUNT_POINT
 19         mount:通过查看/etc/mtab文件显示当前系统已挂载的所有设备
 20         mount [-fnrsvw] [-t vfstype] [-o options] device dir
 21             device:指明要挂载的设备;
 22                 (1) 设备文件:例如/dev/sda5
 23                 (2) 卷标:-L 'LABEL', 例如 -L 'MYDATA'
 24                 (3) UUID, -U 'UUID':例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'
 25                 (4) 伪文件系统名称:proc, sysfs, devtmpfs, configfs
 26             dir:挂载点
 27                 事先存在;建议使用空目录;
 28                 进程正在使用中的设备无法被卸载;
 29 
 30             常用命令选项:
 31                 -t vsftype:指定要挂载的设备上的文件系统类型;
 32                 -r: readonly,只读挂载;
 33                 -w: read and write, 读写挂载;
 34                 -n: 不更新/etc/mtab,(/etc/mtab,每一个文件系统的挂载和卸载都会跟新)mount 不带参数读的是这个
 35                 -a:自动挂载所有支持自动挂载的设备;(定义在了/etc/fstab文件中,且挂载选项中有“自动挂载”功能)
 36                 -L 'LABEL': 以卷标指定挂载设备;
 37                 -U 'UUID': 以UUID指定要挂载的设备;
 38                 -B, --bind: 绑定目录到另一个目录上;目录建立关联关系
 39 
 40             注意:真正查看内核追踪到的已挂载的所有设备:cat /proc/mounts
 41 
 42     *******        -o options:(挂载文件系统的选项) 文件系统挂载时启用的特性
 43                     async:异步模式;
 44                     sync:同步模式;
 45                     atime/noatime:包含目录和文件;
 46                     diratime/nodiratime:目录的访问时间戳
 47                     auto/noauto:是否支持自动挂载
 48                     exec/noexec:是否支持将文件系统上应用程序运行为进程
 49                     dev/nodev:是否支持在此文件系统上使用设备文件;
 50                     suid/nosuid:
 51                     remount:重新挂载
 52                     ro:
 53                     rw:
 54                     user/nouser:是否允许普通用户挂载此设备
 55                     acl:启用此文件系统上的acl功能
 56 
 57                     注意:上述选项可多个同时使用,彼此使用逗号分隔;
 58                           默认挂载选项:defaults
 59                                   rw, suid, dev, exec, auto, nouser, and async
 60 
 61     卸载命令:
 62         # umount DEVICE
 63         # umount MOUNT_POINT
 64 
 65         查看正在访问指定文件系统的进程:
 66             # fuser -v MOUNT_POINT
 67 
 68         终止所有在正访问指定的文件系统的进程:
 69             # fuser -km MOUNT_POINT
 70 
 71     挂载交换分区:
 72         启用:swapon
 73             swapon [OPTION]... [DEVICE]
 74                 -a:激活所有的交换分区;
 75                 -p PRIORITY:指定优先级;
 76         禁用:swapoff [OPTION]... [DEVICE]
 77 
 78     内存空间使用状态:
 79         free [OPTION]
 80             -m: 以MB为单位
 81             -g: 以GB为单位
 82 
 83 
 84                 [root@localhost ~]# free -m
 85                              total       used       free     shared    buffers     cached
 86                 Mem:          1990        776       1214          2         23        454
 87                 -/+ buffers/cache:        297       1693
 88                 Swap:         2047          0       2047
 89 
 90                 used中包含了buffers 和cached的
 91 
 92                 776-23-454 就是 - buffers/cache的意思
 93                 1214+23 + 454 就是 + buffers/cache的意思
 94 
 95     文件系统空间占用等信息的查看工具:
 96         df: 
 97             -h: human-readable
 98             -i:inodes instead of blocks
 99             -P: 以Posix兼容的格式输出; 不会换行,即便某一行很长
100 
101     查看某目录总体空间占用状态:
102         du:----ls -ldh /etc -->这只是目录本身大小,不包括子目录和文件大小,du就不一样了
103             du [OPTION]... DIR
104                 -h: human-readable
105                 -s: summary
 1 文件挂载的配置文件:/etc/fstab
 2 
 3     每行定义一个要挂载的文件系统;
 4 
 5         要挂载的设备或伪文件系统     挂载点     文件系统类型      挂载选项     转储频率      自检次序
 6 
 7             要挂载的设备或伪文件系统:
 8                 设备文件、LABEL(LABEL="")、UUID(UUID="")、伪文件系统名称(proc, sysfs)
 9 
10             挂载选项:
11                 defaults
12 
13             转储频率:
14                 0:不做备份
15                 1:每天转储
16                 2:每隔一天转储
17 
18             自检次序:
19                 0:不自检
20                 1:首先自检;一般只有rootfs才用1;
21                 ...

 

posted @ 2018-08-07 21:17  JerryZao  阅读(199)  评论(0编辑  收藏  举报