VMware 安装 CentOS 7.0 测试 RAID
来源:互联网 发布:javascript常用函数 编辑:程序博客网 时间:2024/06/05 20:21
安装操作系统时创建 RAID
首先需要一提的是,在创建虚拟机时,操作系统的选择一定要正确,比如我们这里的 iso 安装包是64位的,就要选取CentOS 64
位,如果只选择CentOS
,会造成虚拟机安装完毕后无法上网(应该是网卡驱动没有正确安装)。
创建虚拟机
首先创建虚拟机,选择稍后安装操作系统
,硬盘设置为10GB,完成后再添加硬盘,每块大小最好一样为5GB,我这里添加了4块,共5块硬盘。
之后开启虚拟机,进行操作系统的安装。
安装操作系统
很简单的操作后来到下面界面。
在软件选择
中选择了GNOME 桌面
,右侧已选环境的附加选项
全部未勾选
。
下一步选择安装位置,可以看出,设备选择
中一共有我们刚才添加的5块硬盘,全部勾选上,在其他存储选项
中勾选我要配置分区
,然后点击左上角的完成
。
下面开始手动分区。
不知为何安装界面在VMware
中展开不全,所以这里分区方案
保持默认的LVM
,点击点这里自动创建他们(C)。
我测试的分区方案是,/boot
分500M
,swap
分2048M
,剩下的7.5G
分给/
,还有4块硬盘组成RAID
分给/home
。在分配硬盘的时候,Device Type
选取LVM
,Volume Group
中可以设置从哪些硬盘中分取空间,我的做法是/
/boot
swap
使用第一块硬盘;把其它硬盘新建一个分组用来划分/home
的空间,同时,对/home
,Device Type
选取RAID
后,右边的Volume Group
变为RAID Level
,选取为RAID 5
,然后上面Device
的Modify
按钮激活,选取剩下的四块硬盘。
确定后就可以点击开始安装
了,设置好root
密码,新建账号,等待即可。
利用 mdadm 创建 RAID 并挂载
如果希望安装好操作系统后,对未使用的硬盘创建 RAID,即上面在选择安装目标位置
的硬盘时有一些没有勾选,比如我测试时只够了第一块硬盘,然后分区并安装系统,这时可以在终端利用mdadm
进行 RAID 的配置。这里需要说明,下面的操作均是在root
下进行。
首先df -h
查看系统的磁盘空间占用情况,下面是我的输出:
文件系统 容量 已用 可用 已用% 挂载点/dev/mapper/centos-root 5.0G 3.3G 1.8G 66% /devtmpfs 911M 0 911M 0% /devtmpfs 921M 92K 921M 1% /dev/shmtmpfs 921M 8.9M 912M 1% /runtmpfs 921M 0 921M 0% /sys/fs/cgroup/dev/mapper/centos-home 13G 38M 13G 1% /home/dev/sda1 497M 124M 373M 25% /boot/dev/sr0 4.1G 4.1G 0 100% /run/media/ycg/CentOS 7 x86_64
可以看出只有一块硬盘/dev/sda1
(目录/home
也是选择了/dev/sda
这块硬盘,但是不知道为何文件系统显示的是/dev/mapper/centos-home
,怀疑有两种可能:安装操作系统时Device Type
选取LVM
会生成磁盘的映射/dev/mapper
,或者,虚拟机下与真实安装不一样。目测前一种靠谱),再利用fdisk -l | grep /dev/sd
看到
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区磁盘 /dev/sdc:21.5 GB, 21474836480 字节,41943040 个扇区磁盘 /dev/sdd:21.5 GB, 21474836480 字节,41943040 个扇区磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区/dev/sda1 * 2048 1026047 512000 83 Linux/dev/sda2 1026048 41943039 20458496 8e Linux LVM磁盘 /dev/sde:21.5 GB, 21474836480 字节,41943040 个扇区
的确是sda, sdb, sdc, sdd, sde
五块硬盘,其中操作系统安装在sda
,其余四块硬盘没有使用。我们下面就利用这四块硬盘创建 RAID。
mdadm --create --auto=yes /dev/md0 --level=5 --raid-devices=4 --spare-devices=0 /dev/sd[b,c,d,e]
上面的命令表明利用sdb, sdc, sdd, sde
四块硬盘创建level
为5
的 RAID,即RAID5
,其设备名为/dev/md0
,其中四块硬盘都用来做 RAID 的装置,没有备用硬盘。如果硬盘比较多,可以令--spare-devices=1
,这时候硬盘的数目应该等于 raid-devices
与spare-devices
数目之和。
输入上面创建 RAID 的命令后,CentOS
图形界面会报错阵列已降级
,在磁盘
软件的界面中显示一个磁盘缺失
使用
mdadm --detail /dev/md0
查看详细信息后也发现类似情况
/dev/md0: Version : 1.2 Creation Time : Fri Dec 25 09:58:41 2015 Raid Level : raid5 Array Size : 62865408 (59.95 GiB 64.37 GB) Used Dev Size : 20955136 (19.98 GiB 21.46 GB) Raid Devices : 4 Total Devices : 4 Persistence : Superblock is persistent Update Time : Fri Dec 25 09:59:02 2015 State : clean, degraded, recovering Active Devices : 3Working Devices : 4 Failed Devices : 0 Spare Devices : 1 Layout : left-symmetric Chunk Size : 512K Rebuild Status : 11% complete Name : localhost.localdomain:0 (local to host localhost.localdomain) UUID : 85d38e21:ee251913:f49caedb:6e36ebc5 Events : 4 Number Major Minor RaidDevice State 0 8 16 0 active sync /dev/sdb 1 8 32 1 active sync /dev/sdc 2 8 48 2 active sync /dev/sdd 4 8 64 3 spare rebuilding /dev/sde
从其中
Rebuild Status : 11% complete......4 8 64 3 spare rebuilding /dev/sde
发现确实有硬盘在重建。一开始在这里纠结了好久,试了好多次,每次都是这样的情况,重新安装系统也不行。后来仔细查看网上 RAID 的相关介绍,发现这就是正常情况,因为 RAID5 有磁盘备份
的功能,每个循环写入时,都记录部分同位检查码 (parity)
。初次创建 RAID 时需要生成同位检查码
,所以会有rebuilding
啦!其实终端并没有报错,只是系统软件报错,不知道这算不算一个 bug。
在等待一段时间,rebuilding
完毕后,我们的 RAID 就创建好了!此时再查看详细信息,可以看到
/dev/md0: Version : 1.2 Creation Time : Fri Dec 25 09:58:41 2015 Raid Level : raid5 Array Size : 62865408 (59.95 GiB 64.37 GB) Used Dev Size : 20955136 (19.98 GiB 21.46 GB) Raid Devices : 4 Total Devices : 4 Persistence : Superblock is persistent Update Time : Fri Dec 25 10:02:00 2015 State : clean Active Devices : 4Working Devices : 4 Failed Devices : 0 Spare Devices : 0 Layout : left-symmetric Chunk Size : 512K Name : localhost.localdomain:0 (local to host localhost.localdomain) UUID : 85d38e21:ee251913:f49caedb:6e36ebc5 Events : 20 Number Major Minor RaidDevice State 0 8 16 0 active sync /dev/sdb 1 8 32 1 active sync /dev/sdc 2 8 48 2 active sync /dev/sdd 4 8 64 3 active sync /dev/sde
没有问题啦~ 如果有spare disk
的话,输出会有些不一样,可以参考《鸟哥私房菜》。使用下面命令
cat /proc/mdstat
也可以查看磁盘阵列的信息
Personalities : [raid6] [raid5] [raid4] md0 : active raid5 sde[4] sdd[2] sdc[1] sdb[0] 62865408 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]unused devices: <none>
我们看第二行,md0
是由sdb, sdc, sdd, sde
组成的raid5
,第三行最后[4/4]
说明 md0 需要 4 个装置且这 4 个装置均正常运行,[UUUU]
代表的是四个所需的装置 [4/4]
的启动情况,U
代表正常运行,_
代表不正常。
下面将/dev/md0
格式化为xfs
,这时与前面安装时选择的File System
类型一致
mkfs -t xfs /dev/md0
然后创建文件夹,挂载
mkdir /mnt/raidmount /dev/md0 /mnt/raid
再用df -h
,
文件系统 容量 已用 可用 已用% 挂载点/dev/mapper/centos-root 5.0G 3.3G 1.8G 66% /devtmpfs 911M 0 911M 0% /devtmpfs 921M 148K 921M 1% /dev/shmtmpfs 921M 8.9M 912M 1% /runtmpfs 921M 0 921M 0% /sys/fs/cgroup/dev/mapper/centos-home 13G 38M 13G 1% /home/dev/sda1 497M 124M 373M 25% /boot/dev/sr0 4.1G 4.1G 0 100% /run/media/ycg/CentOS 7 x86_64/dev/md0 60G 33M 60G 1% /mnt/raid
发现/dev/md0
已经挂载到/mnt/raid
可以使用了。
如果重启系统,会发现/dev/md0
变为未挂载的状态,需要重新挂载才能使用。下面讲一下如何自动挂载。前面说过,命令
mdadm --detail /dev/md0
会输出一些信息,其中一行包括类似下面的UUID识别码
用于该 RAID 装置向系统注册
UUID : 85d38e21:ee251913:f49caedb:6e36ebc5
下面根据UUID
配置 RAID,配置文件名为mdadm.conf
,默认是不存在的,需要手工创建。该配置文件存在的主要作用是系统启动的时候能够自动加载软 RAID,同时也方便日后管理。mdadm.conf
文件内容包括由DEVICE
选项指定用于 RAID 的所有设备;ARRAY
选项所指定阵列的设备名、RAID 级别、阵列中活动设备的数目以及设备的UUID号。
vi /etc/mdadm.conf
添加如下内容
DEVICE /dev/sdb /dev/sdc /dev/sdd /dev/sdeARRAY /dev/md0 level=raid5 UUID=85d38e21:ee251913:f49caedb:6e36ebc5
或者直接只添加一行
ARRAY /dev/md0 UUID=85d38e21:ee251913:f49caedb:6e36ebc5
然后修改下面文件
vi /etc/fstab
最后一行添加
/dev/md0 /mnt/raid xfs defaults 1 2
即可。查看是否能顺利挂载
umount /dev/md0; mount -adf /mnt/raid
得到输出
文件系统 1K-块 已用 可用 已用% 挂载点/dev/md0 62826496 33312 62793184 1% /mnt/raid
没有问题。重启再看看df -h
文件系统 容量 已用 可用 已用% 挂载点/dev/mapper/centos-root 5.0G 3.3G 1.8G 66% /devtmpfs 911M 0 911M 0% /devtmpfs 921M 160K 921M 1% /dev/shmtmpfs 921M 9.0M 912M 1% /runtmpfs 921M 0 921M 0% /sys/fs/cgroup/dev/md0 60G 33M 60G 1% /mnt/raid/dev/mapper/centos-home 13G 38M 13G 1% /home/dev/sda1 497M 139M 359M 28% /boot/dev/sr0 4.1G 4.1G 0 100% /run/media/ycg/CentOS 7 x86_64
顺利挂载。
上面所有操作都是在root
下进行的,如果是普通用户,刚开始对/mnt/raid
没有写的权限,这时需要su
到root
,然后
chmod a+w /mnt/raid/
到此普通用户也可以用了。
最后说一下怎么关闭RAID
。首先卸载
umount /dev/md0
然后把刚才添加到/etc/fstab
最后一行的内容删除,再删除/etc/mdadm.conf
文件,再使用
mdadm --stop /dev/md0
将RAID
关闭
mdadm: stopped /dev/md0
查看 RAID 的状态cat /proc/mdstat
,
Personalities : [raid6] [raid5] [raid4] unused devices: <none>
发现已关闭。
使用
下面是/mnt/raid
的使用建议。我的想法是,在这个目录下每个用户由root
建立一个与用户名同名的文件夹,比如叫ycg
,然后修改属性
chown -R ycg:ycg ycg
表明将文件夹的所有者和群组均改为ycg
,然后修改权限
chmod 700 ycg
就可以在这个目录下愉快地玩耍啦~~~
总结
本文讨论了两种创建 RAID 的方式,未讨论 RAID 出故障之后的救援模式,创建时也没用使用备用硬盘
。
参考链接
http://vbird.dic.ksu.edu.tw/linux_basic/0420quota_2.php
http://blog.chinaunix.net/uid-14730816-id-136478.html
https://linux.cn/article-6102-1.html
http://blog.sina.com.cn/s/blog_692fe2930102vra5.html
http://blog.itpub.net/26723566/viewspace-753700/
http://www.linuxidc.com/Linux/2012-04/59111.htm
http://linux.it.net.cn/CentOS/fast/2015/0507/15180.html
http://www.centoscn.com/CentOS/Intermediate/2013/0805/1066.html
- VMware 安装 CentOS 7.0 测试 RAID
- VMware中使用CentOS安装并测试Hadoop
- VMware centOS 安装VMware Tools
- 在VMware虚拟机中安装CentOS 7.0
- [ CentOS ] 安装VMware Tools
- vmware 安装 centos 5.4
- Centos 安装 vmware tools
- centos 安装 vmware tools
- Vmware 安装Centos
- centos安装vmware tools
- CentOS安装vmware tools
- vmware虚拟机安装centos
- [CentOS] 安装VMware Tools
- VMware中安装CentOS
- CentOS安装VMware Tools
- VMware 安装CentOS
- Vmware中安装CentOS
- CentOS安装VMware Tools
- SVN中trunk,branches,tags用法详解
- 判断手机是否有ROOT 权限
- oracle之乘法口诀
- 分割视图控制器(UISplitViewController)
- hibernate 中left join 与left join fetch ,right join与right join fetch 等的区别
- VMware 安装 CentOS 7.0 测试 RAID
- UIWebView 请求PC网址
- WebSocket 实战
- 计算几何算法概览
- JDK线程池实践
- 支付宝支付公钥私钥等参数设置
- HDFS JAVA客户端的权限错误:Permission denied
- 第三十九课——数字游戏
- java之反射技术(一)