Ubuntu не завантажиться через lvmetad


27

Я дотримувався цього підручника для встановлення Ubuntu 15.10:

https://thesimplecomputer.info/full-disk-encryption-with-ubuntu

Після перезавантаження комп'ютера я потрапив у меню grub і вибрав Ubuntu. Незабаром після цього я отримав цю помилку:

/run/lvm/lvmetad.socket: connect failed: No such file or directory
WARNING: Failed to connect to lvmetad. Falling back to internal scanning.

Ці повідомлення постійно додаються на чорний екран щосекунди. Через деякий час я отримую доступ до initramfsконсолі золи.

що я роблю неправильно?


зольна консоль чи консоль баша? друкарський помилок?
Туфір

Відповіді:


12

Я бачив таку ж помилку сьогодні на ноутбуці під керуванням Ubuntu 15.10, який я завжди оновлював, але не перезавантажувався протягом місяця, поки не хотів перевірити поточне ядро ​​(тобто, можливо, відбулися останні зміни).

У будь-якому випадку, я виявив, що в моєму випадку основна причина була насправді "відсутнім" розділом swap через глюк налаштування під час виконання вищевказаного підручника. Якщо це так і / або ви фактично використовуєте lvm, ви, можливо, зможете пропустити крок 2 нижче. Звичайно, ви також можете побачити вищезгадане повідомлення про помилку, якщо ваш системний (або вторинні дані) розділ був пошкоджений або його неможливо знайти (див. Крок 3).

Крок 1: Встановіть систему, завантажте розділи, слідуючи підготовленому навчальному посібнику

Скажімо, ваш (ext2) завантажувальний розділ є / dev / sdX1, ваш (зашифрований) своп розділ є / dev / sdX2, ваш (зашифрований) розділ даних є / dev / sdX3, і ви успішно розшифрували останній за допомогою cryptsetup luksOpen /dev/sdX3 dataподальшої установки це: mkdir /tmp/data; mount /dev/mapper/data /tmp/data.

Зверніть увагу на кріплення прив'язки у навчальному посібнику та переконайтеся, що він змонтований / dev / sdX1, щоб ви могли отримати доступ до нього з каталогу / завантажувального каталогу системного розділу (це важливо, оскільки ми повинні виконати update-initramfs).

Далі ми припускаємо, що ви успішно виконані chroot /tmp/data/@ubuntu1510(або як називається ваш змонтований системний розділ)

Крок 2: Позбавтеся від наведеного вище повідомлення про помилку

Я використовую btrfs (як ви могли здогадатися зі згаданого імені підпункту), тому lvmetad можна легко відключити наступним чином без втрати функціональності:

  • редагуйте /etc/lvm/lvm.conf та змініть use_lvmetad=1наuse_lvmetad=0
  • виконати update-initramfs -k $(uname -r) -u ; sync

Тепер ви можете перезавантажити і повідомлення про помилку не повинно бути. Однак у моєму випадку наступне повідомлення про помилку [1] вказало на основну проблему, згадану вище, тож, поки ми знаходимося на цьому, ...

Крок 3. Переконайтесь, що / etc / crypttab вказує на правильні, непошкоджені розділи

По-перше, запустіть sfdisk --list /dev/sdXі перевірте, чи ваш зашифрований розділ swap (у моєму випадку / dev / sdX2) насправді не відображається як (звичайний) розділ swap. Якщо це було (як у моєму випадку), це означало, що під час завантаження, наприклад, за допомогою рятувального диска, ймовірно, буде використаний доступний розділ swap, тим самим перезаписати ваші метадані, пов'язані з cryptsetup (keyphrase та UUID).

Потім перегляньте / dev / disk / by-uuid та порівняйте відповідні UUID ваших зашифрованих розділів із тими, які містяться в / etc / crypttab. Моя здогадка на даний момент: У вашому випадку є невідповідність.

Якщо виділений зашифрований розділ swap ніде не знайдений нижче / dev / disk / by-uuid, це тому, що він наразі використовується вашою системою порятунку. У цьому випадку виконайте наступне:

  • переконайтеся, що перестаєте використовувати розділ: swapoff -a
  • переформатуйте його: mkfs.ext2 /dev/sdX2(це дуже важливо , особливо при використанні розділів GPT [2], оскільки це скасовує глюк, про який я згадував раніше. Ймовірною причиною того, що розділ відображається як тип "swap" у списку sfdisk, є те, що ви / я помилково використовували mkswap /dev/sdX2під час налаштування розділу на початку.)
  • виконайте посібник для шифрування розділу та встановлення парольної фрази; після цього відкрийте його за допомогою cryptsetup і належним чином переформатуйте тепер розшифрований розділ (використовуючи щось на зразок mkswap /dev/mapper/swap)
  • переконайтеся, що sfdisk --list /dev/sdXне буде ідентифікувати розділ swap як такий (у цьому випадку повторіть останні кроки)

Тепер переконайтесь, що UUID, перелічені в / etc / crypttab, відповідають рядку того, що ви бачите нижче / dev / disk / by-uuid для відповідних зашифрованих розділів.

Знову ж таки, щоб зміни були постійними, потрібно виконати, update-initramfsяк показано вище.

Якщо ви задоволені, переконайтеся, що все записано на диск та перезавантажте систему (не потрібно демонтувати все вручну). Згодом ваша проблема повинна піти.

[1] можливо я не звернув уваги перший раз або перше повідомлення про помилку "замаскувало" друге; тобто лише після перезавантаження (з use_lvmetad=0) мені було запропоновано " Читання всіх фізичних томів. Це може зайняти деякий час ... " (повторюється кілька разів), після чого слід " ALERT! / dev / disk / by-uuid / .. . не існує. " (Слід зазначити, що update-initramfsтакож скаржився на відсутній розділ.)

[2], оскільки їх тип віднімається з аналізу їх вмісту, а в кінцевому рахунку не визначається прапором / байтом (тому не існує простого способу, наприклад, змінити тип файлової системи GPT за допомогою [g]parted.)


2

Тут знаходиться Ubuntu 18.04.1 LTS. Він працював пару місяців без нагляду, але коли я повернувся, я виявив клавіатуру нерозпізнаною. Коли я перезавантажився, я отримав повідомлення "не можу підключитися до lvmetad" та більше про те, як не мати можливості отримати "список UEFI db".

Я встановив без шифрування диска.

Повідомлення UEFI викликало занепокоєння, оскільки це було моїм першим встановленням на комп’ютер UEFI, тому я не мав досвіду, і відверто все ще не знаю про корисність. Мою проблему ускладнювало те, що я використав 'lvm' для того, що буде моїм '/', root, том. (Насправді я вже забув, як я в першу чергу досягнув цього! Ей, я старий.)

Однак, коли машина не перезавантажилась, я шукав рішення і не знайшов нічого остаточного, але помітив, що а) мій розділ EFI був меншим, ніж рекомендований на одному сайті 500MB, і b) окремий / завантажувальний / розділ, який я влаштував для, мабуть, не має значення і не використовується. Я вважав можливим, що без нагляду оновлення, можливо, спричинило щось, можливо, заповнити його відведений простір.

Я вирішив перевстановити систему, яка спрацювала, і залишила мою / дім / структуру каталогів незмінною. Я не перевіряв / etc /, але робив копії обох заздалегідь [1], тому можу перевірити пізніше. / тощо / насправді мало.

Я також видалив видалені та об'єднав розділи для EFI та / boot / в один, більший розділ EFI (> 750 Мб).

Він перезавантажується зараз, але одне повідомлення про помилку блимає занадто швидко, щоб прочитати, і мені не пропонується завантажувати "меню" зображень Linux для завантаження, воно завантажується безпосередньо в Ubuntu. Потрібно ще багато роботи, щоб вирішити цю проблему. Але принаймні мої файли повернулися.

[1] Я завантажив установку Ubuntu з USB-накопичувача і вирішив "спробувати" Ubuntu, що дозволило мені робити копії тощо та додому, перш ніж вибрати "Встановити" з робочого столу.


з mount /dev/mapper/data /tmp/dataя отримую unknown filesystem type LVM2_member.
Франческо Бой

2

Failed to connect to lvmetadПомилка може статися , тому що диск на 100%. Щоб виправити це, завантажтеся з USB-накопичувача, встановіть повний диск, видаліть непотрібні файли та перезавантажте. Я також перевстановив завантажувальну систему - я не знаю, чи потрібно це чи ні.

Це команди, які вирішили проблему для мене, запустіть з терміналу після завантаження з USB-накопичувача. У мене є запас Ubuntu 18.04 з повним приводом шифрування. YMMV.

  • змонтуйте привід:
sudo cryptsetup luksOpen /dev/sda5 sda5_crypt
sudo vgscan --mknodes
sudo vgchange -ay
sudo mount /dev/mapper/ubuntu--vg-root /mnt
  • видалити непотрібні файли ( cd /mnt/home/your_username... rm ...)
  • (можливо, не потрібно) перевстановіть завантажувальну систему:
cd /mnt/
sudo mount /dev/sda1 boot
for d in dev sys proc run; do sudo mount --bind /$d $d; done
sudo vi etc/crypttab # make sure first line uses "sda5_crypt"
sudo chroot .
update-grub
grub-install /dev/sda
update-initramfs -u -k all
exit
sudo umount dev sys proc run boot
  • відключити:
cd /
sudo umount /mnt
sudo vgchange -an
sudo cryptsetup close sda5_crypt
  • перезавантажити:
sudo reboot

0

Не потрібно завантажувати вашу систему з USB чи чогось іншого. У мене була така ж проблема і причина - адже диск на 100% заповнений. Наступне рішення допомогло мені.

1) Перезавантажте систему. За допомогою BIOS швидко натисніть і утримуйте клавішу Shift, яка відкриє меню GNU GRUB.

2) Після натискання 'e' відредагуйте параметри Ubuntu. У цій проблемі ви можете знайти екрани. Знайдіть рядок, що починається як "linux *", наприклад:

linux     /boot/vmlinuz-4-4.0-22-generic root=UUID=43ad24d3-e\
c5b-44ee-a099-a88eb9520989 ro  quiet splash $vt_handoff

Видалити:

ro  quiet splash $vt_handoff

і додати:

init=/bin/bash

Після готовності натисніть CTRL + x або F10 для завантаження.

3) Корінний розділ встановлюється лише для читання. Щоб встановити його на читання / запис, введіть команду

mount -o remount,rw /

4) Дізнайтеся, що пішло не так:

df -hT
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.