1.查看系统磁盘信息: fdisk
Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors // 安装操作系统内核的信息的
Disk /dev/sdb: 42.9 GB, 42949672960 bytes, 83886080 sectors // 备份的使用来进行分区操作的。
Disk /dev/sdc: 21.5 GB, 21474836480 bytes, 41943040 sectors // 实现增加和磁盘磁盘
创建分区信息如下:
fdisk /dev/sdb -----》执行分区信息操作,得到如下的信息信息
[root@mrzhang ~]# fdisk -l /dev/sdb
Device Boot Start End Blocks Id System
/dev/sdb1 2048 16779263 8388608 83 Linux
/dev/sdb2 16779264 33556479 8388608 83 Linux
/dev/sdb3 33556480 50333695 8388608 83 Linux
/dev/sdb4 50333696 83886079 16776192 5 Extended
下面开始实验操作
1)创建ext系列的文件系统:使用的命令信息如下:mkfs,下面是使用方式和操作管理实现
mkfs [options] [-t type] [fs-options] device [size]
选项包括:
-t:文件系统类型,默认位ext2
fs-options: 创建文件系统的时候传递的参数,不是很有效
-V:显示创建的过程信息
2)mke2fs: 创建ext系列文件系统,包括ext2,ext3以及ext4
常见的使用选项如下:
-b:指定块大小信息
-t:指定文件系统类型
-U:使用指定的uuid的设备创建文件系统
-v:显示创建的过程信息
-E:使用扩展选项,扩展选项很多,就不列举了
-g:指定一个快组包含多少块,一个文件系统是由多个快组构成的
-G:指定块组的数量
-i:指定多少字节一个inode,
-I指定inode的大小
-j:创建含有日志功能的ext3文件系统
-J:创建ext3文件系统的时候指定对应的参数信息,常见的参数信息如下:
size:指定完整的日志大小,整体的
device:直接指定存放日志的外部日志设备,外部设备已经使用如下的命令执行过
mke2fs -O journal_dev external-journal
-L:指定卷名称
-m:指定超级用户预留的百分比
-M:指定上次挂载的目录
-n:不会真实的创建文件系统,而只是显示创建的过程
创建文件系统
[root@mrzhang ~]# mke2fs -t ext3 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
524288 inodes, 2097152 blocks
104857 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2147483648
64 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
[root@mrzhang ~]# blkid /dev/sdb1 // 创建文件系统成功之后可以使用blkid查看详情信息
/dev/sdb1: UUID="19939d72-017d-4e51-b1cd-a85b4b67930b" SEC_TYPE="ext2" TYPE="ext3"
3)下面是命令的相关的信息和操作实现
[root@mrzhang ~]# mke2fs -t ext2 -L "ext2" /dev/sdb1 // 重新创建文件系统ext2
[root@mrzhang ~]# blkid /dev/sdb1
/dev/sdb1: LABEL="ext2" UUID="e8829609-8ae2-4d1a-8a81-08e9493127d9" TYPE="ext2"
dumpe2fs: 显示设备上面的文件系统的超级快以及快组信息
[root@mrzhang ~]# dumpe2fs /dev/sdb1
fsck:检查和修复文件系统
3.创建lvm以及相关操作
lvm的创建过程主要包括首先创建进行磁盘格式化,要求格式化后的磁盘对应的类型是8e(Linux lvm格式),下面是示例信息
/dev/sdb5 50335744 62918655 6291456 8e Linux LVM
/dev/sdb6 62920704 75503615 6291456 8e Linux LVM
/dev/sdb7 75505664 83886079 4190208 8e Linux LVM
1)pvcreate: 创建lvm使用的磁盘信息
常见的选项位:
-u:使用指定设备的uuid创建pv,
-v:显示创建的过程信息
[root@mrzhang ~]# pvcreate /dev/sdb5 /dev/sdb6 /dev/sdb7
Physical volume "/dev/sdb5" successfully created.
Physical volume "/dev/sdb6" successfully created.
Physical volume "/dev/sdb7" successfully created.
其次需要对应的创建lvm的信息的,创建使用如下的指令:vgcreate
2)vgcreate:基于物理卷创建卷组信息
常见选项信息如下:
-v:显示创建过程
-s:指定创建的卷组的大小
-l:设定位最大的逻辑卷大小,指的是多少个
-p:设定最大的物理卷大小,指的是多少块的卷组信息
-systemid:指定新的vg卷的系统id
[root@mrzhang ~]# vgcreate -l 2000 testvg /dev/sdb5 /dev/sdb6 /dev/sdb7
Volume group "testvg" successfully created
查看信息:[root@mrzhang ~]# vgdisplay
3)创建lv及逆行使用,使用的指令信息如下:lvcreate
lvcreate:在对应的卷组上面创建逻辑卷信息。
常见的选项信息如下:
-L:指定逻辑卷组的大小
-n:指定逻辑卷组的名称信息
-s:创建快照
使用的常见的用法为:lvcreate LogicalVolume PhysicalVolumePath
[root@mrzhang ~]# lvcreate -L 14G testvg /dev/sdb5 /dev/sdb6 /dev/sdb7
Logical volume "lvol0" created.
查看信息:[root@mrzhang ~]# lvdisplay
下面开始使用磁盘,进行文件系统挂载:创建文件系统然后使用mount
常见的使用用法如下:
mount -t type device dir
-t:指定挂载的文件系统的类型,
[root@mrzhang ~]# mke2fs -t ext4 /dev/testvg/lvol0 // 在lvm上面创建文件系统
[root@mrzhang ~]# blkid /dev/testvg/lvol0
/dev/testvg/lvol0: UUID="952018db-84d6-43b5-8440-b64493ab63b7" TYPE="ext4" // 文件系统创建成功
[root@mrzhang ~]# mount -t ext4 /dev/testvg/lvol0 /mnt
[root@mrzhang ~]# df -h // 查看是否挂载成功,和预期的结果相符
/dev/mapper/testvg-lvol0 14G 41M 13G 1% /mnt
[root@mrzhang ~]# cp /etc/fstab /mnt/ // 文件系统挂载使用
4)lvm的扩容和缩容
扩容的程序如下:
首先创建一个新的lvm的卷的信息
/dev/sdb3 33556480 50333695 8388608 8e Linux LVM
将新加入的磁盘创建pv
[root@mrzhang ~]# pvcreate /dev/sdb3
加入vg中:vgextend 对应的可以将物理卷加入到逻辑卷中
vgextend VolumeGroupName (逻辑卷名称) PhysicalDevicePath
[root@mrzhang ~]# vgextend testvg /dev/sdb3
然后将pv加入到lv中
lvresize LogicalVolume (lv的名称) PhysicalVolumePath(物理卷的路径)
[root@mrzhang ~]# lvresize /dev/testvg/lvol0 /dev/sdb3
调整文件系统的大小
[root@mrzhang ~]# resize2fs /dev/testvg/lvol0
[root@mrzhang ~]# df -h
/dev/mapper/testvg-lvol0 22G 44M 21G 1% /mnt // 查看可以知道已经发生了变化的,是成功的。
缩容的程序如下:
1.卸载设备
[root@mrzhang ~]# umount /dev/testvg/lvol0
强制进行磁盘检测:
[root@mrzhang ~]# fsck -f /dev/testvg/lvol0
减小文件系统的大小
[root@mrzhang ~]# resize2fs /dev/testvg/lvol0 15G // 缩小文件系统到指定的大小
[root@mrzhang ~]# lvreduce -L 15G /dev/testvg/lvol0
[root@mrzhang ~]# mount /dev/testvg/lvol0 /mnt
[root@mrzhang ~]# df -h // 查看检测成功
/dev/mapper/testvg-lvol0 15G 41M 14G 1% /mnt
下面执行的操作:缩容的时候减少磁盘的处理
首先移除系统的挂载使用umount
[root@mrzhang ~]# pvs -o+pv_used // 查看pv中的其他的磁盘是否可以承载移除后的磁盘的压力
PV VG Fmt Attr PSize PFree Used
/dev/sda2 cl_mrzhang lvm2 a-- 19.00g 0 19.00g
/dev/sdb3 testvg lvm2 a-- 8.00g 7.00g 1.00g
/dev/sdb5 testvg lvm2 a-- 6.00g 0 6.00g
/dev/sdb6 testvg lvm2 a-- 6.00g 0 6.00g
/dev/sdb7 testvg lvm2 a-- 3.99g 1.98g 2.01g
[root@mrzhang ~]# pvmove /dev/sdb7 // 移除pv
[root@mrzhang ~]# pvs -o+pv_used // 查看是否移除成功
/dev/sdb7 testvg lvm2 a-- 3.99g 3.99g 0 // 移除成功
[root@mrzhang ~]# vgreduce testvg /dev/sdb7 // 移除vg,需要注意移除磁盘之前需要及逆行检查的,并且还需要等到新加入的磁盘成功之后才可移除磁盘的。
5)raid讲解和使用
创建分区,使用默认的Linux分区格式即可
mdadm [mode]
常见的选项信息如下:
-v:显示创建的过程信息
-C:新建raid族
-l:指定raid的级别,对应的有linear, raid0, 0, stripe, raid1, 1, mirror, raid4, 4, raid5, 5, raid6, 6, raid10, 10, multipath,mp, faulty, container
-n:指定创建raid使用多少设备
-x:指定创建raid时候时候创建的备份磁盘信息
[root@mrzhang ~]# mdadm -C /dev/md0 -l 0 -n 3 /dev/sdb1 /dev/sdb2 /dev/sdb3
[root@mrzhang ~]# mdadm --detail /dev/md0 // 查看信息
/dev/md0:
Version : 1.2
Creation Time : Tue Dec 25 21:32:40 2018
Raid Level : raid0
Array Size : 25138176 (23.97 GiB 25.74 GB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent
Update Time : Tue Dec 25 21:32:40 2018
State : clean
Active Devices : 3
Working Devices : 3
Failed Devices : 0
Spare Devices : 0
Chunk Size : 512K
Consistency Policy : unknown
Name : mrzhang:0 (local to host mrzhang)
UUID : 6237938c:84395f94:6625f0be:4759f740
Events : 0
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
1 8 18 1 active sync /dev/sdb2
2 8 19 2 active sync /dev/sdb3
备注:实际的企业应用中,不存在使用软件构建raid的,全部使用的是硬件进行的操作的,需要进行关注和理解操作。
6)使用btrfs文件系统:常见的使用命令: mkfs.btrfs
常见的使用选项信息如下:
-L:指定卷标
-U:或者是使用uuid创建
[root@mrzhang ~]# mkfs.btrfs -f -L "btrfs" /dev/md0
创建成功之后的显示的情况
btrfs-progs v4.4.1
See http://btrfs.wiki.kernel.org for more information.
Label: btrfs
UUID: 8c07d182-a68e-4dcb-9e29-7f58ba61b5bd
Node size: 16384
Sector size: 4096
Filesystem size: 23.97GiB
Block group profiles:
Data: single 8.00MiB
Metadata: DUP 1.01GiB
System: DUP 12.00MiB
SSD detected: no
Incompat features: extref, skinny-metadata
Number of devices: 1
Devices:
ID SIZE PATH
1 23.97GiB /dev/md0
[root@mrzhang ~]# btrfs filesystem df -h /media // 验证创建成功
Data, single: total=8.00MiB, used=256.00KiB
System, DUP: total=8.00MiB, used=16.00KiB
Metadata, DUP: total=1.00GiB, used=112.00KiB
GlobalReserve, single: total=16.00MiB, used=0.00B
备注:raid和lvm只是底层的磁盘的逻辑使用方式,在lvm以及raid上面创建逻辑磁盘安装文件系统是没有任何冲突的,现阶段企业中使用的分布式的文件系统并且采用的是整体的机柜的,只有一个磁盘的,所以上面的操作基本上在实际的企业中使用不多的。