ループデバイス
(1) ループデバイスのマウント
# dd if=/dev/zero of=./disk bs=1M count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 0.282565 s, 371 MB/s
#
あたりまえだけど、シリンダとかは無し。
# fdisk -cul disk
ディスク disk: 0 MB, 0 バイト
ヘッド 255, セクタ 63, シリンダ 0, 合計 0 セクタ
Units = セクタ数 of 1 * 512 = 512 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x00000000
#
# mkfs.ext4 disk
mke2fs 1.41.12 (17-May-2010)
disk is not a block special device.
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
25688 inodes, 102400 blocks
5120 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67371008
13 block groups
8192 blocks per group, 8192 fragments per group
1976 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 22 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
#
-o loop 無しだとマウント不可。
# mkdir test_dir
#
# mount -t ext4 disk test_dir/
mount: /tmp/20140405/disk はブロックデバイスではありません (多分 `-o loop' とやってみたら?)
#
-o loop をつけるとマウント可能。
# df
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/mapper/vg_lvs-lv_root
6490856 1743016 4418112 29% /
tmpfs 313696 4 313692 1% /dev/shm
/dev/sda1 495844 32422 437822 7% /boot
# mount -o loop -t ext4 disk test_dir/
#
# df
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/mapper/vg_lvs-lv_root
6490856 1743016 4418112 29% /
tmpfs 313696 4 313692 1% /dev/shm
/dev/sda1 495844 32422 437822 7% /boot
/tmp/20140405/disk 99150 5646 88384 7% /tmp/20140405/test_dir
#
# cat /proc/mounts | grep test
/dev/loop0 /tmp/20140405/test_dir ext4 rw,seclabel,relatime,barrier=1,data=ordered 0 0
#
#
# df
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/mapper/vg_lvs-lv_root
6490856 1743016 4418112 29% /
tmpfs 313696 4 313692 1% /dev/shm
/dev/sda1 495844 32422 437822 7% /boot
/tmp/20140405/disk 99150 5646 88384 7% /tmp/20140405/test_dir
#
#
# umount /tmp/20140405/disk
#
#
# df
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/mapper/vg_lvs-lv_root
6490856 1743016 4418112 29% /
tmpfs 313696 4 313692 1% /dev/shm
/dev/sda1 495844 32422 437822 7% /boot
#
(2) dd でバックアップしたファイルをループデバイスでマウント
# dd if=/dev/sdc1 of=backup.dump
4194241+0 records in
4194241+0 records out
2147451392 bytes (2.1 GB) copied, 40.7263 s, 52.7 MB/s
#
# df
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/mapper/vg_lvs-lv_root
6490856 3840268 2320860 63% /
tmpfs 313696 4 313692 1% /dev/shm
/dev/sda1 495844 32422 437822 7% /boot
# mount -o loop -t ext4 backup.dump test_dir/
# df
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/mapper/vg_lvs-lv_root
6490856 3840268 2320860 63% /
tmpfs 313696 4 313692 1% /dev/shm
/dev/sda1 495844 32422 437822 7% /boot
/tmp/20140405/backup.dump
2064176 1290416 668904 66% /tmp/20140405/test_dir
# cd /tmp/20140405/test_dir/
[root@HTTP01 test_dir]#
これで、/dev/sdc1 を dd した中身が見れる。
以下は、/dev/sdc1 を一旦フォーマットして、リストアしただけ。
# mkfs.ext4 /dev/sdc1
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
131072 inodes, 524280 blocks
26214 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=536870912
16 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
#
# dd if=backup.dump of=/dev/sdc1
4194241+0 records in
4194241+0 records out
2147451392 bytes (2.1 GB) copied, 43.3137 s, 49.6 MB/s
#
以下、参考 URL