loop devices
Thu 14 January 2016
Loop devices are used to acces any file as if it were a block device such as a disk. On GNU/linux, the canonical command to interact with loop devices is losetup . To list the next usable loop device : losetup -f
disk image loop mount
The most spread usage of loop devices is mounting a file such as an iso or a img file as if it were a disk.
newloop = $( losetup -f )
losetup $newloop /path/to/iso
mount $newloop /mnt
freebsd md
On UNIX, loop device interaction is different. On freeBSD (since freeBSD 5) you may use mdconfig . To mount an iso file:
swap file over any filesystem
swap can be either into a dedicated partition or into a file. In the second case, the file cannot reside anywhere. I understand (but I may be mistaken) that the kernel will try to access the swap file without using VFS . Thus, the number of filesystem a swap can reside on is limited and does not include network filesystem . One way to avoid this limitation is to create a loop device. The kernel will access a block device (the loop device). You may expect a dramatic fall in performance (due to number of abstraction layers).
Donnot forget that swap can host cached information in an unencrypted way (such as RAM , but in a more persistent way).
create file
First of all, you may create a file. The most obvious way is to use dd:
dd if=/dev/zero of=/path/to/file bs=1M count=512
But one can also use truncate:
truncate -s 512M /path/to/file
Do not forget to format it as a swap partition ( man mkswap ) if you use it a partition or to check permissions if you use it as a swapfile; and to activate this swap ( man swapon ).
mount file
This section is greatly inspired by this post .
swapfile=$(losetup -f)
truncate -s 8G /path/to/file # create 8G sparse swap file
losetup $swapfile /path/to/file # mount file to loop
mkswap $swapfile
swapon $swapfile
Related articles (or not):
- awesome global shortcut
- UTF8, base64 and other encoding conversion
- HTTP to HTTPS
- quick and easy calendar
- GPG key renewal
Category: how to Tagged: FAQs Help and Tutorials Linux tools Unix how to unix-like