linux下使用mdadm模拟阵列--模拟虚拟磁盘

 在进行RAID数据恢复技术研究的实验中,如果没有多余的硬盘来做测试。则可以在linux下使用文件来模拟磁盘,以供测试目的。
  其模拟过程如下所示:

1)以root用户创建一个阵列磁盘所在的目录。 
   [root@book u01]# mkdir –p /u01/asmdisks


2)通过dd命令创建6个400M大小的文件,每个文件代表一块磁盘。
      [root@book u01]# cd asmdisks
  [root@book asmdisks]# dd if=/dev/zero f=asm_disk1 bs=1024k count=400
  [root@book asmdisks]# dd if=/dev/zero f=asm_disk2 bs=1024k count=400
  [root@book asmdisks]# dd if=/dev/zero f=asm_disk3 bs=1024k count=400
  [root@book asmdisks]# dd if=/dev/zero f=asm_disk4 bs=1024k count=400
  [root@book asmdisks]# dd if=/dev/zero f=asm_disk5 bs=1024k count=400
  [root@book asmdisks]# dd if=/dev/zero f=asm_disk6 bs=1024k count=400
 
3)将这些文件与裸设备关联。  
    [root@book asmdisks]# chmod 777 asm_disk*  
  [root@book asmdisks]# losetup /dev/loop1 asm_disk1  
  [root@book asmdisks]# losetup /dev/loop2 asm_disk2  
  [root@book asmdisks]# losetup /dev/loop3 asm_disk3  
  [root@book asmdisks]# losetup /dev/loop4 asm_disk4  
  [root@book asmdisks]# losetup /dev/loop5 asm_disk5  
  [root@book asmdisks]# losetup /dev/loop6 asm_disk6  
  [root@book asmdisks]# raw /dev/raw/raw1 /dev/loop1  
  [root@book asmdisks]# raw /dev/raw/raw2 /dev/loop2  
  [root@book asmdisks]# raw /dev/raw/raw3 /dev/loop3  
  [root@book asmdisks]# raw /dev/raw/raw4 /dev/loop4  
  [root@book asmdisks]# raw /dev/raw/raw5 /dev/loop5  
  [root@book asmdisks]# raw /dev/raw/raw6 /dev/loop6  
  [root@book asmdisks]# chown oracle:dba /dev/raw/raw1  
  [root@book asmdisks]# chown oracle:dba /dev/raw/raw2  
  [root@book asmdisks]# chown oracle:dba /dev/raw/raw3  
  [root@book asmdisks]# chown oracle:dba /dev/raw/raw4  
  [root@book asmdisks]# chown oracle:dba /dev/raw/raw5  
  [root@book asmdisks]# chown oracle:dba /dev/raw/raw6


注意:如果要删除通过dd模拟出的虚拟磁盘文件的话,直接删除模拟出的磁盘文件(也就是asm_disk1、asm_disk2…asm_disk6)还不够,
  还必须执行losetup -d /dev/loopN,在这里N从1到6。否则,磁盘文件所占用的磁盘空间不能释放。

你可能感兴趣的:(oracle,linux,测试,disk,磁盘)