LINUX.ORG.RU

Разворачивание образа зашифрованного раздела Manjaro

 


0

1

Всем доброго времени суток!Обращаюсь за помощью к Вам в связи с тем, что не удалось решить возможно легкий для Вас вопрос. Была необходимость перенести Manjaro 18 установленной на одном жестком диске совместно с Windows 10. Весь раздел с Manjaro был зашифрован LUCS. Совершенно точно помню Винда виделась с другой системы, а Manjaro закрыт. Запускалось это все с помощью разблокировки диска, путем Attempting master key…, после чего появлялся GRUB-меню, с выбором ОС. Был снят образ всего раздела Manjaro c помощью Acronis и убран в дальний ящик. Настало время и возникла необходимость, перенести систему на другой жесткий. Разбил ЖД на 2 раздела в один на 35 Гб развернул образ Manjaro, а в оставшееся место накатил Windows 10. Как итог Винда работает, а Манждаро конечно нет. Попытался исправить ситуацию установив еще одну свежую Манджаро. Теперь запуск выглядит так: Разблокировка диска мастер ключем, затем GRUB с выбором ОС (причем Windows теперь тоже закрыта и не видна из под другой системы), затем при выборе Манждаро снова запрос ключа, после этого загрузка Манджаро.Подскажите как выйти из положения надежным (желательно простым) способом, чтобы при загрузки подхватывался тот раздел на котором развернута настроенная ОС. Понимаю, что где в MBR загвоздка, но так и не понял где. Очень многое настроено и заново настраивать нет сил, желания. Зайдя в «крайнюю» Манджаро доступ к настроенной системе есть, открывается доступ к зашифрованной в образе системе. Полагаю при переносе директории Home из настроенной системы на «крайнюю» систему все равно вылезут проблемы. На используемом ПК не будет интернета.Да к тому же места для переноса Home не осталось. Есть фото с различными командами, но не увидел как их здесь прикрепить.


Был снят образ всего раздела Manjaro c помощью Acronis

Ещё и шифрованный. Замечательно.

Я не знаю, в чём именно дело, но Acronis (не в Linux версии) не умеет нормально снимать копии Linux ФС. Они выходят кривыми, хотя и не всегда, иногда везет.

Подозреваю, что дело в том, что его алгоритмы сжатия оптимизированы под NTFS и FAT, а никак не ext4 и XFS.

Он у тебя хоть на чтение открывается после такого переноса?

Vsevolod-linuxoid ★★★★★ ()
Ответ на: комментарий от Vsevolod-linuxoid

Да читается. Я написал, что все файлы в образе на месте, открываются. Дело именно связано с загрузкой. Проблем с Акронисом не было. Снимал образ Deepin, разворачивал. Правда не зашифрованный.

bmw02 ()
Ответ на: комментарий от bmw02

Ты написал очень много теста без деления на абзацы. И не приложил никаких выводов терминала! Я не пробовал вчитываться и угадывать.

Всё ещё не ясно, UEFI у тебя или BIOS, и как я понял, нужно через chroot восстановить загрузчик. И ещё шифрование… честно скажу, я такого не делал, но даже базовых знаний хватает, что, как и с разбивкой диска, вариантов очень много.

Те фото, что есть — выложи на imgur или ещё куда, а сюда ссылки. Хотя постить выводы терминала картинками — то ещё занятие, лучше цитировать их текстом: Как правильно копировать вывод терминала

Если есть хоть какая-то возможность загрузиться на том компе, то хотя бы покажи выводы

sudo fdisk -l
lsblk

И то, какими командами ты открываешь шифрованную часть (чтобы я понял, какое именно шифрование используется (ключ мне не нужен)).

Vsevolod-linuxoid ★★★★★ ()
Ответ на: комментарий от Vsevolod-linuxoid

Система ввода-BIOS.Не написал-виноват. По выводам терминала написал, что не разобрался как прикрепить фото, исправляюсь.

По открытию шифрованого раздела, если внимательно прочитать мое первое сообщение: «Зайдя в «крайнюю» Манджаро доступ к настроенной системе есть, открывается доступ к зашифрованной в образе системе».

То есть я ввожу мастер ключ к установленной «крайней» Манжаро, захожу в «свежую» систему и имею доступ к файлам развернутого из образа ранее Манджаро на разделе sda2 (с фото будет более понятно).Я старался описать свой вопрос как можно более короче, но получилось довольно много и наверно напутано, но без этого количества буковок, если их не прочитать, вообще ничего не понять.

