LINUX.ORG.RU

Монтирование раздела из файла

 


2

2

Я тут опять полез во всякие странные дебри и столкнулся вот с чем:

Создаем файлик

dd if=/dev/zero of=disk.img bs=1M count=10

через fdisk создаем в нем два раздела

fdisk disk.img

Устр-во    Загрузочный начало Конец Секторы Размер Идентификатор Тип
disk.img1 *             2048 10000    7953   3,9M            83 Linux
disk.img2              10240 20479   10240     5M            83 Linux

А вот как работать уже с самими разделами, а именно disk.img1 и disk.img2 я чет не понимаю 0_о" я нигде в системе не вижу файлов соответствующих этим разделам и по этому не могу ни отформатировать ни с монтировать =(

Заранее спасибо.



Последнее исправление: dedalqq (всего исправлений: 5)

udisksctl loop-setup --file PATH [--read-only] [--offset OFFSET] [--size SIZE] [--no-user-interaction]

utf8nowhere ★★★
()

Девелобмент уровня LORа

mdconfig -a -t vnode -f disk.img
newfs /dev/mdX
mount /dev/mdX

Монтируются устройства, а не файлы

anonymous
()
fdisk -lu disk.img
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
...
  Device Boot      Start         End      Blocks   Id  System
  disk.img   *          56     6400000     3199972+   c  W95 FAT32 (LBA)

Sector size * Start = (in the case) 512 * 56 = 28672

sudo mkdir /d1
sudo losetup -o 28672 /dev/loop0 disk.img
sudo mount /dev/loop0 /d1
vodz ★★★★★
()
Последнее исправление: vodz (всего исправлений: 1)
Ответ на: комментарий от anonymous

анонимус уровня LORа

монтируются файловые системы, а не устройства

anonymous
()
[root@m3 ~]# dd if=/dev/zero of=./FS bs=1M count=10
10+0 records in
10+0 records out
10485760 bytes (10 MB, 10 MiB) copied, 0.0646172 s, 162 MB/s

[root@m3 ~]# mkfs.ext4 -c ./FS
mke2fs 1.43.4 (31-Jan-2017)
...

[root@m3 ~]# mkdir ./abc
[root@m3 ~]# mount ./FS ./abc/
[root@m3 ~]#

PROFIT!

IIIypuk ★★★★
()
Последнее исправление: IIIypuk (всего исправлений: 3)

через fdisk создаем в нем два раздела

Зачем? O_o

# создаём файл «образа»
dd if=/dev/zero of=disk.img bs=1M count=10

# создаём на нём файловую систему
mkfs.ext4 disk.img

# монтируем
sudo mount disk.img /mnt

Если тебе нужно два «раздела» — ну создай disk1.img и disk2.img, в них фс, да монтируй как вздумается. Изнутри файла, размеченного fdisk'ом разделы ты не достанешь, для реальных дисков там особая /dev-магия. Может это как-то хитро и возможно, но это уже совсем джедайство (по идее через -o offset=циферь).

Psych218 ★★★★★
()
Последнее исправление: Psych218 (всего исправлений: 3)

После того, как вы создали два раздела, посмотрите смещение и размер внутри файла:

parted disk.img unit b print
Нас будут интересовать поля «Начало» и «Размер» каждого из двух разделов.

Далее делаете в каждом из разделов файловую систему, смотри man mkfs.ext4. Из параметров вызова команды Вас будут интересовать расширенная опция, отвечающая за смещение, -E offset=<указать_в_байтах_значение_поля_Начало,_см_выше>, и «Размер», указываемый в самом последнем параметре вызова в мане как [ fs-size ]. Оба парамтера — целочисленная константа в байтах. Надо быть осторожным, чтобы обе файловые системы точно попали в свои разделы.

Теперь, как монтировать: с помощью -o loop,offset=<указать_в_байтах_значение_поля_Начало,_см_выше>. Указывать размер файловой системы IMHO не надо,так как он уже прописан в самой файловой системе при ее создании.

Способ номер два, для новичков: запускаете QEMU с параметром -hda disk.img, не забыв указать ISO-шник с которого грузиться, и делаете всё с вашим файлом, как с обычным дисковым устройством, возможно потребуется указать QEMU, что тип виртуального жесткого диска — RAW.

Как-то так. Потренируйтесь в тестовом режиме, прежде чем пускать решение в продакшен, в активное содержимое.

Infra_HDC ★★★★★
()
Последнее исправление: Infra_HDC (всего исправлений: 2)
Ответ на: комментарий от arson

Не читать дальше первого комментария.

Всегда интересовало, тут не читают приведёные решения из-за лени или в попытках самоутверждения или таки звездочки зарабатывать. Скорее всего последнее...

vodz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.