Как из образа флэшки получить образ файловой системы, который на этой флэшке хранится?

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Ответить
Аватара пользователя
жучара
Сообщения: 937
ОС: астралинукс

Как из образа флэшки получить образ файловой системы, который на этой флэшке хранится?

Сообщение жучара »

Друзья! Сперва небольшие пояснения. Воткнём какую-нибудь флэшку с файловой системой NTFS, и команднём

Shell

$ lsblk | grep sdb
sdb 8:16 1 1,9G 0 disk
└─sdb1 8:17 1 1,9G 0 part
Я располагаю файлом-образом, полученным вот так:

Shell

dd if=/dev/sdb of=sdb.iso
Всё, и внутри его как бы существует sdb1 с файловой системой NTFS и нужными мне файлами, но как к ней подобраться- непонятно.

==================================================

Если бы я располагал файлом-образом sdb1.iso (dd if=/dev/sdb1 of=sdb1.iso), то всё было бы просто:

Shell

$ sudo losetup -f
/dev/loop0
$ sudo losetup /dev/loop0 sdb1.iso
$ mkdir sdb1dst
$ sudo mount /dev/loop0 sdb1dst
$ ls sdb1dst
test
$ cat sdb1dst/test
Привет, мир!
$
Но, сами понимаете, sdb.iso не sdb1.iso, файловой системы напрямую не содержит, как к ней подобраться, чёрт его знает. На неудачно (что закономерно) сработавшей команде:

Shell

sudo mount /dev/loop0 sdbdst
Все мои потуги и заканчиваются.

Флэшки нет, только файл sdb.iso. Спасибо, кто откликнется.
Я просто читаю маны.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Как из образа флэшки получить образ файловой системы, который на этой флэшке хранится?

Сообщение Bizdelnick »

Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
olecya
Сообщения: 900
ОС: debian, fedora (i3-wm)

Re: Как из образа флэшки получить образ файловой системы, который на этой флэшке хранится?

Сообщение olecya »

Еще есть модуль nbd
и утилита qemu-nbd, может даже разбить на блоки разделы с образа формата qcow2
Добавлено (14:05):
По-моему, я что-то подмонтировала даже с формата vdi
Спасибо сказали:
Аватара пользователя
ormorph
Сообщения: 2604
ОС: Gentoo

Re: Как из образа флэшки получить образ файловой системы, который на этой флэшке хранится?

Сообщение ormorph »

Уже давно описывал это, все на много проще. Описывал тут.
Спасибо сказали:
Аватара пользователя
Zer0
Сообщения: 479
ОС: Void, Slackware

Re: Как из образа флэшки получить образ файловой системы, который на этой флэшке хранится?

Сообщение Zer0 »

Для монтирования раздела диска из дампа полученного:

Код: Выделить всё

dd if=/dev/sdb of=/disk1/BACKUP/06-03-2021-system-ssd-dump
Я действовал по такой методе:

Код: Выделить всё

sudo fdisk -l /disk1/BACKUP/06-03-2021-system-ssd-dump
Устр-во                                                  Загрузочный    начало     Конец   Секторы Размер Идентификатор Тип
/disk1/BACKUP/06-03-2021-system-ssd-dump1 *                2048    206847    204800        100M             7 HPF
/disk1/BACKUP/06-03-2021-system-ssd-dump2                206848 126836735 126629888  60,4G             7 HPF
/disk1/BACKUP/06-03-2021-system-ssd-dump3             126836736 232955903 106119168  50,6G            83 Lin
/disk1/BACKUP/06-03-2021-system-ssd-dump4             232955904 500118191 267162288 127,4G             5 Рас
/disk1/BACKUP/06-03-2021-system-ssd-dump5             232957952 236898303   3940352   1,9G            82 Lin
/disk1/BACKUP/06-03-2021-system-ssd-dump6             236900352 500118191 263217840 125,5G             7 HPF
Начало нужного раздела умножаем на 512, так мы получаем опцию смещения для монтирования.
Монтируем 2-й раздел начинающийся с сектора 206848:

Код: Выделить всё

mount -o loop,offset=105906176 -t auto /disk1/BACKUP/system_ssd_dd_dump /mnt/hd
Memento mori ... сделай бэкап.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Как из образа флэшки получить образ файловой системы, который на этой флэшке хранится?

Сообщение Bizdelnick »

ormorph писал(а):
31.05.2021 15:36
все на много проще
losetup -Pf проще kpartx -a? Спорное утверждение, на целых две буквы больше набирать. ☺
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
ormorph
Сообщения: 2604
ОС: Gentoo

Re: Как из образа флэшки получить образ файловой системы, который на этой флэшке хранится?

Сообщение ormorph »

Bizdelnick писал:
31.05.2021 19:10
losetup -Pf проще kpartx -a? Спорное утверждение, на целых две буквы больше набирать.
Не проще, но практически тоже самое.
Спасибо сказали:
Аватара пользователя
olecya
Сообщения: 900
ОС: debian, fedora (i3-wm)

Re: Как из образа флэшки получить образ файловой системы, который на этой флэшке хранится?

Сообщение olecya »

ormorph писал(а):
31.05.2021 15:36
все на много проще
Я так понимаю модуль loop так же загружается как и nbd.
Так в чем же проще команда losetup с опцией -P команды qemu-nbd -c?
Zer0 писал(а):
31.05.2021 18:34
Начало нужного раздела умножаем на 512, так мы получаем опцию смещения для монтирования.
Монтируем 2-й раздел начинающийся с сектора 206848:
Zer0 писал(а):
31.05.2021 18:34
mount -o loop,offset=105906176
Предлагаете умножить на калькуляторе? :)

P.S. Пока писала не видела 2 последних комментария
Добавлено (20:15):
ormorph писал(а):
31.05.2021 19:45
Не проще, но практически тоже самое.
Но для меня было полезно, не знала об этой опции
Спасибо сказали:
Аватара пользователя
ormorph
Сообщения: 2604
ОС: Gentoo

Re: Как из образа флэшки получить образ файловой системы, который на этой флэшке хранится?

Сообщение ormorph »

olecya писала:
31.05.2021 20:06
Так в чем же проще команда losetup с опцией -P команды qemu-nbd -c?
Тем что не использует эмулятора, конечно она проще, так как работает на прямую с образом как с блочным устройством без использования демона. Опция -P ищет в образе разделы и соответственно создаёт для них блочные устройства, то же самое делает и kpartx.
Спасибо сказали:
Ответить