Как восстановить libz.so.1?

Альтернативой является просто добавить конфигурационный файл в 40_custom следующим образом:

menuentry 'Live ISOs on SSD' {
configfile (hd0,3)/ISO/livecdimage.cfg
} 

menuentry 'Live ISOs on HDD (boot on SSD)' {
configfile (hd1,3)/ISO/livecdimage.cfg
} 

Я делаю это, когда при обновлении ISO я неизменно забываю запустить sudo update-grub. Вышеуказанные записи никогда не должны меняться, и я могу просто отредактировать файл livecdimage.cfg, который имеет тот же формат, что и любой 40_custom, но без строк заголовка, и находится в папке / ISO в моем разделе ISO.

Я добавляю toram в качестве другого параметра загрузки и в системе с nVidia добавьте параметр загрузки nomodeset. Но все же часто приходится отключать /isodevice.

Невозможно отключить isodevice unmount ISO https://bugs.launchpad.net/ubuntu/+source/ubiquity/+bug/1155216

И это часть моего файла livecdimage.cfg

# livecdimage.cfg
# Add this to 40_custom to load this file:
# menuentry 'Live ISOs' {
# configfile (hd1,3)/iso/livecdimage.cfg
#} 
# Add iso names to livecdimage.cfg
#for i in `ls *.iso`;do echo "# "$i>>livecdimage.cfg; done;

menuentry "Ubuntu 16.04.4 xenial amd64" {
    set isofile="/ISO/ubuntu-16.04.4-desktop-amd64.iso"
    loopback loop (hd0,3)$isofile 
    linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile toram
    initrd (loop)/casper/initrd.lz
}

menuentry "Ubuntu 18.04 Bionic amd64" {
    set isofile="/ISO/bionic-desktop-amd64.iso"
    loopback loop (hd0,3)$isofile 
    linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile toram
    initrd (loop)/casper/initrd.lz
}

# spacer line
menuentry " " {
set root= 
}

menuentry "Reboot" {
    reboot
}

menuentry "Halt" {
    halt
}
3
задан 14 May 2018 в 05:17

8 ответов

Правильный способ решить эту проблему - загрузить необходимый пакет вручную, а затем установить или извлечь его в систему. Конечно, вы можете выполнять такие действия с LiveCD / LiveUSB.

Как решить такие проблемы:

Посетите packages.ubuntu.com. Введите пропущенное имя файла в разделе «Поиск содержимого пакетов» (в нашем случае libz.so.1.2.8) с указанием целевого распределения (xenial в нашем случае) и архитектуры процессора (amd64): нажмите «Поиск», он отобразит страницу результатов: Затем нажмите на ссылке zlib1g В разделе «Загрузка» нажмите amd64: На открытой странице выберите ближайшее зеркало, (скопируйте ссылку или загрузите deb-файл браузером)
wget http://mirrors.kernel.org/ubuntu/pool/main/z/zlib/zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb
Попробуйте установить загруженный пакет в систему:
sudo dpkg -i zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb
Если это произойдет не работает - извлеките его непосредственно в файловую систему:
sudo dpkg -x zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb /
И затем обязательно переустановите его с помощью APT:
sudo apt-get install --reinstall zlib1g
1
ответ дан 22 May 2018 в 10:43
  • 1
    Возможно, это нужно сделать с Live CD, так как dpkg, вероятно, тоже сработает. – fkraiem 14 May 2018 в 12:45
  • 2
    Трудно сломать dpkg, с моим методом я исправил многие системы со сломанным apt. dpkg был жив, но apt / apt-get был сломан. Просто протестировано на VM - удалено libz с rm libs, а затем перезагружено - dpkg работает, apt сломан. – N0rbert 14 May 2018 в 12:55
  • 3
    Ну, легко получить список библиотек dpkg: ldd /usr/bin/dpkg. Действительно, libz не среди них, но есть некоторые. – fkraiem 14 May 2018 в 16:22

Правильный способ решить эту проблему - загрузить необходимый пакет вручную, а затем установить или извлечь его в систему. Конечно, вы можете выполнять такие действия с LiveCD / LiveUSB.

Как решить такие проблемы:

Посетите packages.ubuntu.com. Введите пропущенное имя файла в разделе «Поиск содержимого пакетов» (в нашем случае libz.so.1.2.8) с указанием целевого распределения (xenial в нашем случае) и архитектуры процессора (amd64): нажмите «Поиск», он отобразит страницу результатов: Затем нажмите на ссылке zlib1g В разделе загрузки нажмите amd64: На открытой странице выберите ближайшее зеркало, (скопируйте ссылку или загрузите deb-файл браузером) wget http://mirrors.kernel.org/ubuntu/pool/main/z/zlib/zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb Попробуйте установить загруженный пакет в систему: sudo dpkg -i zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb Если это произойдет не работает - извлеките его непосредственно в файловую систему: sudo dpkg -x zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb / И затем обязательно переустановите его с помощью APT: sudo apt-get install --reinstall zlib1g
1
ответ дан 17 July 2018 в 14:21

Правильный способ решить эту проблему - загрузить необходимый пакет вручную, а затем установить или извлечь его в систему. Конечно, вы можете выполнять такие действия с LiveCD / LiveUSB.

Как решить такие проблемы:

Посетите packages.ubuntu.com. Введите пропущенное имя файла в разделе «Поиск содержимого пакетов» (в нашем случае libz.so.1.2.8) с указанием целевого распределения (xenial в нашем случае) и архитектуры процессора (amd64): нажмите «Поиск», он отобразит страницу результатов: Затем нажмите на ссылке zlib1g В разделе «Загрузка» нажмите amd64: На открытой странице выберите ближайшее зеркало, (скопируйте ссылку или загрузите deb-файл браузером) wget http://mirrors.kernel.org/ubuntu/pool/main/z/zlib/zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb Попробуйте установить загруженный пакет в систему: sudo dpkg -i zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb Если это произойдет не работает - извлеките его непосредственно в файловую систему: sudo dpkg -x zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb / И затем обязательно переустановите его с помощью APT: sudo apt-get install --reinstall zlib1g
1
ответ дан 20 July 2018 в 14:26

Хорошо, так как я удалил исходный файл, я не мог apt или даже разархивировать или использовать rpm или alien. Мне удалось найти версию RPM'd, но я не мог получить двоичный код, потому что ни один из инструментов, которые полагаются на сжатие, не работал. Таким образом, я загрузил RPM в Convertio и преобразовал его в tar, загрузил и извлек его и вернул туда, где он принадлежит.

Sheesh, извлеченный урок, будьте осторожны с этими общими libs!

-1
ответ дан 22 May 2018 в 10:43

Хорошо, так как я удалил исходный файл, я не мог apt или даже разархивировать или использовать rpm или alien. Мне удалось найти версию RPM'd, но я не мог получить двоичный код, потому что ни один из инструментов, которые полагаются на сжатие, не работал. Таким образом, я загрузил RPM в Convertio и преобразовал его в tar, загрузил и извлек его и вернул туда, где он принадлежит.

Sheesh, извлеченный урок, будьте осторожны с этими общими libs!

-1
ответ дан 17 July 2018 в 14:21

Расширение инструкций N0rbert, если вы делаете это в реальном сеансе, убедитесь, что вы извлекаете пакет в корень вашей сломанной установки Ubuntu, в отличие от корня самой живой сессии (что не будет разрешить все и исчезнуть при перезапуске).

Из POV текущего сеанса ваша сломанная установка будет установлена ​​на что-то вроде /media/ubuntu/ae7r0-9s90s-ejf8d-d9d9f (не фактическое значение, а некоторое длинное хеширование похожее на это). Возможно, вам придется просмотреть его в проводнике файлов, чтобы получить папку.

Итак, в живой сессии вы будете извлекать с помощью следующей команды:

sudo dpkg -x zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb /media/ubuntu/ae7r0-9s90s-ejf8d-d9d9f/

После того, как отсутствующий libz.so.1 будет восстановлен до /media/ubuntu/ae7r0-9s90s-ejf8d-d9d9f/lib/x86_64-linux-gnu/, вы должны быть перезагрузите, запустите sudo apt-get install --reinstall zlib1g в tty1 и снова перезагрузитесь в рабочую систему.

0
ответ дан 17 July 2018 в 14:21

Хорошо, так как я удалил исходный файл, я не мог apt или даже разархивировать или использовать rpm или alien. Мне удалось найти версию RPM'd, но я не мог получить двоичный код, потому что ни один из инструментов, которые полагаются на сжатие, не работал. Таким образом, я загрузил RPM в Convertio и преобразовал его в tar, загрузил и извлек его и вернул туда, где он принадлежит.

Sheesh, извлеченный урок, будьте осторожны с этими общими libs!

-1
ответ дан 20 July 2018 в 14:26

Расширение инструкций N0rbert, если вы делаете это в реальном сеансе, убедитесь, что вы извлекаете пакет в корень вашей сломанной установки Ubuntu, в отличие от корня самой живой сессии (что не будет разрешить все и исчезнуть при перезапуске).

Из POV текущего сеанса ваша сломанная установка будет установлена ​​на что-то вроде /media/ubuntu/ae7r0-9s90s-ejf8d-d9d9f (не фактическое значение, а некоторое длинное хеширование похожее на это). Возможно, вам придется просмотреть его в проводнике файлов, чтобы получить папку.

Итак, в живой сессии вы будете извлекать с помощью следующей команды:

sudo dpkg -x zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb /media/ubuntu/ae7r0-9s90s-ejf8d-d9d9f/

После того, как отсутствующий libz.so.1 будет восстановлен до /media/ubuntu/ae7r0-9s90s-ejf8d-d9d9f/lib/x86_64-linux-gnu/, вы должны быть перезагрузите, запустите sudo apt-get install --reinstall zlib1g в tty1 и снова перезагрузитесь в рабочую систему.

0
ответ дан 20 July 2018 в 14:26

Другие вопросы по тегам:

Похожие вопросы: