文件系统(File system) :
-
文件系统概要
-
文件系统的分类
-
文件系统的管理工具
mkfs btrfs ext xfs
-
SWAP
-
LVM
文件系统概要:
文件系统是什么?
文件系统是位于内核中功能中,用来区分与明确存储设备上文件的方法和数据结构。
文件系统有什么功能?
管理和调度文件的存储空间,提供文件的逻辑结构,存储方式,实现文件的控制操作。
文件系统的分类:
根据操作系统:
Linux:ext2 ext3 ext4 xfs btrfs reiserfs jfs swap
swap:交换分区
iso9660:光盘
Unix : FFS UFS JFS2
Windows:fat32 ntfs
Network File System : NFS CIFS
集群FS:GFS2 OCFS2
分布式文件系统:ceph moosefs mogilefs Glusterfs lustre
根据日志型文件系统:
日志型文件系统:ext3 ext4 xfs
非日志型文件系统:ext2 vfat
日志型与非日志的对比:
对比非日志型文件系统的两个分区,元数据区,数据区,日志型文件系统还多了一个日志区,当数据要写入时,会先将文件的元数据写入日志区,然后块数据写入完成后再将日志区的原文件读出写入元数据区,这样如果在写入数据时,计算机突然断电,数据没有写完,就不用去遍历磁盘的所有块,而只需检查日志区所记载的元数据的块就可以检查与修复,大大缩短了磁盘修复的速度,并增强了安全,但是日志型文件系统每一次写入都会多一次的IO操作,会对系统性能有微微的影响。
文件系统管理:
mkfs : make file system
1.mkfs.TYPE [option]
-b # : block size
-s # : sector size
-L 'label' : set LABEL
2.mkfs [option] DEVICE
-t : type
btrfs manager tool
create btrfs
mkfs.btrfs [option] <DEVICE>…
-d : 指定数据的格式 raid0 raid1 raid5 raid6 raid10 single
-m ; 指定元数据的格式 raid0 raid1 raid5 raid6 raid10 single dup
-L LABEL : set label
btrfs <command> <command>
btrfs filesystem [command]
df <PATH> :根据mount point查看btrfs空间信息
show [ –mounted | –all-decices ] <path | uuid | device | label> :查看btrfs信息
resize < max | +# | -# > /PATH :重设fs空间大小,如+5G -3M等。max代表最大值。
btrfs device [command]
add [option] <Device> </PATH> :添加一块磁盘设备进一个btrfs。
-f : fouce
delete <Device>| </PATH> : 删除一个磁盘设备。
stats <PATH>|<Device>
btrfs balance [command]
start [option] <path> : 启动fs空间均衡。
-mconvert = <RAID0 | RAID1 | RAID5 | RAID6 | RAID10 | … | single | dup > :修改元数据组织机制。
-dconvert = <RAID0 | RAID1 | RAID5 | RAID6 | RAID10 | … |single> :修改数据组织机制。
pause <path> : 暂停均衡
cancel <path> : 取消均衡
resume <path>: 继续均衡
status <path>:查看正在均衡的进度
btrfs subvolume [command]
create <name> :创建一个子卷
delete <subvolume path>… : 删除一个子卷
list [option] <path> :列出子卷信息
show <path> :输出子卷详细信息
snapshot <source> <快照PATH> : 创建一个快照
cp –reflink <source> <快照PATH> :对一个文件创建快照
btrfs mount :
mount -o subvol=<volume name> <MOUNT POINT>:根据路径挂载。
subvolid=<volume id > <MOUNT PONIT> :根据子卷ID挂载。
mount -o compress <lzo|zlib> <DEVICE> <MOUNT PONIT> : 开启透明压缩模式,并根据选择不同的压缩方式。
btrfs-convert [option] <DEVICE> : 升级至btrfs。
-r :将btrfs转回原来的格式。
ext 系列FS manager tool
mke2fs [option] DEVICE : 创建ext系列文件系统。
-b {1024|2048|4096}:block size
-L 'label' :set Label
-i # :指定多少个字节创建一个inode
-n # :指定一共有多少个inode
-t {ext2|ext3|ext4}:指定type
-m # :预留管理员多少%磁盘空间
e2label :查看及修改标签
e2label Device LABEL
tune2fs :修改ext系列属性
tune2fs [option] Device
-L label:set LABEL
-m:修改预留磁盘百分比
-l : list file system message
-c # : 设置强制自检的挂载次数,每挂载一次就mount count的次数就加一,达到#的值就会强制自检.
-i #[d|m|w] : 设置强制自检的时间间隔。 [day|month|week]
dumpe2fs [option] Device :显示文件系统属性信息。
-h :只显示超级块中的信息。
e2fsck [option] Device :修复ext系列fs
-a:自动修复
-f :强制检查
resize2fs [OPTION] [EXT_PATH] [SIZE]:重设EXT文件系统的大小。
-P:将ext的文件系统更新至物理内存磁盘分区中的最大数值并告知内核。
-P:将ext的文件系统更新至物理内存磁盘分区中的最小数值并告知内核。
xfs文件系统管理
mkfs_xfs [OPTION] [DEVICE] :创建xfs格式的文件系统
-b # :block size
-L ‘label’ : set label
-f : fouce
xfs_admin [OPTION] [DEVICE]: 调整xfs相关属性
-l : 显示label
-u:显示UUID
-L:set label
-U:set UUID
xfs_repair [OPTION] [DEVICE] :检查,修复fs
-f:指定file
-n:only check
-d:在单人模式下,对根目录进行检查与修复。
xfs_info [option] DEVICE :显示xfs文件系统的详细信息。
xfs_growfs [-D block_size] [XFS_PATH] :扩展XFS文件系统的大小。只能加大。
-D [block_size] :指定大小,单位为块。
SWAP Manager(交换空间管理) :
SWAP是什么?
是将磁盘中的一部分空间创建成内存的格式,用来存放内存中存储的数据的一块区域。
SWAP有什么功能?
SWAP TOOL:
mkswap [-L label_name] [DEVICE] :创建一个swap文件系统
swapon [SWAP_DEVICE] :启动一个swap。
swapoff [SWAP_DEVICE] :关闭一个swap。
free [-m]:查看swap的情况
SWAP配置实例:
1.创建一个磁盘分区。(btrfs的子卷,LVM逻辑卷可略过disk 分区步骤)
# 同步磁盘信息到内核
2.创建Swap分区
3.启用Swap,查看当前Swap信息
以M为单位:
4.关闭Swap分区
ps. cache与buffers
buffers(缓冲):为了解决设备间通信传输数量不一致时导致大量数据涌入,而导致速度快的设备空间无法处理的问题。
cache(缓存):为了解决速度快的设备与速度慢的设备速度相差而导致的资源浪费的问题,缓存会预先载入数据,等待速度快的设备读取。
LVM (Logical Volume manager)
LVM概述:
LVM是什么?
Logical Volume manager ,逻辑卷管理,是先将磁盘分区设为物理卷(PV),然后将多组物理卷虚拟成一个卷组(VG),然后就可以操作卷组分割出一个一个独立的 逻辑卷(LV),在逻辑卷的基础上创建文件系统,卷组与逻辑卷可以根据实际需求来扩大和缩小,不会受到传统分区时固定大小的束缚。
图中,最上层代表实际的disk,第三层代表将实际的disk或分区后创建的物理卷(PV),第二层表示将不同的物理卷可以搭配创建成不同的卷组(VG),第四层表示在卷组上可以创建多个大小不同的逻辑卷(LV)。
LVM的功能是什么?
LVM可以将多个实际上的DISK组合成一个个PV,又可以将每几个PV组合成一个卷组,在卷组中又可以自由划分逻辑卷,以非常灵活的方式,弹性管理磁盘空间。
LVM Mnager Tool
查看卷信息:
pvdisplay vgdisplay lvdisplay :显示卷信息。
pvscan vgscan lvscan:显示卷的磁盘空间使用情况。
物理卷管理(PV Manager):
pvcreate [OPTION] DEVICE… :创建一个物理卷。
-f : force create
-u:指定 UUID
-y:所有的交互都选择YES
pvremove [OPTION] DEVICE…:删除一个物理卷。
-ff :强制删除
-y:所有的交互都选择YES
卷组管理(VG Manager):
vgcreate [OPTION] [VG_NAME] [PV_DEVICE PATH]… :创建卷组。
-l:卷组上允许创建最大逻辑卷数。
-p:卷组上允许添加的最大物理卷数。
-s :指定PE大小,默认为4G。
vgremove [OPTION] [VG_NAME] … :删除卷组。
-f:force remove
vgextend [OPTION] [VG name] [PV_DEVICE_PATH]…:添加PV进已存在卷组。
-f : force。
-y :所有交互都选择YES。
vgreduce [OPTION] [VG_PATH] [PV_DEVICE_PATH]…:删除卷组中存在的PV。
-a : 删除所有PV。
逻辑卷管理(LV Manager):
lvcreate [OPTION] [VG_NAME] : 创建一个逻辑卷。
-n [LV_NAME] :指定逻辑卷的名称。
-L [LV_SIZE] :指定逻辑卷的大小。
-l [LE_NUMBER] :指定逻辑卷的LE数量,卷大小=LE数量 * PE_SIZE
-s :创建一个 快照卷 (snapshot volume)
-p < R | W >: 指定权限。
lvremove [OPTION] [LV_NAME] :删除一个逻辑卷。
-f:force
lvextend [OPTION] [LV_PATH]
-L [+] [LV_SIZE] :添加具体的大小。
-l [+] [LE_NUMBER] :添加多少块LE。
lvreduce [option] [LV_PATH]
-L [-] [LV_SIZE] :减少具体的大小。
-l [-] [LE_NUMBER] :减少多少块LE。
LVM扩容,缩减实例:
LVM扩容实例:
1.查看LVM信息
lsblk查看树状磁盘信息
查看卷组mygroup信息
查看逻辑卷group1的信息
2.创建磁盘分区
创建一个分区,/dev/sdb1,并设置格式为LVM
3.创建物理卷并扩容VG与LV
创建物理卷
为卷组mygroup扩容
查看mygroup卷组信息,可以看见size从5G变成7G
为逻辑卷group1扩容,增加2G
查看LV的信息
执行xfs_growfs 或者 resize2fs 激活,将扩容信息告诉内核。
、
LVM缩减实例:
1.查看状态
查看LV信息
2.缩减大小
搜减LV大小3G
缩减卷组
缩减卷组,去除物理卷
3.查看缩减结果
查看缩减后的逻辑卷状态
Ps 强行把博客写的那么乱。。仅是个人笔记学习备忘。。。
原创文章,作者:Net18_肖肖,如若转载,请注明出处:http://www.178linux.com/13420
评论列表(2条)
内容充实,逻辑清晰,外加md渲染的效果,很专业。其中的内容也不泛专业,赞!
修改一个错误 swap交换分区图解中 线性地址(虚拟内存)32位为4G,3G为进程使用,1G为内核。