Linux / Unix‎ > ‎

Loop

Create disk in file

  • dd if=/dev/zero of=myVirtualDisk bs=1024 count=30720 to create a 30MB disk file (zero-filled) called virtualfs in the root (/) directory
  • mkfs.ext3 myVirtualDisk
  • mkdir mountPoint
  • mount -o loop myVirtualDisk mountPoint

Convert disk image to VMWARE disk

  • qemu-img convert -f raw myVirtualDisk -O vmdk myVirtualDisk.vmdk

Crypt virtual disk

  • sudo losetup /dev/loop0 myVirtualDisk
  • sudo cryptsetup --verbose --verify-passphrase luksFormat /dev/loop0
  • sudo cryptsetup luksOpen /dev/loop0 myCryptedDisk
  • sudo dmsetup ls
  • sudo mkfs.ext3 -j /dev/mapper/myCryptedDisk

test GRUB in QEMU

sudo dd if=/dev/zero of=disk.img bs=1024 count=1048576
sudo parted disk.img mklabel msdos
sudo parted disk.img mkpart primary ext2 0 954
sudo parted disk.img mkpart extended 954 1069
sudo parted disk.img mkpart logical linux-swap 954 1069
sudo parted disk.img set 1 boot on
sudo parted disk.img mkfs 1 ext2
sudo mkdir mnt
sudo mount -o loop,offset=16384 -t ext2 disk.img mnt
sudo mkdir mnt/grub
sudo cp /boot/grub/stage1 mnt/grub
sudo cp /boot/grub/stage2 mnt/grub
sudo cp /boot/grub/e2fs_stage1_5 mnt/grub
sudo echo "device (hd0) disk.img" > grub.input
sudo echo "root (hd0,0)">> grub.input
sudo echo "setup (hd0)">> grub.input
sudo echo "quit">> grub.input
sudo grub --device-map=/dev/null < grub.input
sudo rm grub.input
sudo echo "splashimage /boot/grub/parkeon.xpm.gz" >> mnt/grub/menu.lst
sudo cp parkeon.xpm.gz mnt/grub/

Comments