Я использую 64-битный Crunchbang, который основан на Debian.

Я пытался исправить определенную проблему с libc6 и наивно последовал совету ответа askUbuntu (ссылка), который заставил меня выполнить следующую команду:

sudo ln -sf /lib32/libc.so.6 /lib/x86_64-linux-gnu/libc.so.6

Теперь я не могу запустить одну команду терминала или программу с графическим интерфейсом. На терминале я получаю множество ошибок. Вот ls , например:

ls: ошибка при загрузке общих библиотек: libs.so.6: неправильный класс ELF: ELFCLASS32

sed: ошибка при загрузке общих библиотек: libs.so.6: неправильный класс ELF: ELFCLASS32

/usr/bin/env: ошибка при загрузке общих библиотек: libs.so.6: неправильный класс ELF: ELFCLASS32

дата: ошибка при загрузке общих библиотек: libs.so.6: неправильный класс ELF: ELFCLASS32

sed: ошибка при загрузке общих библиотек: libs.so.6: неправильный класс ELF: ELFCLASS32

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

Короче говоря, я не могу удалить символическую ссылку, которая привела к этой катастрофе. Что я могу сделать, чтобы мой компьютер снова заработал?

2 ответа2

0

Папка /lib32 может содержать только 32-битные библиотеки. Вы создали ссылку на libc.so.6 в /lib32, которая указывает на 64-битную версию того же файла. Получите 32-битную версию libc.so.6 и поместите ее в папку /lib32.

0

Так как вы испортили свой libc, и, как правило, от него зависит любая полезная утилита, ваш единственный реальный удобный вариант - загрузить Live CD / USB и починить его, или вставить жесткий диск в чужой компьютер (не загружаться это) и исправить это оттуда.

Чтобы исправить это, отмените то, что вы сделали.

Однако неправильный выбор опции -f для ln и предполагаемая ошибка резервного копирования любого исходного файла означает, что если /lib/x86_64-linux-gnu/libc.so.6 действительно существовал до того, как вы выполнили эту команду, он был перезаписан. В этом случае вам лучше всего получить копию из другого места, возможно, совместимую версию, а затем выполнить принудительную переустановку libc, как только вы снова включите компьютер, чтобы убедиться, что все нужные версии нужных файлов находятся в правильные места.

Если у вас не было этого файла для начала, тогда не беспокойтесь.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .