Рейтинг:0

dpkg: ошибка обработки пакета linux-image-4.15.0-175-generic (/boot/grub/menu.lst не найден)

флаг eg

У меня есть эта проблема на сервере Ubuntu 18.04, вероятно, потому что /загрузка/жратва/menu.lst не существует:

root@myserver:~# apt install -f
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Следующие пакеты были установлены автоматически и больше не требуются:
  liblua5.1-0 libyajl2
Используйте «apt autoremove», чтобы удалить их.
0 обновлено, 0 установлено заново, 0 удалено и 0 не обновлено.
1 не полностью установлен или удален.
После этой операции будет использовано 0 Б дополнительного дискового пространства.
Настройка linux-image-4.15.0-175-generic (4.15.0-175.184)...
Триггеры обработки для linux-image-4.15.0-175-generic (4.15.0-175.184) ...
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Генерация /boot/initrd.img-4.15.0-175-generic
W: наборы настроек initramfs-tools RESUME=/dev/mapper/vg-lv_swap
W: но подходящее устройство подкачки недоступно.
I: initramfs попытается возобновить работу с /dev/vda2.
Я: (UUID=4c30643f-055d-4ad7-babc-b2a6b8ac3138)
I: Установите переменную RESUME, чтобы переопределить это.
/etc/kernel/postinst.d/x-grub-legacy-ec2:
Поиск каталога установки GRUB... найдено: /boot/grub
Поиск файла по умолчанию... найдено: /boot/grub/default
Тестирование существующего файла GRUB menu.lst... 

Не удалось найти файл /boot/grub/menu.lst. Хотите ген /boot/grub/menu.lst
оценили для вас? (y/N) /usr/sbin/update-grub-legacy-ec2: строка 1101: чтение: ошибка чтения
или: 0: неверный файловый дескриптор
run-parts: /etc/kernel/postinst.d/x-grub-legacy-ec2 завершился с кодом возврата 1
dpkg: ошибка обработки пакета linux-image-4.15.0-175-generic (--configure):
 установлен скрипт linux-image-4.15.0-175-generic после установки пакета subpr
Процесс вернул статус выхода ошибки 1
При обработке возникли ошибки:
 Linux-образ-4.15.0-175-общий
E: Подпроцесс /usr/bin/dpkg возвратил код ошибки (1)
root@myserver:~# найти menu.lst
/boot/grub.bak/menu.lst_backup_by_grub2_prerm
/boot/grub.bak/menu.lst~
/var/lib/ucf/cache/:run:grub:menu.lst
root@myserver:~# cat /var/lib/ucf/cache/:run:grub:menu.lst
## ## Конец параметров по умолчанию ##

название Ubuntu 18.04.6 LTS, ядро ​​4.15.0-173-универсальное
корень (hd0)
ядро /vmlinuz-4.15.0-173-generic root=/dev/mapper/vg-lv_root ro console=hvc0 
initrd /initrd.img-4.15.0-173-общий

название Ubuntu 18.04.6 LTS, ядро ​​4.15.0-173-generic (режим восстановления)
корень (hd0)
ядро /vmlinuz-4.15.0-173-generic root=/dev/mapper/vg-lv_root ro single
initrd /initrd.img-4.15.0-173-общий

### КОНЕЦ СПИСКА ЯДЕР DEBIAN AUTOMAGIC
root@мойсервер:~# 

и:

root@myserver:~# df -h
Используемый размер файловой системы Доступно Использование % Установлено на
udev 461M 0 461M 0% /dev
tmpfs 99M 776K 98M 1% /запуск
/dev/vda1 23G 5.3G 17G 25%/
tmpfs 493M 0 493M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /выполнить/заблокировать
tmpfs 493M 0 493M 0% /sys/fs/cgroup
/dev/vdb1 147G 52G 88G 38% /var/www/html/видео
tmpfs 99M 0 99M 0% /выполнить/пользователь/0
root@myserver:~# uname -a
Linux myserver.com 4.15.0-173-generic #182-Ubuntu SMP Пт, 18 марта, 15:53:46 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

Есть идеи? Спасибо

Nikita Kipriyanov avatar
флаг za
Находится ли `/boot` в другой файловой системе и смонтирован ли он? Кроме того, это физическая/виртуальная машина или, возможно, контейнер?
Francesco Galgani avatar
флаг eg
В качестве дополнительной информации я перенес этот сервер с одной машины на другую и использовал grub-repair для восстановления Grub. Загружается правильно, но `menu.lst` отсутствует.
Francesco Galgani avatar
флаг eg
@NikitaKipriyanov Нет, `/boot` находится в той же файловой системе. Это виртуальная машина на VPS.
Francesco Galgani avatar
флаг eg
Я только что обновил вопрос, добавив вывод `df -f` и `uname -a`
Nikita Kipriyanov avatar
флаг za
В настоящее время он загружается через grub (устаревший) или grub2?
Francesco Galgani avatar
флаг eg
Вывод `grub-install -V`: `grub-install (GRUB) 2.02-2ubuntu8.23`
Nikita Kipriyanov avatar
флаг za
Таким образом, вы на самом деле используете grub2, но система пытается обновить grub legacy. Это причина. Проверьте, какому пакету принадлежит `/etc/kernel/postinst.d/x-grub-legacy-ec2`, и удалите его. Также попробуйте переустановить grub2. Я имею в виду, сначала сделайте резервные копии и подготовьте стратегию восстановления, конечно.
Francesco Galgani avatar
флаг eg
@NikitaKipriyanov Спасибо за ваши предложения, однако я решил по-другому, как я сообщил в своем ответе.
Рейтинг:0
флаг eg

Я решил следующим образом.

Во-первых, я получил UUID разделов:

#черный
/dev/vda1: UUID="1c698c6b-ace0-4021-8cf9-4c0ee7d5364e" TYPE="ext4" PARTUUID="55d1a726-01"
/dev/vda2: LABEL="swap" UUID="4c30643f-055d-4ad7-babc-b2a6b8ac3138" TYPE="swap" PARTUUID="55d1a726-02"
/dev/vdb1: LABEL="видео" UUID="60b104ef-36ea-440f-806d-e9f71cff8732" TYPE="ext4" PARTUUID="c075fe69-01"
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"
/dev/loop4: TYPE="squashfs"

и проверил /ботинок каталог:

# лс /загрузка
config-4.15.0-173-общий initrd.img-4.15.0-173-общий vmlinuz-4.15.0-173-общий
config-4.15.0-175-общий initrd.img-4.15.0-175-общий vmlinuz-4.15.0-175-общий
grub System.map-4.15.0-173-универсальный
grub.bak System.map-4.15.0-175-общий

Я использовал эту информацию, чтобы воссоздать вручную меню.lst (копирование кода с комментариями по умолчанию с другого компьютера):

# menu.lst — См.: grub(8), info grub, update-grub(8)
# grub-install(8), grub-floppy(8),
# grub-md5-crypt, /usr/share/doc/grub
# и /usr/share/doc/grub-legacy-doc/.

## номер по умолчанию
# Установить запись по умолчанию на номер записи NUM. Нумерация начинается с 0 и
# номер записи 0 используется по умолчанию, если команда не используется.
#
# Вы можете указать «сохранено» вместо числа. В этом случае запись по умолчанию
# — это запись, сохраненная с помощью команды «savedefault».
# ПРЕДУПРЕЖДЕНИЕ: Если вы используете dmraid, не используйте 'savedefault' или ваш
# массив рассинхронизируется и не позволит загрузить вашу систему.
по умолчанию 0

## время ожидания сек
# Установите тайм-аут в секундах SEC перед автоматической загрузкой записи по умолчанию
# (обычно определяется первая запись).
# на ec2 без доступа к консоли нет причин для тайм-аута. установить на 0.
тайм-аут 0

## скрытое меню
# Скрывает меню по умолчанию (нажмите ESC, чтобы увидеть меню)
скрытое меню

# Красивые цвета
#цвет голубой/синий белый/синий

## пароль ['--md5'] пароль
# Если используется в первом разделе файла меню, отключите все интерактивное редактирование
# управление (редактор пунктов меню и командная строка) и записи, защищенные
# команда 'заблокировать'
# например пароль сверхсекретно
# пароль --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# секретный пароль

#
# Примеры
#
# заголовок Windows 95/98/NT/2000
# корень (hd0,0)
# сделать активным
# цепной погрузчик +1
#
# название линукс
# корень (hd0,1)
# ядро ​​/vmlinuz root=/dev/hda2 ro
#

#
# Поместите статические строфы загрузки до и/или после AUTOMAGIC KERNEL LIST

### НАЧАТЬ СПИСОК АВТОМАГИЧЕСКИХ ЯДЕР
## строки между маркерами AUTOMAGIC KERNELS LIST будут изменены
## с помощью скрипта debian update-grub, за исключением опций по умолчанию ниже

## НЕ РАСКОММЕНТИРУЙТЕ ИХ, просто отредактируйте их под свои нужды

## ## Параметры запуска по умолчанию ##
## параметры ядра по умолчанию
## параметры ядра по умолчанию для параметров автоматической загрузки
## Если вам нужны специальные опции для конкретных ядер, используйте kopt_x_y_z
## где x.y.z — версия ядра. Второстепенные версии могут быть опущены.
## например kopt=root=/dev/hda1 ро
## kopt_2_6_8=root=/dev/hdc1 ro
## kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=/dev/mapper/vg-lv_root ro

## корневое устройство grub по умолчанию
## например грут=(hd0)
# грут=(hd0)

## следует update-grub создать альтернативные варианты автоматической загрузки
## например альтернатива = истина
## альтернатива=ложь
# альтернатива = истина

## следует update-grub lock альтернативные варианты автоматической загрузки
## например альтернатива блокировки = истина
## lockalternative=false
# блокировкаальтернатива=ложь

## дополнительные параметры для использования с параметром загрузки по умолчанию, но не с
## альтернативы
## например defoptions=vga=791 резюме=/dev/hda5
# настройки=консоль=hvc0

## следует update-grub заблокировать старые параметры автоматической загрузки
## например замок = ложь
## lockold=true
# блокировка=ложь

## Параметры гипервизора Xen для использования с параметром загрузки Xen по умолчанию
# xenhopt=

## Параметры ядра Xen Linux для использования с параметром загрузки Xen по умолчанию
# xenkopt=консоль=tty0

## параметр загрузки altoption
## разрешено несколько строк altoptions
## например altoptions=(дополнительный суффикс меню) дополнительные параметры загрузки
## altoptions=(восстановление) сингл
# altoptions=(режим восстановления) single

## контролирует, сколько ядер должно быть помещено в меню.lst
## учитывается только первое вхождение ядра, а не
## альтернативные варианты ядра
## например сколько = все
## сколько=7
#сколько=все

## укажите, работаете ли вы в Xen domU или автоматически определяете grub
## update-grub будет игнорировать ядра, отличные от xen, при работе в domU и наоборот
## например indomU = обнаружить
## indomU=true
## indomU=false
# indomU=true

## следует update-grub создать параметр загрузки memtest86
## например мемтест86=истина
## memtest86=false
# memtest86=истина

## следует update-grub скорректировать значение загружаемой системы по умолчанию
## может быть истинным или ложным
# updatedefaultentry=false

## следует update-grub добавить savedefault к параметрам по умолчанию
## может быть истинным или ложным
# сохранить по умолчанию = ложь

## ## Конец параметров по умолчанию ##

название Ubuntu 18.04.6 LTS, ядро ​​4.15.0-173-универсальное
корень (hd0)
ядро /boot/vmlinuz-4.15.0-173-generic root=UUID=1c698c6b-ace0-4021-8cf9-4c0ee7d5364e ro console=hvc0 
initrd /boot/initrd.img-4.15.0-173-общий

название Ubuntu 18.04.6 LTS, ядро ​​4.15.0-173-generic (режим восстановления)
корень (hd0)
ядро /boot/vmlinuz-4.15.0-173-generic root=UUID=1c698c6b-ace0-4021-8cf9-4c0ee7d5364e ro single
initrd /boot/initrd.img-4.15.0-173-общий


### КОНЕЦ СПИСКА ЯДЕР DEBIAN AUTOMAGIC

Затем я перезагрузился и, наконец:

# удачная установка -f
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Следующие пакеты были установлены автоматически и больше не требуются:
  liblua5.1-0 libyajl2
Используйте «apt autoremove», чтобы удалить их.
0 обновлено, 0 установлено заново, 0 удалено и 0 не обновлено.
1 не полностью установлен или удален.
После этой операции будет использовано 0 Б дополнительного дискового пространства.
Настройка linux-image-4.15.0-175-generic (4.15.0-175.184)...
Триггеры обработки для linux-image-4.15.0-175-generic (4.15.0-175.184) ...
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Генерация /boot/initrd.img-4.15.0-175-generic
W: наборы настроек initramfs-tools RESUME=/dev/mapper/vg-lv_swap
W: но подходящее устройство подкачки недоступно.
I: initramfs попытается возобновить работу с /dev/vda2.
Я: (UUID=4c30643f-055d-4ad7-babc-b2a6b8ac3138)
I: Установите переменную RESUME, чтобы переопределить это.
/etc/kernel/postinst.d/x-grub-legacy-ec2:
Поиск каталога установки GRUB... найдено: /boot/grub
Поиск файла по умолчанию... найдено: /boot/grub/default
Тестирование существующего файла GRUB menu.lst...найдено: /boot/grub/menu.lst
Поиск изображения-заставки... ничего не найдено, пропуск...
Найдено ядро: /boot/vmlinuz-4.15.0-173-generic
Замена файла конфигурации /run/grub/menu.lst новой версией
Найдено ядро: /boot/vmlinuz-4.15.0-175-generic
Найдено ядро: /boot/vmlinuz-4.15.0-173-generic
Замена файла конфигурации /run/grub/menu.lst новой версией
Обновление /boot/grub/menu.lst... сделано

/etc/kernel/postinst.d/zz-update-grub:
Исходный файл `/etc/default/grub'
Создание файла конфигурации grub...
Найден образ Linux: /boot/vmlinuz-4.15.0-175-generic
Найден образ initrd: /boot/initrd.img-4.15.0-175-generic
Найден образ Linux: /boot/vmlinuz-4.15.0-173-generic
Найден образ initrd: /boot/initrd.img-4.15.0-173-generic
сделано
W: APT планировал, что dpkg сделает больше, чем сообщил (0 против 4).
   Затронутые пакеты: linux-image-4.15.0-175-generic:amd64.

В процессе установки я выбрал: новое меню.lst

В конце еще раз перезагрузился и новое ядро ​​загрузилось корректно.

Ответить или комментировать

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