bmw02 ()
Ответ на: комментарий от bmw02

Я спрашивал, какими именно командами ты открываешь и как шифрованный раздел. Ты, как я понял, зашифровал разделы целиком через LUKS, а потом поверх поставил ОС. Просто это не единственный метод.

Vsevolod-linuxoid ★★★★★ ()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Ответ на: комментарий от bmw02

Я старался описать свой вопрос как можно более короче, но получилось довольно много и наверно напутано, но без этого количества буковок, если их не прочитать, вообще ничего не понять.

Ты развел дофига воды на ровном месте. И при этом всё ещё не ясно, как и что настроено. Ты даже не упомянул, что использовал LUKS, не сказал, первый или второй, и не ясно, используется ли при этом LVM внутри криптоконтейнера или там просто ФС. Хотя по выводу терминала, как понял — просто ФС.

Попытался исправить ситуацию установив еще одну свежую Манджаро.

Она сейчас как-то участвует в текущей загрузке?

Разблокировка диска мастер ключем, затем GRUB

И где же ты его до загрузчика разблокируешь, в BIOS что ли? Обычно при полнодисковом шифровании именно в GRUB2 и разблокируется диск.

При этом GRUB2 умеет только в LUKS1, а в LUKS2 нет. Так что или LUKS1 на /, или выносить /boot на LUKS1, а остальное в LUKS2 шифровать.

Vsevolod-linuxoid ★★★★★ ()
Ответ на: комментарий от Vsevolod-linuxoid

Я спрашивал, какими именно командами ты открываешь и как шифрованный раздел. Ты, как я понял, зашифровал разделы целиком через LUKS, а потом поверх поставил ОС. Просто это не единственный метод.

Ответ на Ваш вопрос есть в первом моем сообщении:

Разбил ЖД на 2 раздела в один на 35 Гб развернул образ Manjaro, а в оставшееся место накатил Windows 10. Как итог Винда работает, а Манждаро конечно нет. Попытался исправить ситуацию установив еще одну свежую Манджаро.

Таким образом при установке «крайней» Манджаро мною указан раздел sda3 для ОС, оставшееся место после sda2(15 Гб). При установке она шифрует весь диск в т.ч. Винду и находящуюся на разделе sda2 развернутый образ Манджаро, который я хотел восстановить изначально. Поэтому зайдя в «крайнюю» Манджаро я вижу и имею доступ ко всем файлам.

Ты развел дофига воды на ровном месте.

Извините конечно, то воду я не лил. Я же написал, что старался объяснить свой вопрос как можно короче, но данную проблему в двух словах не опишешь.

Ты даже не упомянул, что использовал LUKS,

Вы не внимательно читали мое первое сообщение, о чем сообщали ранее.Не нужно меня, в чем то упрекать. А так же если я чего либо, не знаю. Это пустословие не к чему не приводит.

Она сейчас как-то участвует в текущей загрузке?

Опять же, невнимательно читали первый пост

Теперь запуск выглядит так: Разблокировка диска мастер ключем, затем GRUB с выбором ОС (причем Windows теперь тоже закрыта и не видна из под другой системы), затем при выборе Манждаро снова запрос ключа, после этого загрузка Манджаро.

НА фото я показываю как это работает: сначала BIOS, затем запрос мастер ключа, затем GRUB. Я уже повторяюсь.

И где же ты его до загрузчика разблокируешь, в BIOS что ли? Обычно при полнодисковом шифровании именно в GRUB2 и разблокируется диск.

Если бы Вы, разбирались в порядке работы с шифрованным разделом от Вас не поступило таких вопросов.Пока что Вы задаете мне много вопросов, ответы на которые в основном имеются в первом моем сообщении. Без конструктивных предложений по решению моей загвоздки. Спасибо конечно, но я пока вижу Вашу помощь как попытки натыкать меня носом, в то, в чем Вы разбираетесь скверно.

bmw02 ()
Ответ на: комментарий от bmw02

Вообще-то это ты разбираешься скверно. Вот это:

сначала BIOS, затем запрос мастер ключа, затем GRUB.

Бред. Хотя GRUB2 может сначала просить ключ для расшифровки, а потом показывать меню. Но не как ты написал.

И судя по картинкам, это именно так.

