Команда Linux losetup
Команда Linux losetup используется для настройки петлевых устройств.
Петлевые устройства могут виртуализировать файлы как блочные устройства, тем самым имитируя целую файловую систему, позволяя пользователям обращаться с ними как с устройствами, такими как жесткие диски, CD-ROM или дисководы для гибких дисков, и монтировать их как каталоги для использования.
Синтаксис
losetup [-d][-e <加密方式>][-o <平移数目>][循环设备代号][文件]
Parameters:
- -d Отсоединить устройство.
- -e<метод шифрования> Включить шифрование.
- -o<номер смещения> Установить номер смещения данных.
Примеры
(1) Создайте пустой файл образа диска. Здесь создайте гибкий диск объемом 1.44M.
$ dd if=/dev/zero of=floppy.img bs=512 count=2880
(2) Используйте losetup, чтобы виртуализировать файл образа диска как блочное устройство.
$ losetup /dev/loop1 floppy.img
(3) Смонтируйте блочное устройство.
$ mount /dev/loop0 /tmp
После вышеуказанных трех шагов мы можем получить доступ к файлу образа диска floppy.img через каталог /tmp, точно так же, как к настоящему блочному устройству.
(4) Размонтируйте петлевое устройство.
$ umount /tmp $ losetup -d /dev/loop1
Полный пример тестирования
1. Сначала создайте пустой файл размером 1G:
# dd if=/dev/zero of=loopfile.img bs=1G count=1 1+0 records in 1+0 records out 1073741824 bytes (1.1 GB) copied, 69.3471 s, 15.5 MB/s
2. Отформатируйте файл в формат ext4:
# mkfs.ext4 loopfile.img 。。。。
3. Используйте команду file для проверки типа отформатированного файла:
# file loopfile.img loopfile.img: Linux rev 1.0 ext4 filesystem data, UUID=a9dfb4a0-6653-4407-ae05-7044d92c1159 (extents) (large files) (huge files)
4. Подготовьтесь к монтированию указанного выше файла:
# mkdir /mnt/loopback # mount -o loop loopfile.img /mnt/loopback
Опция -o loop команды mount может смонтировать любую loopback-файловую систему.
Приведённая выше команда mount фактически эквивалентна следующим двум командам:
# losetup /dev/loop0 loopfile.img # mount /dev/loop0 /mnt/loopback
Итак, на самом деле mount -o loop по умолчанию внутренне смонтировал файл и /dev/loop0.
Однако первый способ (mount -o loop) применим не во всех сценариях. Например, если мы хотим создать файл жёсткого диска, разбить его на разделы, а затем смонтировать один из подразделов, метод -o loop использовать нельзя. Поэтому необходимо действовать следующим образом:
# losetup /dev/loop1 loopfile.img # fdisk /dev/loop1
6. Размонтируйте точку монтирования:
# umount /mnt/loopbackДругие расширения
Справочник команд Linux