Где скачать отсутствующий libc.so.6

Где скачать отсутствующий libc.so.6

Недавно я случайно удалил файл. /lib/x86_64-linux-gnu/libc.so.6.Этот файл нужен большинству программ, поэтому мой компьютер фактически сломался, и я могу получить доступ к жесткому диску только через USB-накопитель.

Я использую 64-битную версию Crunchbang Waldorf на базе Debian.

Как мне заменить libc.so.6? (/lib64/ не(Содержит копию.)

Выходlocate libc.so(на живом USB-накопителе с подключенным сломанным жестким диском)

/lib/x86_64-linux-gnu/libc.so.6
/rofs/lib/x86_64-linux-gnu/libc.so.6
/rofs/usr/lib/x86_64-linux-gnu/libc.so.6
/usr/lib/x86_64-linux-gnu/libc.so.6

Содержимое /etc/apt/sources.list

deb http://mozilla.debian.net/ wheezy-backports iceweasel-release

## CRUNCHBANG
## Compatible with Debian Wheezy, but use at your own risk.
deb http://packages.crunchbang.org/waldorf waldorf main contrib
# deb-src http://packages.crunchbang.org/waldorf waldorf main

## DEBIAN
deb http://http.debian.net/debian wheezy main contrib non-free
# deb-src http://http.debian.org/debian wheezy main contrib non-free

## DEBIAN SECURITY
deb http://security.debian.org/ wheezy/updates main contrib
# deb-src http://security.debian.org/ wheezy/updates main

решение1

Я предполагаю, что на вашем USB-накопителе установлен тот же дистрибутив, который вы используете, или, по крайней мере, он основан на Debian.

С этими предположениями сначала загрузите вашу систему с вашего живого USB-накопителя. Затем запросите, какой пакет владеет файлом /lib/x86_64-linux-gnu/libc.so.6с помощью команды dpkg -S /lib/x86_64-linux-gnu/libc.so.6(файл окажется принадлежащим пакету с именем "libc6", но это в любом случае хорошее упражнение).

Если ваша система работает с USB-накопителя Live Distro, загрузите требуемый пакет или пакеты сСайт Crunchbang Waldorf.

Затем смонтируйте ваш жесткий диск в какой-нибудь каталог. Для примера я снова предположу, что вы будете монтировать корневой раздел вашего жесткого диска в /mnt.

Затем все, что остается сделать, это переустановить требуемый пакет или пакеты с помощью --root /mntдирективы for dpkg. Таким образом, пакеты не попадут в файловую систему вашего Live USB-накопителя, а вместо этого в систему, которая у вас уже есть на жестком диске.

решение2

Файл libc.so.6присутствует в libc6пакете.

Вам необходимо выяснить, из какого репозитория libc6был установлен пакет на вашем компьютере. (Проверьте /etc/apt/sources.listи т. д.).

Затем вручную загрузите его (например, если это машина Debian, использующая репозитории по умолчанию, вы можете загрузить его отсюда)здесь), а затем установите его, следуя инструкциям, предоставленным @SamiLaine.

решение3

Попробуйте это в оболочке root:

ln -s /lib/x86_64-linux-gnu/libc-2.13.so /lib64/libc.so.6

Если libc-2.13.soверсия не подходит для вашей системы, используйте автодополнение клавишей Tab в bash, чтобы найти нужную версию.

Если это не сработает, вы можете воспользоваться статически связанной версиейldconfigв корневой оболочке:

/sbin/ldconfig

Если целевая библиотека для ссылок libc была удалена, загрузите пакет Debian с сайтаПакет: libc6страницу, распакуйте ее с помощью dpkg-deb -X(страница руководства) и скопируйте libc-2.13.soв /lib/x86_64-linux-gnu. Затем запустите ldconfig, чтобы убедиться, что все ссылки верны.

решение4

Откройте терминал ( Ctrl+ Alt+ T) и выполните следующие команды:

Для 64-битной Ubuntu:

sudo ln -s /lib64/x86_64-linux-gnu/libc.so.6 /lib64/libc.so.6

Для 32-битной Ubuntu:

sudo ln -s /lib/i386-linux-gnu/libc.so.6 /lib/libc.so.6

Связанный контент