А зачем вторая Manjaro? Или ты вместо chroot в первую и установки GRUB2 из неё поставил рядом другую и используешь загрузчик от неё?

Vsevolod-linuxoid ★★★★★ ()
Ответ на: комментарий от bmw02

Короче, я предполагаю, что у тебя происходит, и на основе предположений пишу инструкцию. Внятной информации я от тебя так и не получил.

Я предполагаю, что раздел /dev/sda2 зашифрован LUKS1, и что внутри находится файловая система ext4, которая является / твоей нужной Manjaro.

И что раздел /dev/sda3 внутри содержит то же самое, но при этом содержит не нужную Manjaro, которую ты ошибочно установил по соседству.

Итак, что же нужно сделать, чтобы загружалась нужная Manjaro с /dev/sda2…

  • Необходимо загрузиться с LiveUSB такого Linux, чтобы он умел из коробки расшифровывать LUKS1. Таким является https://www.system-rescue.org/Download/

  • После чего необходимо:

    • Удалить /dev/sda3 (как я понял, там вторая и не нужная Manjaro).
    • Расшифровать /dev/sda2
    • Примонтировать ФС на /dev/sda2 куда-нибудь.
    • Пробросить устройства в грядущий chroot
    • chroot в нужную Manjaro, потом переустановка GRUB2
  • И вот как это всё сделать:

parted /dev/sda rm 3
cryptsetup open /dev/sda2 manjaro
mount /dev/mapper/manjaro /mnt
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys  /mnt/sys
chroot /mnt
grub-install --target=i386-pc /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg
exit
umount /mnt/dev
umount /mnt/proc
umount /mnt/sys
umount /mnt
cryptsetup close manjaro
poweroff

После этого у тебя должен появиться нормальный GRUB2 от твоей изначальной Manjaro.

Это если я правильно угадал, что и как у тебя.

Vsevolod-linuxoid ★★★★★ ()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Ответ на: комментарий от Vsevolod-linuxoid

Примечание — есть один важный момент: устройство /dev/mapper/manjaro я выбрал от балды. Я не знаю, какое именно устройство нужно (и можно было изначально любое выбрать).

Так что имеет смысл, вероятно, немного иначе:

parted /dev/sda rm 3
cryptsetup open /dev/sda2 manjaro
mount /dev/mapper/manjaro /mnt
cat /mnt/etc/fstab # посмотреть, как в оригинале / звался, допустим, что /dev/mapper/manjaro-root
umount /mnt
cryptsetup close manjaro
cryptsetup open /dev/sda2 manjaro-root
mount /dev/mapper/manjaro-root /mnt
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys  /mnt/sys
chroot /mnt
grub-install --target=i386-pc /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg
exit
umount /mnt/dev
umount /mnt/proc
umount /mnt/sys
umount /mnt
cryptsetup close manjaro-root
poweroff
Vsevolod-linuxoid ★★★★★ ()
Ответ на: комментарий от Vsevolod-linuxoid

Acronis (не в Linux версии) не умеет нормально снимать копии Linux ФС

Приходилось когда-то образы с линуксом для клонирования третьим лицам передавать. Они (лица) умели только в акронис. Дошел до рабочего рецепта - ставить ОС на ext3. Акронис ее нормально сжимал, а не посекторно. Файл образа весил адекватно.

ololoid ★★★★ ()
Ответ на: комментарий от Vsevolod-linuxoid

Я предполагаю, что раздел /dev/sda2 зашифрован LUKS1, и что внутри находится файловая система ext4, которая является / твоей нужной Manjaro.

И что раздел /dev/sda3 внутри содержит то же самое, но при этом содержит не нужную Manjaro, которую ты ошибочно установил по соседству.

Все верно!

Человек!Не знаю как тебя отблагодарить?Плюсики там к карме или как?Все сработало. Откуда осуществляется загрузка я так и не разобрался.

Примечание — есть один важный момент: устройство /dev/mapper/manjaro я выбрал от балды. Я не знаю, какое именно устройство нужно (и можно было изначально любое выбрать).

Ввел команду cryptsetup open /dev/sda2. Ругнулся что нет имени. Просто от балды как написал-прописал manjaro. Все пошло как по маслу. Еще раз БЛАГОДАРЮ!!!

bmw02 ()
Ответ на: комментарий от bmw02

