天天看點

詳解Linux下挂載和格式化虛拟磁盤

 我們用dd指令就可以建立一個raw格式的虛拟磁盤,通常Xen就是使用這種格式的虛拟磁盤,今天就來讨論下怎樣将虛拟磁盤格式化并且挂載。

虛拟磁盤分區分三種情況:隻有一個分區;有多個分區但不包含lvm;包含lvm;

先建立一個128M的虛拟硬碟在下面的實驗中使用。分三種情況分别介紹如何格式化和挂載。

<a target="_blank" href="http://blog.51cto.com/attachment/201202/214129748.png"></a>

一個分區

直接格式化然後挂載

<a target="_blank" href="http://blog.51cto.com/attachment/201202/214227110.png"></a>

多個分區(不含lvm)

先映射到回環裝置上,然後用fdisk分區

<a target="_blank" href="http://blog.51cto.com/attachment/201202/214458658.png"></a>

losetup把檔案映射到回環裝置中,這時,/dev/loop0就像/dev/sdb,/dev/hdc等一樣,你可以使用fdisk進行分區,我将test.img均分了兩個區,還沒有格式化。

其實對于單分區,在mount時加上-o loop選項,就相當于如下操作

losetup /dev/loop0 test.img

mount /dev/loop0 /mnt (把磁盤作為一個分區時可以用mount /dev/sdb /mnt挂載)

但是多分區時不行,因為需要mount /dev/sdb1 /mnt這樣指定分區号才行。

是以,用kpartx -av /dev/loop0把虛拟磁盤的分區再映射出來。

<a target="_blank" href="http://blog.51cto.com/attachment/201202/215447640.png"></a>

假如/dev/loop0相當于/dev/sdb,那麼/dev/mapper/loop0p1和/dev/mapper/loop0p2相當于/dev/sdb2

挂載即可

<a target="_blank" href="http://blog.51cto.com/attachment/201202/215653959.png"></a>

如何解除安裝呢?反向來一遍

<a target="_blank" href="http://blog.51cto.com/attachment/201202/220116604.png"></a>

包含lvm

同樣,先映射到回環裝置,然後建立一個pv,一個vg,再建立兩個lv

<a target="_blank" href="http://blog.51cto.com/attachment/201202/220957903.png"></a>

這樣實際上隻有一個實體分區,太簡單了,我們把它弄複雜點。

建立兩個實體分區,一個直接格式化,一個做lvm,然後再建立一個vg,兩個lv。

先losetup再fdisk再kpartx,這樣的到了/dev/mapper/loop0p1和/dev/mapper/loop0p2

對/dev/mapper/loop0p1直接mkfs.ext3

在/dev/mapper/loop0p2上建立lvm分區

<a target="_blank" href="http://blog.51cto.com/attachment/201202/223712283.png"></a>

解除安裝時注意去激活卷組

<a target="_blank" href="http://blog.51cto.com/attachment/201202/223955319.png"></a>

假如給我一個有lvm的虛拟磁盤,要怎麼挂載呢?就拿上邊的來說,在kpartx -av後,用vgchange -a y vgg激活卷組,然後就能在/dev/裡看到vgg了,否則看不到。

為什麼以這樣的分區格式為例呢?因為裝linux時預設分區格式就是這樣的,

兩個分區

/dev/sda1 ==&gt;  /boot

/dev/sdb2 ==&gt;  /dev/VolGroup00  ==&gt;  root,home,swap(或者沒有home)

本文轉自nxlhero 51CTO部落格,原文連結:http://blog.51cto.com/nxlhero/780834,如需轉載請自行聯系原作者

繼續閱讀