Linux 组 raid 1
简述
前段时间在家翻箱子翻到了两块 14 年的机械硬盘,一块是西数的蓝盘,另一块是 seg 什么的,不知道是什么牌子,反正放着也是放着,思来想去,想用来当自己的储存服务器,储存一些需要持久化储存的数据,例如照片、视频或者一些比较重要的数据什么的
实话说这两块硬盘不是很敢用,什么时候突然暴毙就完蛋了,但是突然又想起了之前在微信公众号看到的一种技术方式——磁盘冗余阵列,根据各个 raid 等级可以用两个或多个硬盘组成不同的效果,可以让自己的数据储存的更放心一些,所以也就有了这篇文章
这篇文章我想记录一下组 raid 1 的过程以及踩坑记录,希望能不翻车。
安装 mdadm
Mdadm 是管理 Linux 上软件 RAID 的实用程序。它在所有主要发行版中都可用。
sudo apt-get update && sudo apt-get install mdadm
|
首先看一下我的两个机械硬盘属于被识别为什么名字,其中 sdc 是我的两个机械硬盘,之前装飞牛 nas 遗留的 raid 0,还没有怎么处理它
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 931.5G 0 disk └─sda1 8:1 0 931.5G 0 part └─md127 9:127 0 1.8T 0 raid0 └─trim_53fde9e3_abc8_4c19_9692_c236b5ce6dcf-0 254:2 0 1.8T 0 lvm sdb 8:16 0 119.2G 0 disk ├─sdb1 8:17 0 512M 0 part /boot/efi ├─sdb2 8:18 0 488M 0 part /boot └─sdb3 8:19 0 118.3G 0 part ├─Rubbish--computer--vg-root 254:0 0 1T 0 lvm / └─Rubbish--computer--vg-swap_1 254:1 0 980M 0 lvm [SWAP] sdc 8:32 0 931.5G 0 disk └─sdc1 8:33 0 931.5G 0 part └─md127 9:127 0 1.8T 0 raid0 └─trim_53fde9e3_abc8_4c19_9692_c236b5ce6dcf-0 254:2 0 1.8T 0 lvm nvme0n1 259:0 0 931.5G 0 disk └─nvme0n1p1 259:1 0 931.5G 0 part └─Rubbish--computer--vg-root 254:0 0 1T 0 lvm /
|
卸载原来的 raid 0
直接给 sda 和 sdc 重新分区就好了
fdisk /dev/sda // 按 n,一直回车,然后按 w 保存 fdisk /dev/sdc // 同上
|
操作完之后重启一下,输入 lsblk 就变成了这样
root@Rubbish-computer:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 931.5G 0 disk └─sda1 8:1 0 931.5G 0 part sdb 8:16 0 119.2G 0 disk ├─sdb1 8:17 0 512M 0 part /boot/efi ├─sdb2 8:18 0 488M 0 part /boot └─sdb3 8:19 0 118.3G 0 part ├─Rubbish--computer--vg-root 254:0 0 1T 0 lvm / └─Rubbish--computer--vg-swap_1 254:1 0 980M 0 lvm [SWAP] sdc 8:32 0 931.5G 0 disk └─sdc1 8:33 0 931.5G 0 part nvme0n1 259:0 0 931.5G 0 disk └─nvme0n1p1 259:1 0 931.5G 0 part └─Rubbish--computer--vg-root 254:0 0 1T 0 lvm /
|
组 raid 1
照着输命令,这个命令的意思是在 md1 上创建 raid1,然后选择硬盘
mdadm --create --verbose /dev/md1 --level=1 --raid-devices=2 /dev/sda1 /dev/sdc1 // 有选项就输 y
|
root@Rubbish-computer:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 931.5G 0 disk └─sda1 8:1 0 931.5G 0 part └─md1 9:1 0 931.4G 0 raid1 sdb 8:16 0 119.2G 0 disk ├─sdb1 8:17 0 512M 0 part /boot/efi ├─sdb2 8:18 0 488M 0 part /boot └─sdb3 8:19 0 118.3G 0 part ├─Rubbish--computer--vg-root 254:0 0 1T 0 lvm / └─Rubbish--computer--vg-swap_1 254:1 0 980M 0 lvm [SWAP] sdc 8:32 0 931.5G 0 disk └─sdc1 8:33 0 931.5G 0 part └─md1 9:1 0 931.4G 0 raid1 nvme0n1 259:0 0 931.5G 0 disk └─nvme0n1p1 259:1 0 931.5G 0 part └─Rubbish--computer--vg-root 254:0 0 1T 0 lvm / root@Rubbish-computer:~# fdisk /dev/m
|
给 md1 新建分区
fdisk /dev/md1 // 依次输入: n -> 回车 -> 回车 -> 回车 w
|
root@Rubbish-computer:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 931.5G 0 disk └─sda1 8:1 0 931.5G 0 part └─md1 9:1 0 931.4G 0 raid1 └─md1p1 259:2 0 931.4G 0 part sdb 8:16 0 119.2G 0 disk ├─sdb1 8:17 0 512M 0 part /boot/efi ├─sdb2 8:18 0 488M 0 part /boot └─sdb3 8:19 0 118.3G 0 part ├─Rubbish--computer--vg-root 254:0 0 1T 0 lvm / └─Rubbish--computer--vg-swap_1 254:1 0 980M 0 lvm [SWAP] sdc 8:32 0 931.5G 0 disk └─sdc1 8:33 0 931.5G 0 part └─md1 9:1 0 931.4G 0 raid1 └─md1p1 259:2 0 931.4G 0 part nvme0n1 259:0 0 931.5G 0 disk └─nvme0n1p1 259:1 0 931.5G 0 part └─Rubbish--computer--vg-root 254:0 0 1T 0 lvm /
|
格式化 md1p1,格式为 ext4
mkfs.ext4 /dev/md1p1 mkdir /mechanical_raid1 mount /dev/md1p1 /mnt/mechanical_raid1/
|
root@Rubbish-computer:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 931.5G 0 disk └─sda1 8:1 0 931.5G 0 part └─md1 9:1 0 931.4G 0 raid1 └─md1p1 259:2 0 931.4G 0 part /mnt/mechanical_raid1 sdb 8:16 0 119.2G 0 disk ├─sdb1 8:17 0 512M 0 part /boot/efi ├─sdb2 8:18 0 488M 0 part /boot └─sdb3 8:19 0 118.3G 0 part ├─Rubbish--computer--vg-root 254:0 0 1T 0 lvm / └─Rubbish--computer--vg-swap_1 254:1 0 980M 0 lvm [SWAP] sdc 8:32 0 931.5G 0 disk └─sdc1 8:33 0 931.5G 0 part └─md1 9:1 0 931.4G 0 raid1 └─md1p1 259:2 0 931.4G 0 part /mnt/mechanical_raid1 nvme0n1 259:0 0 931.5G 0 disk └─nvme0n1p1 259:1 0 931.5G 0 part └─Rubbish--computer--vg-root 254:0 0 1T 0 lvm /
|
配置开机挂载
查找 md1p1 的 UUID
root@Rubbish-computer:~# blkid /dev/mapper/Rubbish--computer--vg-swap_1: UUID="311186db-54d9-4e03-93b7-b2fa17b058f2" TYPE="swap" /dev/nvme0n1p1: UUID="dm0hnz-6587-hDDp-kYup-OmtG-Mhp3-U23iZd" TYPE="LVM2_member" PARTUUID="f482e853-4f6b-3f48-9194-b574a2f2c6bd" /dev/sdb2: UUID="c3c94fc5-5d17-44b7-ae10-122a34d801a3" BLOCK_SIZE="1024" TYPE="ext2" PARTUUID="5e0ac597-ccdd-496c-a33c-7b8f149fb276" /dev/sdb3: UUID="90TQiF-6KDn-p4Eq-ZSXA-x4oA-Xq7Q-2SJF7t" TYPE="LVM2_member" PARTUUID="acc67b2c-f279-47d0-868c-89266ec5e3f1" /dev/sdb1: UUID="2D83-6E26" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="e0896f57-66c5-48ad-b51e-02fef04220f5" /dev/mapper/Rubbish--computer--vg-root: UUID="91903da8-e448-4de6-abcf-2cc73d9ba92b" BLOCK_SIZE="4096" TYPE="ext4" /dev/sdc1: UUID="23ec7260-b69e-aa05-96f8-f8393bee6722" UUID_SUB="64da14d7-8eb0-086a-eb46-a8948a5279cb" LABEL="Rubbish-computer:1" TYPE="linux_raid_member" PARTUUID="578b58f0-9d0c-1f4c-8dec-7f66b139dbe7" /dev/sda1: UUID="23ec7260-b69e-aa05-96f8-f8393bee6722" UUID_SUB="3aa7b1db-83d0-81b2-a348-9de1b6035f40" LABEL="Rubbish-computer:1" TYPE="linux_raid_member" PARTUUID="71010802-ffff-df40-9b00-c0fdfb035a22" /dev/md1p1: UUID="a637a848-0aec-4423-808c-fae7f5bb022a" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="e2da37e8-01"
|
修改配置文件,a637a848-0aec-4423-808c-fae7f5bb022a 是md1p1 的UUID
vim /etc/fstab
// 末尾添加下面这行,这个条目告诉系统在启动时将 UUID 为 // 5607a174-cfb3-476f-b509-a0e2e5f9654b 的 ext4 文件系统挂载到 /mnt/mechanical_raid1目录, // 使用默认挂载选项,不需要备份,并在启动时进行文件系统检查(在根文件系统之后)。 UUID=a637a848-0aec-4423-808c-fae7f5bb022a /mnt/mechanical_raid1 ext4 defaults 0 2
|
拓展
为什么 916G 的总可用空间,只有 870G 可用?
因为默认情况下 ext4 保留约5%的空间给 root 用户(防止普通用户占满内存导致系统问题),解决方式:将5%的保留空间调整到1%
sudo tune2fs -m 1 /dev/md127p1 sudo mount -o remount /mnt/mechanical_raid1 df -h
|
调整后可用空间来到了 907G