BIOS грузит GRUB2, GRUB2 расшифровывает раздел, ищет ядро и initramfs на ФС, грузит их в оперативную память, они запускают systemd, а уже он все остальное.

Vsevolod-linuxoid ★★★★★ ()
Ответ на: комментарий от Vsevolod-linuxoid

Но ведь диск защифрован вместе с Boot, GRUB. Где хранится информация с мастер-ключем?После ввода которого уже запускается Груб. Вот где я не мог сообразить.

bmw02 ()
Ответ на: комментарий от bmw02
  • Запускается BIOS, он «прошит» в материнскую плату, то есть хранится прямо на чипе памяти в ней.
  • BIOS грузит загрузчик из MBR. MBR — это маленькая область в начале диска, она занимает 512 байт. В ней хранится таблица разметки на ЖД и небольшой исполняемый код загрузчика, в твоем случае GRUB2. И он не зашифрован.
  • Этот небольшой фрагмент на самом деле не весь GRUB2. Он просто не лезет в эти жалкие байты! Именно поэтому первый раздел диска начинается с 1 мебибайта по умолчанию — так между MBR и первым разделом есть маленькое свободное пространство, где находится большая часть GRUB2. И это тоже не зашифровано никак. Эта часть GRUB2 грузится той частью, что BIOS загрузил из MBR.
  • Уже после загрузки GRUB2 в оперативную память он берет на себя управление, расшифровывает встроенным в него драйвером /dev/sda2 (именно он и запрашивает пароль на расшифровку, что ты вводишь), потом уже в расшифрованном /dev/sda2 с помощью драйвера ext4, что тоже находится в нём, ищет прописанное заранее ядро и initramfs, после чего загружает их в оперативную память.
  • Уже будучи загруженными в оперативную память ядро и initramfs монтируют корневой раздел (и иногда подключают swap), после чего отдают управление init. И да, для работы с шифрованием в initramfs есть собственный драйвер для расшифровки, ровно как и драйверы для работы с ФС.
  • Обычно в современных Linux init — это systemd, хотя и не всегда. Это процесс, который запускает всё остальное ПО в ОС, и монтирует все оставшиеся ФС.

И да, это значит, что можно в теории из-под Windows или из-под Linux переписать MBR таким образом, чтобы там был вирус, и ключ расшифровки для этого не нужен. И такой класс правда есть, называются MBR-lockerы. Но могу тебя утешить — самый жуткий (но очень редкий) класс вирусов встраивается прямо в BIOS или UEFI.

Да, а как при этом грузится Windows — ну в норме у неё загрузчик тоже на 2 части поделен, одна в MBR, а вторая на разделе с NTFS, в твоем случае /dev/sda1. GRUB2 просто берет на себя функции первой части и сам отдает управление второй.

Vsevolod-linuxoid ★★★★★ ()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 5)
Ответ на: комментарий от bmw02

если есть доступ к зафирв разделу - можешь просто cp -ax скопировать содержимое всего раздела на новый раздел и выкинуть шифрование

Jopich1 ()
Последнее исправление: Jopich1 (всего исправлений: 1)
Ответ на: комментарий от Jopich1

Зачем, всё уже работает. И шифрование правда полезно, если кто-то утащит комп.

Правда, у него есть милая фича — при удалении файлов или повреждении ФС данные теряются навеки.

Vsevolod-linuxoid ★★★★★ ()
Ответ на: комментарий от Vsevolod-linuxoid

То есть если я правильно Вас понимаю, то это часть когда я ввожу мастер-ключ находится в MBR? А после расшифровки управление передается в GRUB? ТО в моем случае достаточно БЫЛО при разворачивании образа Акронисом так же восстановить MBR и не выносить людям мозг. Так?

Правда, у него есть милая фича — при удалении файлов или повреждении ФС данные теряются навеки.

Это точно. Но в моем случае при повреждении ОС есть образ системы в целом. А при работе с нужными файлами они сохраняются в 2 местах так же в зашифрованном виде.

bmw02 ()
Ответ на: комментарий от bmw02

Нет, ты вообще ничего не понял, что ли?

На вот этом скриншоте: https://imgur.com/y5xR9vX у тебя запрашивается пароль.

И это делает именно GRUB2. Просто меню он показывает уже позднее.

Потому что файл с со списком меню он хранит именно на зашифрованном разделе.

Vsevolod-linuxoid ★★★★★ ()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.