раздел loop0 на флешке при установки Arch Linux

На флешке при установки Arch Linux нашел командой lsblk раздел Name: loop0, Size: 706.5M, Type: loop, Mountpoints: /run/archiso/airootfs. Не могу понять к чему он относится и какое ему предназначение? Насколько я понял это bush-скрипты для работы iso образа на флешке.


Ответы (1 шт):

Автор решения: Zt.

на установочном образе archlinux-xxxx.xx.xx-x86_64.iso есть файл /arch/x86_64/airootfs.sfs который по сути является файловой системой squashfs внутри которой размещен корневой каталог / системы. Так вот, при запуске образа archlinux-xxxx.xx.xx-x86_64.iso и выбора соответствующего пункта меню в загрузчике, вышеупомянутый файл airootfs.sfs монтируется как loop-устройство во временный каталог /run/... который размещен в tmpfs то есть в ОЗУ.

$ findmnt /run
TARGET SOURCE FSTYPE OPTIONS
/run   run    tmpfs  rw,nosuid,nodev,relatime,mode=755,inode64

$ findmnt /run/archiso/airootfs
TARGET                SOURCE     FSTYPE   OPTIONS
/run/archiso/airootfs /dev/loop0 squashfs ro,relatime,errors=continue

причем заметим, что сам каталог /run/archiso/airootfs куда смонтирован корень системы доступен только для чтения о чем нам в OPTIONS и говорит параметр ro(read-only) что в принципе не удивительно так как сама файловая система squashfs создана тока для чтения. Но если мы попробуем уже в самом корне / произвести запись, например создать какой-то файл (touch file.txt) то это мы сможет проделать без проблем, так как уже непосредственно сам корень смонтирован как overlay что позволяет наложить изменения сверху и хранить их в оперативной памяти.

$ findmnt -u /
TARGET SOURCE FSTYPE OPTIONS
/      airootfs
              overlay
                     rw,relatime,lowerdir=/run/archiso/airootfs,upperdir=/run/archiso/cowspace/persistent_ARCH_202212/x86_64/upperdir,workdir=/run/archiso/cowspace/persistent_ARCH_202212/x86_64/workdir

п.с.

также дополнительно про непосредственное назначение airootfs при создании iso-образа вы можете почитать в Archiso на арчвике.

→ Ссылка