最近遇到一件很伤脑筋的事情。
前因后果大概是这样的:
1。实验室的服务器安装有4块盘,都是ssd,250GB。
2。突然有一天需要安装windows server 2008,问题来了,平时用的都是linux,现在需要windows server 2008 ,怎么办呢?只能用VMware虚拟机了。
3。安装好虚拟机后真正的问题来了,由于在虚拟机中存储的数据量非常大,而且全都是存储在/home目录下的。
4。这时候我们才发现原来虚拟机根本没有用起来其他几块磁盘。怎么办呢?
(因果关系挺长的。。。。。haha)
这里我想到了两种方法:
-1. 将/home目录扩容。这种方法可以有效利用其他几块硬盘,但是由于虚拟机里面的数据太大,无法备份,安全起见,没有采用这种方法。
-2. 将其他几块硬盘合并称为1块磁盘使用,然后将它挂载到虚拟机存储数据的目录下。说干就干。
下面是具体的操作方法:
1) 首先查看/dev/下有哪些磁盘,我这里有/dev/sda sda1 sda2 sdb1 sdb2 sdc sdc1 sdc2 sdc3 sdd sdd1 这些。然后用dd这个命令将磁盘头信息清空。
比如我清空sdb2这个磁盘
dd if=/dev/zero of=/dev/sdb2 bs=8192 count=100
然后等待结果。
剩下的依次进行这样的操作。需要注意的是,每块硬盘最大数字那个才是空间最大的,例如在sdb sdb1 sdb2中sdb2空间几乎占了sdb空间的99%,所以我这里只用了sdb2 sdc3 sdd1。
2)创建PV
pvcreate /dev/sdb2
其他的依次进行。
3)创建VG
vgcreate ljh /dev/sdb2
vgdisplay
4) 扩容
vgextend ljh /dev/sdc3
vgextend ljh /dev/sdd1
vgdisplay
5)创建LV
lvcreate -L 686G(这里填合并的总大小) -n ljh1 ljh
lvdisplay
6)将LV做成文件系统
mkfs.ext4 /dev/ljh/ljh1
7)创建挂载点并挂载
mkdir /home/ljh/mount-y
chown -R ljh:ljh /home/ljh/mount-y
chmod -R 777 /home/ljh/mount-y
8)设置开机自动挂载
vim /etc/fstab
/dev/ljh/ljh1 /home/ljh/mount-y ext4 defaults 0 0
9) 查看挂载结果
df -h
哈哈到此结束。祝好运!