Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
topics:zfs-on-linux-mount-raw-pool-image [2017/03/25 18:10]
orzfly
topics:zfs-on-linux-mount-raw-pool-image [2017/03/26 03:18]
orzfly
Line 5: Line 5:
 ===== Mounting ===== ===== Mounting =====
  
-<code shell-session>+  - Mount image as loop device<code>
 # losetup /dev/loop0 rpool.img # losetup /dev/loop0 rpool.img
- +</code> 
-# kpartx -av /dev/loop0 +  List partitions in loop<code>
-add map loop0p1 (252:0): 0 44019712 linear 7:0 2048 +
-add map loop0p9 (252:1): 0 16384 linear 7:0 44021760 +
 # kpartx -l /dev/loop0 # kpartx -l /dev/loop0
 loop0p1 : 0 44019712 /dev/loop0 2048 loop0p1 : 0 44019712 /dev/loop0 2048
 loop0p9 : 0 16384 /dev/loop0 44021760 loop0p9 : 0 16384 /dev/loop0 44021760
 +</code> 
 +  - Create device mappings of partitions<code> 
 +# kpartx -av /dev/loop0 
 +add map loop0p1 (252:0): 0 44019712 linear 7:0 2048 
 +add map loop0p9 (252:1): 0 16384 linear 7:0 44021760 
 +</code> 
 +  - Create mount point<code>
 # mkdir /mnt/misa # mkdir /mnt/misa
 +</code> 
 +  - Try import the ZFS pool, but it will definitely fail because 1) my ''rpool.img'' is readonly 2) ''rpool'' is already used on my system<code>
 # zpool import -R /mnt/misa -d /dev/mapper # zpool import -R /mnt/misa -d /dev/mapper
    pool: rpool    pool: rpool
Line 29: Line 33:
         rpool       ONLINE         rpool       ONLINE
           loop0     ONLINE           loop0     ONLINE
 +</code> 
 +  - With the id from previous result, we can import this pool with a new name ''misa''<code>
 # zpool import -o readonly=on -f -d /dev/mapper 3090542417815288870 misa -R /mnt/misa # zpool import -o readonly=on -f -d /dev/mapper 3090542417815288870 misa -R /mnt/misa
 +</code> 
 +  - Done<code>
 # zpool status # zpool status
   pool: misa   pool: misa
Line 71: Line 77:
  
 ===== Unmounting ===== ===== Unmounting =====
-<code shell-session>+  - Export the pool<code>
 # zpool export misa # zpool export misa
 +</code> 
 +  - Disconnect the device map files using kpartx<code>
 # kpartx -dv /dev/loop0 # kpartx -dv /dev/loop0
 del devmap : loop0p9 del devmap : loop0p9
 del devmap : loop0p1 del devmap : loop0p1
 +</code> 
 +  - Unload loop device<code>
 # losetup -d /dev/loop0 # losetup -d /dev/loop0
 </code> </code>
Line 84: Line 92:
   * https://groups.google.com/forum/#!topic/zfs-fuse/s2njFgkOfhg   * https://groups.google.com/forum/#!topic/zfs-fuse/s2njFgkOfhg
   * http://thegeekdiary.com/solaris-zfs-how-to-import-2-pools-that-have-the-same-names/   * http://thegeekdiary.com/solaris-zfs-how-to-import-2-pools-that-have-the-same-names/
 +  * https://nfolamp.wordpress.com/2010/08/16/mounting-raw-image-files-and-kpartx/
  
 {{tag>zfs zfs-on-linux disk-image kpartx}} {{tag>zfs zfs-on-linux disk-image kpartx}}