物理设备的命名规则
在linux系统中一切都是文件,硬件设备也不例外。即然是文件,就必须有文件名称。系统内核中的udev设备管理器会自动把硬件名称规范起来,目的是让用户通过设备文件的名字可以看出设备大致的属性以及分区信息等;在linux中常见的设备文件都存放/dev目录下。下表所显示的就是Linux系统中常见的硬件设备的文件名称:
注意:目前IDE设备已经很少见,所以一般硬盘设备都会以"/dev/sd"开头。除linux中可用/dev/sd[a-z]来表示可以有多块硬盘以外,每块硬盘的分区也是有所区分,硬盘编号也是大有讲究的
在电脑系统中,我们的硬盘可以分为主分区、扩散分区、逻辑分区,linux系统也给我们不同的分区也定义了从不同的编号开始,如:主分区或扩展分区的编号是从1开始,以4结束;逻辑分区的编号是从5号开始。
Linux系统支持数十种的文件系统,而最常见的文件系统如下所示:
添加硬盘
第一步:将虚拟机关机,然后单击"编辑虚拟机设置"选项,在弹出的界面中单击"添加"按钮,新增一块硬件设备,如图
第二步:选择虚拟硬盘的类型为SATA,并单击"下一步"按钮,
第三步:将新硬盘添加好以后就可以看到设备信息,这里不需要做任何修改,直接单击"确定"按钮后可启动虚拟机。
第四步:当硬盘添加完成以后,在/dev目录下会多一个sdb的文件,查看命令:ls /dev/sdb
硬盘分区
注意:硬盘添加完成后,此时硬盘并不能正式使用,如果想正式使用,还需要对添加过的硬盘进行分区即可使用。
硬盘分区命令:fdisk
作用:新建、修改及删除磁盘的分区表信息;
语法格式:fdisk [参数] [磁盘名称]
常用参数:
示例
第1步:用fdisk命令来管理新添加的硬盘,然后使用p参数查看分区表信息
第2步:输入参数n尝试添加新的分区。选择要创建主分区或扩展分区(p主分区,e扩展分区),输入参数p来创建一个主分区;
第3步:确认完要创建的分区后,添加主分区的编号,确认分区表的扇区位置,按回车键保存信息;定义分区的大小,不需要大家计算扇区,只需要输入大小即可,如+5GB即可添加个5GB的硬盘分区;
第4步:再次查看硬盘分区情况,大家即可以看到一个名称为/dev/sdb1、起始扇区位置为2048、结束为10487807的主分区。大家不要以为这个时候就结束直接关闭软件,而是需要保存后,分区信息才会保存;
cpp
[root@localhost 0913]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x418e148f 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x418e148f
设备 Boot Start End Blocks Id System
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-41943039,默认为 2048):2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+5G
分区 1 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x418e148f
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 10487807 5242880 83 Linux
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost 0913]#
使用file命令查看:
此时我们并不能使用该硬盘分区,因为该设备还没有进行格式化,所以系统无法得知怎么在其上写入数据,这时就需要对存储设备进行格式分操作,linux系统中用于格式化的操作命令是mkfs。
硬盘格式化命令:mkfs
语法:mkfs [参数] [硬盘文件名称] mkfs 系统格式 参数 分区名称
参数:-f ,强制格式化硬盘分区
案例:对/dev/sdb1硬盘文件进行格式化
设备挂载与解挂
挂载指的是把需要使用的硬盘设备或分区的数据时,需要先将其与一个普通文件目录进行关联,而这个关联动作就是"挂载"。
案例: 将/dev/sdb1设备文件挂载到/dev/md1目录下
第1步:查看根目录下是否存/dev/md1目录
第2步:创建/dev/md1目录文件
第3步:实现设备挂载
df命令:
作用:设备挂载完成后,可以通过df命令来查看设备文件挂载状态和硬盘使用信息。
语法:df [参数] [指定文件]
常用参数:
案例:查看/dev/sdb1设备文件的挂载状态
使用mount命令进行文件挂载的时候,会出现一个问题,即使用mount命令挂载的设备文件会在系统下一次重启的时候失效,如果想让这个设备文件的挂载永久有效,则需要把挂载的信息写入到配置文件中:/etc/fstab文件
umount命令:
作用:用于卸载设备或文件系统
语法:umount [设备文件/挂载目录]
常见参数:
案例: 将/dev/sdb1设备文件与/dev/md1文件卸载。
软硬连接
软硬方链接就是一个快捷方式。
在windows系统中,快捷方式就是指向原始文件的一个链接文件,可以让用户从不同的位置来访问原始的文件;原文件一旦被删除或移动到其他地方之后,会导致链接文件的失效。但是在linux系统中的快捷方式与windows有所不同。
在linux系统中链接方式有两种软链接和硬链接两种不同类型。
软链接(symbolic link):也叫符号链接,仅仅包含所链接文件的名称和路径,像个记录地址的标签。当原始文件被删除或移动之,新的链接也会随之失效,不能被访问,可以对文件、目录做软件链接。
硬链接(hard link):可以将它理解为一个"指向原始文件block的指针",系统会创建出一个与原来一模一样的inode信息块。所以,硬链接文件与原始文件其实是一模一样的,只是名字不同。每添加一个一个硬连接,该文件的inode个数就会增加1;而且只有当该文件的inode个数为0时,才算彻底将它删除。换言之,由于硬链接实际上是指向原文件block的指针,因此即便原始文件被删除、移动,依然可以通过硬链接文件来访问 。但是需要注意的是,硬链接不能实现跨分区对目录文件进行硬链接。
ln命令
作用:用于创建文件的软硬链接
语法:ln [参数] 原始文件 链接文件
常用参数:
案例:创建一个软链接文件。
cpp
[root@localhost ~]# touch 1.txt
[root@localhost ~]# vim 1.txt
[root@localhost ~]# ln -s 1.txt 2.txt
[root@localhost ~]# cat 1.txt
Welcome to Linux System!
Welcome to Linux System!
Welcome to Linux System!
Welcome to Linux System!
[root@localhost ~]# cat 2.txt
Welcome to Linux System!
Welcome to Linux System!
Welcome to Linux System!
Welcome to Linux System!
[root@localhost ~]# ls -l 1.txt
-rw-r--r-- 1 root root 101 9月 15 08:51 1.txt
[root@localhost ~]# ls -l 2.txt
lrwxrwxrwx 1 root root 5 9月 15 08:51 2.txt -> 1.txt
[root@localhost ~]# rm -rf 1.txt
[root@localhost ~]# cat 2.txt
cat: 2.txt: 没有那个文件或目录
[root@localhost ~]#
案例:创建一个硬件链接
cpp
[root@localhost ~]# vim a.txt
[root@localhost ~]# ln a.txt b.txt
[root@localhost ~]# cat a.txt
This is hard link file!
This is hard link file!
This is hard link file!
This is hard link file!
[root@localhost ~]# ll a.txt
-rw-r--r-- 2 root root 96 9月 15 08:57 a.txt
[root@localhost ~]# ll b.txt
-rw-r--r-- 2 root root 96 9月 15 08:57 b.txt
[root@localhost ~]# rm -rf a.txt
[root@localhost ~]# cat b.txt
This is hard link file!
This is hard link file!
This is hard link file!
This is hard link file!
[root@localhost ~]# ll b.txt
-rw-r--r-- 1 root root 96 9月 15 08:57 b.txt
[root@localhost ~]#
**lsblk:**列出所有可用块设备信息
语法:lsblk 参数 指定设备块文件
参数:-V,查看版本信息
-a,列出所有块设备
-S,查看SCSI信息
-f,查看文件类型及UUID信息
-p,查看块设备的完整路径
-lp,以列表块显示块设备
磁盘阵列
概念:磁盘阵列(Redundant Arrays of Independent Disks,RAID),有"数块独立磁盘构成具有冗余能力的阵列"之意。磁盘阵列是由很多块独立的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。
实现方式:
优点:提高传输速率;通过数据校验提供容错功能;
缺点: RAID0没有冗余功能,一个磁盘损坏,所有数据无法使用;RAID1磁盘利用率低,最高只能达到50%。
功能:
1、通过对磁盘上的数据进行条带化,实现对数据成块存取,减少磁盘的机械寻道时间,提高了数据存取速度;
2、通过对一个阵列中的几个块磁盘同时读取,减少了磁盘的机械寻道时间,提高数据存取速度;
3、通过镜像或者存储奇偶校验信息的方式,实现了对数据的冗余保护;
RAID 0
带区集 原理是将类似于显示器隔行扫描,将数据分割成不同条带分散写入到所有硬盘中同时进行读写,也就是多磁盘并行操作使同一时间内磁盘读写的速度提升快。
需要2块及以上硬盘数量
特点:读写速度快,磁盘利用率高;一旦一块磁盘损坏,所有数据都将丢失;
RAID 1
磁盘镜像,原理是把一个磁盘的数据镜像到另一个磁盘上;需要2块及以上硬盘数量。
特点: 利用率低,只有50%的利用率;会产生数据镜像,提高了数据的安全性;
RAID 0+1
是RAID0和RAID1的结合体,至少需要4块硬盘
RAID 5
分布式奇偶校验的独立磁盘,需要3块及以上硬盘数量
特点:奇偶校验,会将校验内容放在不同的盘符上,数据安全性高;数据传输速度慢;
RAID 10
概念:用来创建、删除、修改RAID磁盘,高可靠与高效磁盘结构 原理是将一个带匿名结构和一个镜像结构结合起来。
语法:mdadm 参数 RAID级别 组成RAID的磁盘
参数:
创建 RAID 0
创建 RAID1
创建 RAID5
创建RAID10
创建RAID50
Lvm
1、创建一个RAID10磁盘阵列,并模拟磁盘损坏及修复过程,并移除损坏的硬盘;
cpp
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 10G 0 disk
sdc 8:32 0 10G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x7674ebc7 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-20971519,默认为 2048):2048
Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519):+5G
分区 1 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
分区号 (2-4,默认 2):2
起始 扇区 (10487808-20971519,默认为 10487808):10487808
Last 扇区, +扇区 or +size{K,M,G} (10487808-20971519,默认为 20971519):+5G
值超出范围。
Last 扇区, +扇区 or +size{K,M,G} (10487808-20971519,默认为 20971519):20971519
分区 2 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 5G 0 part
└─sdb2 8:18 0 5G 0 part
sdc 8:32 0 10G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# fdisk /dev/sdc
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0xb2a4a3f1 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-20971519,默认为 2048):2048
Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519):+5G
分区 1 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
分区号 (2-4,默认 2):2
起始 扇区 (10487808-20971519,默认为 10487808):10487808
Last 扇区, +扇区 or +size{K,M,G} (10487808-20971519,默认为 20971519):20971519
分区 2 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 5G 0 part
└─sdb2 8:18 0 5G 0 part
sdc 8:32 0 10G 0 disk
├─sdc1 8:33 0 5G 0 part
└─sdc2 8:34 0 5G 0 part
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# mdadm -Cv /dev/md1 -l 1 -n 2 /dev/sdb{1,2}
mdadm: Note: this array has metadata at the start and
may not be suitable as a boot device. If you plan to
store '/boot' on this device please ensure that
your boot-loader understands md/v1.x metadata, or use
--metadata=0.90
mdadm: size set to 5235712K
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.
[root@localhost ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Thu Aug 17 10:58:52 2023
Raid Level : raid1
Array Size : 5235712 (4.99 GiB 5.36 GB)
Used Dev Size : 5235712 (4.99 GiB 5.36 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Thu Aug 17 10:59:18 2023
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Consistency Policy : resync
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : ca9f649f:4487feda:d3d9dcd5:6f3c1468
Events : 17
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
1 8 18 1 active sync /dev/sdb2
[root@localhost ~]# mdadm -Cv /dev/md2 -l 1 -n 2 /dev/sdc{1,2}
mdadm: Note: this array has metadata at the start and
may not be suitable as a boot device. If you plan to
store '/boot' on this device please ensure that
your boot-loader understands md/v1.x metadata, or use
--metadata=0.90
mdadm: size set to 5236736K
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md2 started.
[root@localhost ~]# ls /dev/md*
/dev/md1 /dev/md2
[root@localhost ~]# mdadm -Cv /dev/md10 -l 0 -n 2 /dev/md{1,2}
mdadm: chunk size defaults to 512K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md10 started.
[root@localhost ~]# ls /dev/md*
/dev/md1 /dev/md10 /dev/md2
[root@localhost ~]# mkfs.xfs /dev/md10
meta-data=/dev/md10 isize=512 agcount=16, agsize=163456 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=2615296, imaxpct=25
= sunit=128 swidth=256 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=8 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@localhost ~]# mkdir /raid10
[root@localhost ~]# mount /dev/md10 /raid10
[root@localhost ~]# cd /raid10/
[root@localhost raid10]# echo "rai0)+raid1" > 123.txt
[root@localhost raid10]# ll
总用量 4
-rw-r--r--. 1 root root 12 8月 17 11:41 123.txt
[root@localhost raid10]# cat 123.txt
rai0)+raid1
[root@localhost raid10]# mdadm -f /dev/md1 /dev/sdb1
mdadm: set /dev/sdb1 faulty in /dev/md1
[root@localhost raid10]# cat 123.txt
rai0)+raid1
[root@localhost raid10]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Thu Aug 17 10:58:52 2023
Raid Level : raid1
Array Size : 5235712 (4.99 GiB 5.36 GB)
Used Dev Size : 5235712 (4.99 GiB 5.36 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Thu Aug 17 11:42:01 2023
State : clean, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 1
Spare Devices : 0
Consistency Policy : resync
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : ca9f649f:4487feda:d3d9dcd5:6f3c1468
Events : 21
Number Major Minor RaidDevice State
- 0 0 0 removed
1 8 18 1 active sync /dev/sdb2
0 8 17 - faulty /dev/sdb1
[root@localhost raid10]# mdadm -D /dev/md10
/dev/md10:
Version : 1.2
Creation Time : Thu Aug 17 11:33:47 2023
Raid Level : raid0
Array Size : 10462208 (9.98 GiB 10.71 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Thu Aug 17 11:33:47 2023
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Chunk Size : 512K
Consistency Policy : none
Name : localhost.localdomain:10 (local to host localhost.localdomain)
UUID : bf9efbc6:1a5d420e:aa9104f1:8a72649b
Events : 0
Number Major Minor RaidDevice State
0 9 1 0 active sync /dev/md1
1 9 2 1 active sync /dev/md2
[root@localhost raid10]# mdadm -r /dev/md1 /dev/sdb1
mdadm: hot removed /dev/sdb1 from /dev/md1
[root@localhost raid10]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Thu Aug 17 10:58:52 2023
Raid Level : raid1
Array Size : 5235712 (4.99 GiB 5.36 GB)
Used Dev Size : 5235712 (4.99 GiB 5.36 GB)
Raid Devices : 2
Total Devices : 1
Persistence : Superblock is persistent
Update Time : Thu Aug 17 11:43:01 2023
State : clean, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 0
Spare Devices : 0
Consistency Policy : resync
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : ca9f649f:4487feda:d3d9dcd5:6f3c1468
Events : 26
Number Major Minor RaidDevice State
- 0 0 0 removed
1 8 18 1 active sync /dev/sdb2
[root@localhost raid10]# mdadm -a /dev/md1 /dev/sdb1
mdadm: added /dev/sdb1
[root@localhost raid10]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Thu Aug 17 10:58:52 2023
Raid Level : raid1
Array Size : 5235712 (4.99 GiB 5.36 GB)
Used Dev Size : 5235712 (4.99 GiB 5.36 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Thu Aug 17 11:43:41 2023
State : clean, degraded, recovering
Active Devices : 1
Working Devices : 2
Failed Devices : 0
Spare Devices : 1
Consistency Policy : resync
Rebuild Status : 42% complete
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : ca9f649f:4487feda:d3d9dcd5:6f3c1468
Events : 36
Number Major Minor RaidDevice State
2 8 17 0 spare rebuilding /dev/sdb1
1 8 18 1 active sync /dev/sdb2
[root@localhost raid10]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Thu Aug 17 10:58:52 2023
Raid Level : raid1
Array Size : 5235712 (4.99 GiB 5.36 GB)
Used Dev Size : 5235712 (4.99 GiB 5.36 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Thu Aug 17 11:43:51 2023
State : clean, degraded, recovering
Active Devices : 1
Working Devices : 2
Failed Devices : 0
Spare Devices : 1
Consistency Policy : resync
Rebuild Status : 80% complete
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : ca9f649f:4487feda:d3d9dcd5:6f3c1468
Events : 42
Number Major Minor RaidDevice State
2 8 17 0 spare rebuilding /dev/sdb1
1 8 18 1 active sync /dev/sdb2
[root@localhost raid10]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Thu Aug 17 10:58:52 2023
Raid Level : raid1
Array Size : 5235712 (4.99 GiB 5.36 GB)
Used Dev Size : 5235712 (4.99 GiB 5.36 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Thu Aug 17 11:43:57 2023
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Consistency Policy : resync
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : ca9f649f:4487feda:d3d9dcd5:6f3c1468
Events : 47
Number Major Minor RaidDevice State
2 8 17 0 active sync /dev/sdb1
1 8 18 1 active sync /dev/sdb2
[root@localhost raid10]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 5G 0 part
│ └─md1 9:1 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0 /raid10
└─sdb2 8:18 0 5G 0 part
└─md1 9:1 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0 /raid10
sdc 8:32 0 10G 0 disk
├─sdc1 8:33 0 5G 0 part
│ └─md2 9:2 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0 /raid10
└─sdc2 8:34 0 5G 0 part
└─md2 9:2 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0 /raid10
sdd 8:48 0 20G 0 disk
sde 8:64 0 20G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost raid10]# cd
2、创建一个RAID50磁盘阵列,并模拟磁盘损坏及修复过程,并移除损坏的硬盘;
cpp
[root@localhost ~]# fdisk /dev/sdd
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0xeb5905e0 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-41943039,默认为 2048):2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+5G
分区 1 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
分区号 (2-4,默认 2):2
起始 扇区 (10487808-41943039,默认为 10487808):10487808
Last 扇区, +扇区 or +size{K,M,G} (10487808-41943039,默认为 41943039):+5G
分区 2 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p): p
分区号 (3,4,默认 3):3
起始 扇区 (20973568-41943039,默认为 20973568):20973568
Last 扇区, +扇区 or +size{K,M,G} (20973568-41943039,默认为 41943039):+5G
分区 3 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (3 primary, 0 extended, 1 free)
e extended
Select (default e): p
已选择分区 4
起始 扇区 (31459328-41943039,默认为 31459328):4
值超出范围。
起始 扇区 (31459328-41943039,默认为 31459328):31459328
Last 扇区, +扇区 or +size{K,M,G} (31459328-41943039,默认为 41943039):41943039
分区 4 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost ~]# fdisk /dev/sde
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0xa7aba9cd 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-41943039,默认为 2048):2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+5G
分区 1 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
分区号 (2-4,默认 2):2
起始 扇区 (10487808-41943039,默认为 10487808):10487808
Last 扇区, +扇区 or +size{K,M,G} (10487808-41943039,默认为 41943039):41943039
分区 2 已设置为 Linux 类型,大小设为 15 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p): p
分区号 (3,4,默认 3):3
No free sectors available
命令(输入 m 获取帮助):d
分区号 (1,2,默认 2):2
分区 2 已删除
命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
分区号 (2-4,默认 2):2
起始 扇区 (10487808-41943039,默认为 10487808):10487808
Last 扇区, +扇区 or +size{K,M,G} (10487808-41943039,默认为 41943039):+5G
分区 2 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p): p
分区号 (3,4,默认 3):3
起始 扇区 (20973568-41943039,默认为 20973568):20973568
Last 扇区, +扇区 or +size{K,M,G} (20973568-41943039,默认为 41943039):+5G
分区 3 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (3 primary, 0 extended, 1 free)
e extended
Select (default e): p
已选择分区 4
起始 扇区 (31459328-41943039,默认为 31459328):31459328
Last 扇区, +扇区 or +size{K,M,G} (31459328-41943039,默认为 41943039):41943039
分区 4 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost ~]# mdadm -Cv /dev/md5 -l 5 -n 3 /dev/sdd{1,2,3} -x 1 /dev/sdd4
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: size set to 5236736K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.
[root@localhost ~]# mdadm -Cv /dev/md6 -l 5 -n 3 /dev/sde{1,2,3} -x 1 /dev/sde4
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: size set to 5236736K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md6 started.
[root@localhost ~]# mdadm -Dv /dev/md50 -l 0 -n 2 /dev/md{5,6}
mdadm: option -l not valid in misc mode
[root@localhost ~]# mdadm -D /dev/md50
mdadm: cannot open /dev/md50: No such file or directory
[root@localhost ~]# mdadm -Cv /dev/md50 -l 0 -n 2 /dev/md{5,6}
mdadm: chunk size defaults to 512K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md50 started.
[root@localhost ~]# mdadm -D /dev/md50
/dev/md50:
Version : 1.2
Creation Time : Thu Aug 17 12:25:16 2023
Raid Level : raid0
Array Size : 20928512 (19.96 GiB 21.43 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Thu Aug 17 12:25:16 2023
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Chunk Size : 512K
Consistency Policy : none
Name : localhost.localdomain:50 (local to host localhost.localdomain)
UUID : a6184c88:4afddfad:858152d7:279f0b0f
Events : 0
Number Major Minor RaidDevice State
0 9 5 0 active sync /dev/md5
1 9 6 1 active sync /dev/md6
[root@localhost ~]# mkfs.xfs /dev/md50
meta-data=/dev/md50 isize=512 agcount=16, agsize=327040 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=5232128, imaxpct=25
= sunit=128 swidth=256 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=8 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@localhost ~]# mkdir /raid50
[root@localhost ~]# mount /dev/md50 /raid50
---模拟损坏
[root@localhost ~]# mdadm -f /dev/md5 /dev/sdd3
mdadm: set /dev/sdd3 faulty in /dev/md5
[root@localhost ~]# mdadm -a /dev/md5 /dev/sdd4
mdadm: Cannot open /dev/sdd4: Device or resource busy
--移除
[root@localhost ~]# mdadm -r /dev/md5 /dev/sdd3
mdadm: hot removed /dev/sdd3 from /dev/md5
[root@localhost ~]# mdadm -a /dev/md5 /dev/sdd3
mdadm: added /dev/sdd3
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 5G 0 part
│ └─md1 9:1 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0 /raid10
└─sdb2 8:18 0 5G 0 part
└─md1 9:1 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0 /raid10
sdc 8:32 0 10G 0 disk
├─sdc1 8:33 0 5G 0 part
│ └─md2 9:2 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0 /raid10
└─sdc2 8:34 0 5G 0 part
└─md2 9:2 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0 /raid10
sdd 8:48 0 20G 0 disk
├─sdd1 8:49 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0 /raid50
├─sdd2 8:50 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0 /raid50
├─sdd3 8:51 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0 /raid50
└─sdd4 8:52 0 5G 0 part
└─md5 9:5 0 10G 0 raid5
└─md50 9:50 0 20G 0 raid0 /raid50
sde 8:64 0 20G 0 disk
├─sde1 8:65 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0 /raid50
├─sde2 8:66 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0 /raid50
├─sde3 8:67 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0 /raid50
└─sde4 8:68 0 5G 0 part
└─md6 9:6 0 10G 0 raid5
└─md50 9:50 0 20G 0 raid0 /raid50
sr0 11:0 1 1024M 0 rom
1、使用上面的RAID10和RAID50做为物理卷,创建两个逻辑卷lv1,lv5,大小为5G和10G
cpp
[root@localhost ~]# umount /raid10 /raid50
[root@localhost ~]# pvcreate /dev/md10 /dev/md50
WARNING: xfs signature detected on /dev/md10 at offset 0. Wipe it? [y/n]: y
Wiping xfs signature on /dev/md10.
WARNING: xfs signature detected on /dev/md50 at offset 0. Wipe it? [y/n]: y
Wiping xfs signature on /dev/md50.
Physical volume "/dev/md10" successfully created.
Physical volume "/dev/md50" successfully created.
[root@localhost ~]# vgcreate /dev/vg1 /dev/md10 /dev/md50
Volume group "vg1" successfully created
[root@localhost ~]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 2 0 wz--n- <19.00g 0
vg1 2 0 0 wz--n- 29.93g 29.93g
[root@localhost ~]# vgdisplay
--- Volume group ---
VG Name centos
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size <19.00 GiB
PE Size 4.00 MiB
Total PE 4863
Alloc PE / Size 4863 / <19.00 GiB
Free PE / Size 0 / 0
VG UUID b5nRqY-u1pP-8uge-DBSF-Kplt-HV5Z-yg738e
--- Volume group ---
VG Name vg1
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size 29.93 GiB
PE Size 4.00 MiB
Total PE 7663
Alloc PE / Size 0 / 0
Free PE / Size 7663 / 29.93 GiB
VG UUID Rc39u3-bM6K-G60p-SfJL-dDd3-rhut-cm16J9
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md10 vg1 lvm2 a-- <9.98g <9.98g
/dev/md50 vg1 lvm2 a-- <19.96g <19.96g
/dev/sda2 centos lvm2 a-- <19.00g 0
--扩容
[root@localhost ~]# lvcreate -L 5G -n lv1 /dev/vg1
Logical volume "lv1" created.
[root@localhost ~]# cd /dev
[root@localhost dev]# cd vg1
[root@localhost vg1]# ll
总用量 0
lrwxrwxrwx. 1 root root 7 8月 17 14:00 lv1 -> ../dm-2
[root@localhost vg1]# lvcreate -l 2560 -n lv5 /dev/vg1
Logical volume "lv5" created.
[root@localhost vg1]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- <17.00g
swap centos -wi-ao---- 2.00g
lv1 vg1 -wi-a----- 5.00g
lv5 vg1 -wi-a----- 10.00g
[root@localhost vg1]# cd
[root@localhost ~]# mkfs.xfs /dev/vg1/lv1
meta-data=/dev/vg1/lv1 isize=512 agcount=8, agsize=163712 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=1309696, imaxpct=25
= sunit=128 swidth=256 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=8 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 5G 0 part
│ └─md1 9:1 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0
│ └─vg1-lv1 253:2 0 5G 0 lvm
└─sdb2 8:18 0 5G 0 part
└─md1 9:1 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0
└─vg1-lv1 253:2 0 5G 0 lvm
sdc 8:32 0 10G 0 disk
├─sdc1 8:33 0 5G 0 part
│ └─md2 9:2 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0
│ └─vg1-lv1 253:2 0 5G 0 lvm
└─sdc2 8:34 0 5G 0 part
└─md2 9:2 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0
└─vg1-lv1 253:2 0 5G 0 lvm
sdd 8:48 0 20G 0 disk
├─sdd1 8:49 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sdd2 8:50 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sdd3 8:51 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ └─vg1-lv5 253:3 0 10G 0 lvm
└─sdd4 8:52 0 5G 0 part
└─md5 9:5 0 10G 0 raid5
└─md50 9:50 0 20G 0 raid0
└─vg1-lv5 253:3 0 10G 0 lvm
sde 8:64 0 20G 0 disk
├─sde1 8:65 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sde2 8:66 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sde3 8:67 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ └─vg1-lv5 253:3 0 10G 0 lvm
└─sde4 8:68 0 5G 0 part
└─md6 9:6 0 10G 0 raid5
└─md50 9:50 0 20G 0 raid0
└─vg1-lv5 253:3 0 10G 0 lvm
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# mkdir /lv1 /lv5
[root@localhost ~]# mount /dev/vg1/lv1 /lv1
[root@localhost ~]# lvextend -L +5G /dev/vg1/lv1
Size of logical volume vg1/lv1 changed from 5.00 GiB (1280 extents) to 10.00 GiB (2560 extents).
Logical volume vg1/lv1 successfully resized.
[root@localhost ~]# xfs_growfs /dev/vg1/lv1
meta-data=/dev/mapper/vg1-lv1 isize=512 agcount=8, agsize=163712 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=1309696, imaxpct=25
= sunit=128 swidth=256 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=8 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 1309696 to 2621440
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 5G 0 part
│ └─md1 9:1 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0
│ └─vg1-lv1 253:2 0 10G 0 lvm /lv1
└─sdb2 8:18 0 5G 0 part
└─md1 9:1 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0
└─vg1-lv1 253:2 0 10G 0 lvm /lv1
sdc 8:32 0 10G 0 disk
├─sdc1 8:33 0 5G 0 part
│ └─md2 9:2 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0
│ └─vg1-lv1 253:2 0 10G 0 lvm /lv1
└─sdc2 8:34 0 5G 0 part
└─md2 9:2 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0
└─vg1-lv1 253:2 0 10G 0 lvm /lv1
sdd 8:48 0 20G 0 disk
├─sdd1 8:49 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sdd2 8:50 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sdd3 8:51 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
└─sdd4 8:52 0 5G 0 part
└─md5 9:5 0 10G 0 raid5
└─md50 9:50 0 20G 0 raid0
├─vg1-lv1 253:2 0 10G 0 lvm /lv1
└─vg1-lv5 253:3 0 10G 0 lvm
sde 8:64 0 20G 0 disk
├─sde1 8:65 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sde2 8:66 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sde3 8:67 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
└─sde4 8:68 0 5G 0 part
└─md6 9:6 0 10G 0 raid5
└─md50 9:50 0 20G 0 raid0
├─vg1-lv1 253:2 0 10G 0 lvm /lv1
└─vg1-lv5 253:3 0 10G 0 lvm
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# e2fsck -f /dev/vg1/lv1
e2fsck 1.42.9 (28-Dec-2013)
/dev/vg1/lv1 is mounted.
e2fsck: 无法继续, 中止.
[root@localhost ~]# mkfs.ext4 /dev/vg1/lv5
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=128 blocks, Stripe width=256 blocks
655360 inodes, 2621440 blocks
131072 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2151677952
80 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: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
[root@localhost ~]# mount /dev/vg1/lv5 /lv5
[root@localhost ~]# df -H
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 1.1G 0 1.1G 0% /dev
tmpfs 1.1G 0 1.1G 0% /dev/shm
tmpfs 1.1G 11M 1.1G 2% /run
tmpfs 1.1G 0 1.1G 0% /sys/fs/cgroup
/dev/mapper/centos-root 19G 4.9G 14G 27% /
/dev/sda1 1.1G 182M 882M 18% /boot
tmpfs 208M 29k 208M 1% /run/user/0
/dev/mapper/vg1-lv1 11G 35M 11G 1% /lv1
/dev/mapper/vg1-lv5 11G 38M 9.9G 1% /lv5
[root@localhost ~]# umount /lv5
[root@localhost ~]# e2fsck -f /dev/vg1/lv5
e2fsck 1.42.9 (28-Dec-2013)
第一步: 检查inode,块,和大小
第二步: 检查目录结构
第3步: 检查目录连接性
Pass 4: Checking reference counts
第5步: 检查簇概要信息
/dev/vg1/lv5: 11/655360 files (0.0% non-contiguous), 83137/2621440 blocks
[root@localhost ~]# resize2fs /dev/vg1/lv5
resize2fs 1.42.9 (28-Dec-2013)
The filesystem is already 2621440 blocks long. Nothing to do!
--缩容
[root@localhost ~]# resize2fs /dev/vg1/lv5 8G
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/vg1/lv5 to 2097152 (4k) blocks.
The filesystem on /dev/vg1/lv5 is now 2097152 blocks long.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 5G 0 part
│ └─md1 9:1 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0
│ └─vg1-lv1 253:2 0 10G 0 lvm /lv1
└─sdb2 8:18 0 5G 0 part
└─md1 9:1 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0
└─vg1-lv1 253:2 0 10G 0 lvm /lv1
sdc 8:32 0 10G 0 disk
├─sdc1 8:33 0 5G 0 part
│ └─md2 9:2 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0
│ └─vg1-lv1 253:2 0 10G 0 lvm /lv1
└─sdc2 8:34 0 5G 0 part
└─md2 9:2 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0
└─vg1-lv1 253:2 0 10G 0 lvm /lv1
sdd 8:48 0 20G 0 disk
├─sdd1 8:49 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sdd2 8:50 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sdd3 8:51 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
└─sdd4 8:52 0 5G 0 part
└─md5 9:5 0 10G 0 raid5
└─md50 9:50 0 20G 0 raid0
├─vg1-lv1 253:2 0 10G 0 lvm /lv1
└─vg1-lv5 253:3 0 10G 0 lvm
sde 8:64 0 20G 0 disk
├─sde1 8:65 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sde2 8:66 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
├─sde3 8:67 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm /lv1
│ └─vg1-lv5 253:3 0 10G 0 lvm
└─sde4 8:68 0 5G 0 part
└─md6 9:6 0 10G 0 raid5
└─md50 9:50 0 20G 0 raid0
├─vg1-lv1 253:2 0 10G 0 lvm /lv1
└─vg1-lv5 253:3 0 10G 0 lvm
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# mount /dev/vg1/lv5 /lv5
[root@localhost ~]# umount /lv1
[root@localhost ~]# e2fsck -f /dev/vg1/lv1
e2fsck 1.42.9 (28-Dec-2013)
ext2fs_open2: Bad magic number in super-block
e2fsck: 超级块无效, trying backup blocks...
e2fsck: Bad magic number in super-block 当尝试打开 /dev/vg1/lv1 时
The 超级块 could not be read or does not describe a correct ext2
文件系统. If the 设备 is valid and it really contains an ext2
文件系统 (and not swap or ufs or something else), then the 超级块
is corrupt, and you might try running e2fsck with an alternate 超级块:
e2fsck -b 8193 <设备>
[root@localhost ~]# lvcreate -L 2G -n lv11 /dev/vg1
Logical volume "lv11" created.
[root@localhost ~]# mkfs.xfs /dev/vg1/lv11
meta-data=/dev/vg1/lv11 isize=512 agcount=8, agsize=65408 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=523264, imaxpct=25
= sunit=128 swidth=256 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=8 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@localhost ~]# mkdir /lv11
[root@localhost ~]# mount /dev/vg1/lv11 /lv11
[root@localhost ~]# echo "this is photo" > 1.txt
[root@localhost ~]# cat /lv11/1.txt
cat: /lv11/1.txt: 没有那个文件或目录
[root@localhost ~]# echo "this is photo" > /lv11/1.txt
[root@localhost ~]# cat /lv11/1.txt
this is photo
--快照
[root@localhost ~]# lvcreate -L 2G -s -n lv11bak /dev/vg1/lv11
Logical volume "lv11bak" created.
[root@localhost ~]# rm -rf /lv11/1.txt
[root@localhost ~]# ls /lv11
[root@localhost ~]# ll
总用量 12
-rw-r--r--. 1 root root 14 8月 17 15:33 1.txt
-rw-------. 1 root root 1703 8月 8 11:50 anaconda-ks.cfg
-rw-r--r--. 1 root root 1751 8月 8 11:51 initial-setup-ks.cfg
drwxr-xr-x. 2 root root 6 8月 8 11:52 公共
drwxr-xr-x. 2 root root 6 8月 8 11:52 模板
drwxr-xr-x. 2 root root 6 8月 8 11:52 视频
drwxr-xr-x. 2 root root 6 8月 8 11:52 图片
drwxr-xr-x. 2 root root 6 8月 8 11:52 文档
drwxr-xr-x. 2 root root 6 8月 8 11:52 下载
drwxr-xr-x. 2 root root 6 8月 8 11:52 音乐
drwxr-xr-x. 2 root root 6 8月 8 11:52 桌面
[root@localhost ~]# ls /lv11
[root@localhost ~]# umount /lv11
[root@localhost ~]# ls
1.txt anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
[root@localhost ~]# ls /lv11
[root@localhost ~]# cat 1.txt
this is photo
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 5G 0 part
│ └─md1 9:1 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0
│ └─vg1-lv1 253:2 0 10G 0 lvm
└─sdb2 8:18 0 5G 0 part
└─md1 9:1 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0
└─vg1-lv1 253:2 0 10G 0 lvm
sdc 8:32 0 10G 0 disk
├─sdc1 8:33 0 5G 0 part
│ └─md2 9:2 0 5G 0 raid1
│ └─md10 9:10 0 10G 0 raid0
│ └─vg1-lv1 253:2 0 10G 0 lvm
└─sdc2 8:34 0 5G 0 part
└─md2 9:2 0 5G 0 raid1
└─md10 9:10 0 10G 0 raid0
└─vg1-lv1 253:2 0 10G 0 lvm
sdd 8:48 0 20G 0 disk
├─sdd1 8:49 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm
│ ├─vg1-lv5 253:3 0 10G 0 lvm /lv5
│ ├─vg1-lv11-real 253:5 0 2G 0 lvm
│ │ ├─vg1-lv11 253:4 0 2G 0 lvm
│ │ └─vg1-lv11bak 253:7 0 2G 0 lvm
│ └─vg1-lv11bak-cow 253:6 0 2G 0 lvm
│ └─vg1-lv11bak 253:7 0 2G 0 lvm
├─sdd2 8:50 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm
│ ├─vg1-lv5 253:3 0 10G 0 lvm /lv5
│ ├─vg1-lv11-real 253:5 0 2G 0 lvm
│ │ ├─vg1-lv11 253:4 0 2G 0 lvm
│ │ └─vg1-lv11bak 253:7 0 2G 0 lvm
│ └─vg1-lv11bak-cow 253:6 0 2G 0 lvm
│ └─vg1-lv11bak 253:7 0 2G 0 lvm
├─sdd3 8:51 0 5G 0 part
│ └─md5 9:5 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm
│ ├─vg1-lv5 253:3 0 10G 0 lvm /lv5
│ ├─vg1-lv11-real 253:5 0 2G 0 lvm
│ │ ├─vg1-lv11 253:4 0 2G 0 lvm
│ │ └─vg1-lv11bak 253:7 0 2G 0 lvm
│ └─vg1-lv11bak-cow 253:6 0 2G 0 lvm
│ └─vg1-lv11bak 253:7 0 2G 0 lvm
└─sdd4 8:52 0 5G 0 part
└─md5 9:5 0 10G 0 raid5
└─md50 9:50 0 20G 0 raid0
├─vg1-lv1 253:2 0 10G 0 lvm
├─vg1-lv5 253:3 0 10G 0 lvm /lv5
├─vg1-lv11-real 253:5 0 2G 0 lvm
│ ├─vg1-lv11 253:4 0 2G 0 lvm
│ └─vg1-lv11bak 253:7 0 2G 0 lvm
└─vg1-lv11bak-cow 253:6 0 2G 0 lvm
└─vg1-lv11bak 253:7 0 2G 0 lvm
sde 8:64 0 20G 0 disk
├─sde1 8:65 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm
│ ├─vg1-lv5 253:3 0 10G 0 lvm /lv5
│ ├─vg1-lv11-real 253:5 0 2G 0 lvm
│ │ ├─vg1-lv11 253:4 0 2G 0 lvm
│ │ └─vg1-lv11bak 253:7 0 2G 0 lvm
│ └─vg1-lv11bak-cow 253:6 0 2G 0 lvm
│ └─vg1-lv11bak 253:7 0 2G 0 lvm
├─sde2 8:66 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm
│ ├─vg1-lv5 253:3 0 10G 0 lvm /lv5
│ ├─vg1-lv11-real 253:5 0 2G 0 lvm
│ │ ├─vg1-lv11 253:4 0 2G 0 lvm
│ │ └─vg1-lv11bak 253:7 0 2G 0 lvm
│ └─vg1-lv11bak-cow 253:6 0 2G 0 lvm
│ └─vg1-lv11bak 253:7 0 2G 0 lvm
├─sde3 8:67 0 5G 0 part
│ └─md6 9:6 0 10G 0 raid5
│ └─md50 9:50 0 20G 0 raid0
│ ├─vg1-lv1 253:2 0 10G 0 lvm
│ ├─vg1-lv5 253:3 0 10G 0 lvm /lv5
│ ├─vg1-lv11-real 253:5 0 2G 0 lvm
│ │ ├─vg1-lv11 253:4 0 2G 0 lvm
│ │ └─vg1-lv11bak 253:7 0 2G 0 lvm
│ └─vg1-lv11bak-cow 253:6 0 2G 0 lvm
│ └─vg1-lv11bak 253:7 0 2G 0 lvm
└─sde4 8:68 0 5G 0 part
└─md6 9:6 0 10G 0 raid5
└─md50 9:50 0 20G 0 raid0
├─vg1-lv1 253:2 0 10G 0 lvm
├─vg1-lv5 253:3 0 10G 0 lvm /lv5
├─vg1-lv11-real 253:5 0 2G 0 lvm
│ ├─vg1-lv11 253:4 0 2G 0 lvm
│ └─vg1-lv11bak 253:7 0 2G 0 lvm
└─vg1-lv11bak-cow 253:6 0 2G 0 lvm
└─vg1-lv11bak 253:7 0 2G 0 lvm
sr0 11:0 1 1024M 0 ro