zoukankan      html  css  js  c++  java
  • Linux下使用mke2fsk格式化虚拟磁盘分区的方法

    原文地址:http://www.2cto.com/os/201202/119963.html

    我们用dd命令就可以创建一个raw格式的虚拟磁盘,通常Xen就是使用这种格式的虚拟磁盘,今天就来讨论下怎样将虚拟磁盘挂载到本地。

    分三种情况:只有一个分区;有多个分区但不包含lvm;包含lvm;

    先创建一个raw的虚拟硬盘在下面的实验中使用。


    一个分区

    直接格式化然后挂载


    多个分区(不含lvm)

    先映射到回环设备上,然后用fdisk分区

    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把虚拟磁盘的分区列出来

    假如/dev/loop0相当于/dev/sdb,那么/dev/mapper/loop0p1和/dev/mapper/loop0p2相当于/dev/sdb2  (注意,mke2fs的目标分区是这样写:/dev/mapper/loop0p1,中间有个mapper)

    挂载即可

    如何卸载呢?反向来一遍


    包含lvm

    同样,先映射到回环设备,然后创建一个pv,一个vg,再创建两个lv

    这样实际上只有一个物理分区,太简单了,弄复杂点。

    创建两个物理分区,一个直接格式化,一个做lvm,然后再创建一个vg,两个lv。

    先losetup再fdisk再kpartx,这样的到了/dev/mapper/loop0p1和/dev/mapper/loop0p2

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

    在/dev/mapper/loop0p2上创建lvm分区

    卸载时注意去激活卷组

    假如给我一个有lvm的虚拟磁盘,要怎么挂载呢?就拿上边的来说,在kpartx -av后,用vgchange -a y vgg激活卷组,然后就能在/dev/里看到vgg了,否则看不到。

    为什么以这样的分区格式为例呢?因为装linux时默认分区格式就是这样的,

    两个分区

    /dev/sda1 ==> /boot

    /dev/sdb2 ==> /dev/VolGroup00 ==> root,home,swap(或者没有home)

  • 相关阅读:
    CF 1119 题解
    CF 582 题解
    CF 1098 题解
    CF 1129 题解
    CF 513 题解
    CF 417 D 题解
    ingress nginx遇到502错误,connect() failed (113 Host is unreachable) while connecting to upstream
    MySQL性能剖析
    MySQL的基准测试
    MySQL架构与历史
  • 原文地址:https://www.cnblogs.com/pengdonglin137/p/3549585.html
Copyright © 2011-2022 走看看