Ubuntu使用mdadm工具创建RAID 0

Ubuntu使用mdadm工具创建RAID 0

1. RAID 0 简介

创建RAID 0 至少需要两块以上的硬盘,它将两块以上的硬盘合并成一块,数据连续地分割在每块盘上。 因为带宽加倍,所以读/写速度加倍, 但RAID 0在提高性能的同时,并没有提供数据保护功能,只要任何一块硬盘损坏就会丢失所有数据。因此RAID 0 不可应用于需要数据高可用性的关键领域,只适用于需要提高磁盘读写性能的领域。

2. Ubuntu下mdadm工具安装

Linux下创建软RAID需要依赖工具mdadm,部分Ubuntu发行版系统默认没有自带mdadm工具,需要自行安装。

安装命令如下:

sudo apt install mdadm

3. 创建Raid

1)查看系统磁盘

创建前可以通过如下命令查看可用的磁盘:

sudo lsblk

运行结果(下面结果中的sdb和sdc两个磁盘是我们准备创建RAID 0的两块盘):

NAME                MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                   8:0    0   60G  0 disk 
├─sda1                8:1    0  512M  0 part /boot/efi
├─sda2                8:2    0    1K  0 part 
└─sda5                8:5    0 59.5G  0 part 
  ├─vgubuntu-root   253:0    0 58.6G  0 lvm  /
  └─vgubuntu-swap_1 253:1    0  980M  0 lvm  [SWAP]
sdb                   8:16   0   30G  0 disk 
sdc                   8:32   0   30G  0 disk 
sr0                  11:0    1 1024M  0 rom  

2)创建RAID

创建命令如下:

tony@kylin:~$ sudo mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/sdb /dev/sdc

运行结果:

mdadm: chunk size defaults to 512K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

3)查看创建结果

查看命令如下:

cat /proc/mdstat

运行结果:

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md0 : active raid0 sdc[1] sdb[0]
      62879744 blocks super 1.2 512k chunks
      
unused devices: <none>

从上面的输出结果中可以看到md0已经创建成功。

4)格式化RAID

创建完成后会创建一个虚拟设备:/dev/md0,我们可以通过如下命令格式化:

sudo mkfs.ext4 /dev/md0

运行结果:

mke2fs 1.45.5 (07-Jan-2020)
创建含有 15719936 个块(每块 4k)和 3932160 个inode的文件系统
文件系统UUID:1aaeec0c-d918-4e91-802e-f8f2e9645b56
超级块的备份存储于下列块: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424

正在分配组表: 完成                            
正在写入inode表: 完成                            
创建日志(65536 个块) 完成
写入超级块和文件系统账户统计信息: 已完成 

5)挂载RAID

手动挂载命令如下(手动挂载重启后会失效,下文会介绍如何设置开机自动挂载):

cd /mnt                     # 切换到/mnt路径
sudo mkdir raid0            # mnt为root权限,因此需要使用sudo来创建
sudo mount /dev/md0 raid0/
sudo chown -R tony:tony raid0  # 为方便使用可将目录改为当前用户权限

完成挂载后,我们查看当前文件系统,运行命令:

df -h

运行结果:

文件系统                   容量  已用  可用 已用% 挂载点
udev                       5.9G     0  5.9G    0% /dev
tmpfs                      1.2G  3.2M  1.2G    1% /run
/dev/mapper/vgubuntu-root   58G   18G   38G   32% /
tmpfs                      5.9G   46M  5.8G    1% /dev/shm
tmpfs                      5.0M  4.0K  5.0M    1% /run/lock
tmpfs                      5.9G     0  5.9G    0% /sys/fs/cgroup
/dev/sda1                  511M  4.0K  511M    1% /boot/efi
tmpfs                      1.2G   92K  1.2G    1% /run/user/1000
/dev/md0                    59G   53M   56G    1% /mnt/raid0

从上面结果的最后一行可以看到我们创建的 md0 已经被挂载到了 /mnt/raid0 ,其空间大小为原始的两块磁盘的2倍。

6)开机自动挂载RAID

查询 md0 设备的UUID,命令如下:

sudo blkid /dev/md0

运行结果:

/dev/md0: UUID="1aaeec0c-d918-4e91-802e-f8f2e9645b56" TYPE="ext4"

上面的结果中的UUID后面的字符串即为我们要获取的内容,然后通过 vim 打开配置文件:

sudo vim /etc/fstab

具体配置如下,将下面这行添加到打开的文件末尾即可:

UUID=1aaeec0c-d918-4e91-802e-f8f2e9645b56 /mnt/raid0 ext4 defaults 0 0

4. 保存RAID信息到配置文件

完成上述命令后为保证下次重启RAID配置自动生效,还需要将RAID信息保存到配置文件。
运行如下命令查看RAID详情:

sudo update-initramfs -u
sudo mdadm --detail --scan

运行结果:

ARRAY /dev/md0 metadata=1.2 name=kylin:0 UUID=9692c01a:85861e21:53389a0e:6b4915ad

参照上面配置fstab文件的方法,使用 vim 打开文件 /etc/mdadm/mdadm.conf ,将上面命令的输出结果添加到文件末尾即可。

4. 磁盘损坏替换

5. 数据恢复

6. Raid磁盘迁移(从旧主机迁移到新主机)

7. 删除Raid

    1. 查看并记录包含在raid中的磁盘信息,后面要用到:
    sudo mdadm -D /dev/md0
    
    1. umount 之前组建的raid
    umount /dev/md0
    
    1. 停止raid设备
    mdadm -S /dev/md0
    
    1. 删除raid里的所有磁盘
    mdadm --misc --zero-superblock /dev/sda
    mdadm --misc --zero-superblock /dev/sdb
    
    1. 删除raid和开启启动配置文件中的配置,删除创建时候添加的对应信息
    /etc/mdadm.conf
    /etc/fstab
    
  • 5
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值