업데이트 중 재부팅, glibc 오류 : libc.so.6 : 'GLIBC_2.14'버전을 찾을 수 없습니다


11

11.10에서 12.04로 업그레이드하는 동안 xscreensaver를 제거해야하므로 업그레이드가 중단되었습니다. 터미널을 열려고했지만 시스템이 응답하지 않습니다. 그래서 하드 부팅을했는데 우분투 로딩 화면을 벗어날 수 없습니다. 루트 화면에 도착하면 메시지가 나타납니다.

mountall: /lib/x86_64-linux-gnu/libc.so.6: version 'GLIBC_2.14' not found (required by /lib/libpllibply.so.2

이 시점부터 어떻게해야할지 모르겠습니다.

답변:


8

오늘이 문제가 있었고 몇 분 전에 해결되었습니다.

짧은 대답:

  • Ubuntu의 12.04 라이브 CD 다운로드
  • "시도"부팅
  • 터미널 열기
  • 깨진 파티션을 마운트
  • 라이브 CD의 libc (버전 15)를 파티션에 복사하십시오.
  • 파티션의 libc.so.6 symlink 수정
  • 파티션에 sysfs 마운트, 바인드 및 proc
  • chroot 그것
  • apt-get -f install
  • apt-get dist-upgrade

다음은 명령 목록입니다 (복사 / 붙여 넣기, 내가 놓친 것이 확실하지 않습니다. sda5 대신 적절한 장치를 사용해야합니다 .64 비트 리눅스를 사용하고 있습니다).

sudo -i
cd /mnt
mkdir sda5
mount /dev/sda5 sda5
cp /lib/x86_64-linux-gnu/libc-2.15.so sda5/lib/x86_64-linux-gnu/
cd sda5/lib/x86_64-linux-gnu
rm libc.so.6
ln -s libc-2.15.so libc.so.6
cd /mnt
mount -t sysfs sys sda5/sys
mount -o bind /dev sda5/dev
mount -t proc proc sda5/proc
chroot sda5
ls # make sure ls does not complain about libc!
apt-get -f install
apt-get dist-upgrade

시스템에 업그레이드 할 400 개의 패키지가 있으며 이제 업그레이드 중입니다. 완료되면 재부팅하고 모든 것이 정상인지 확인합니다.

dist-upgrade 후에 다른 작업을 수행해야 할 경우이 게시물을 편집하겠습니다.

[편집] : 업그레이드가 잘되었습니다. 그런 다음 재부팅하고 로그인 할 수 있습니다 (Xfce 사용). 무선은 작동하지 않았지만 단일 기능 modprobe brcmsmac으로 작동했습니다. 이제 이전 패키지를 제거하기 위해 시스템 관리인을 실행하고 있습니다.


일단 sda5를 마운트하려고하면 스왑 파일이며 마운트 할 수 없다는 응답이 표시됩니다 (?)

@TurboWald sda5는 내 루트 파티션이었습니다. 루트 파티션이 어느 것인지 찾아야합니다. sda1을 마운트 한 후 내용을 확인한 다음 sda2를 마운트하고 내용을 확인하십시오. 루트 파티션은 / lib, / usr, / bin 등과 같은 파일을 포함해야합니다.
pzanoni

13.04로 업그레이드하려고 할 때와 libc-2.17.so를 복사하고 심볼릭 링크를 만든 후에도 같은 오류가 표시됩니다. 공유 라이브러리를로드하는 동안 __vdso_time 오류가 발생했습니다
ShaggyInjun

1

따라서 sudo dpkg --configure -a를 실행하면 업그레이드가 완료됩니까? apt-get install --fix-missing을 sudo 할 수 있도록 시도하는 또 다른 옵션입니다. 복구 모드로 들어가려면 ....

우분투 위키에서 이것을 얻었습니다 : https://wiki.ubuntu.com/RecoveryMode

컴퓨터 전원 켜기 BIOS 로딩이 완료 될 때까지 기다리십시오 (컴퓨터 제조업체의 로고가 보일 것입니다). 다음 메시지가 표시됩니다 :

그럽 로딩 단계 1.5

GRUB 로딩 중입니다. 잠시만 기다려주십시오 ...

Esc 키를 눌러 메뉴로 들어갑니다. Esc 키를 빠르게 누르면 부팅 메뉴가 나타납니다. (우분투 로고가 보이면 '(복구 모드)'로 끝나는 줄을 선택했을 것입니다. 아마도 두 번째 줄은 다음과 같습니다.

Ubuntu, 커널 2.6.17-10- 일반 (복구 모드) Enter 키를 누르면 시스템이 부팅 프로세스를 시작합니다. 잠시 후 워크 스테이션에 여러 옵션이있는 메뉴가 표시됩니다. 옵션 중 하나 (목록의 맨 아래로 스크롤해야 할 수도 있음)는 "루트 쉘로 드롭 프롬프트"입니다.


터미널에 들어갈 수 없어 다른 화면에서 입력하는 것이 없기 때문에 어디서해야합니까?
Curt

여전히 복구 모드로 부팅 할 수 있으며 # (루트) 프롬프트가 표시됩니까?
Brett

우분투의 라이브 CD 또는 USB에 손을 넣을 수 있다면 앤드류가 아래에 준 대답을 추천합니다.
Brett

0

12.04 미디어를 부팅하고 시스템의 CD 업그레이드를 수행 할 수 있는지 확인하십시오. (아직도 여전히 11.10이라고 생각한다고 가정하면)


System76에서 랩톱을 구입하여 부팅 CD가 없습니다. 그 후 복구 모드에서 시작할 수 있었지만 dpkg 옵션을 실행하려고하면 dpkg가 중단되었습니다. 문제를 해결하려면 'dpkg --configure -a'를 수동으로 실행해야합니다.
Curt

@Curt 당신은 실행할 수 dpkg --configure -a있습니까?
belacqua

0

cd 또는 usb로 부팅 한 다음 파일 시스템 chroot를 마운트 지점에 마운트하고 실행할 수 sudo apt-get install -f --fix-missing있습니다.

  1. USB에서 부팅
  2. 터미널 열기
  3. cd /mnt
  4. sudo mkdir /mnt/brokesystem
  5. sudo mount /dev/*sda1* /mnt/brokesystem * 참고 / dev / sda1은 다른 / dev / ... 일 수 있습니다.
  6. sudo chroot /mnt/brokesystem
  7. sudo apt-get install -f --fix-missing (서비스를 다시 시작하라는 메시지가 표시되고 서비스를 다시 시작할 수 없다는 오류가 표시됩니다. 괜찮습니다)
  8. 업데이트가 완료되면 재부팅합니다 (대체 부팅 장치 cd / usb 제거).
  9. 정상적으로로드해야합니다 (처음 부팅하는 데 시간이 조금 더 걸릴 수 있음)

@Vipul Gupta sda1을 직접 chroot 할 수 없습니다. sda1을 마운트해야합니다. 디렉토리는 / mnt, sudo mkdir brokesystem, sudo mount / dev / sda1 / mnt / brokesystem이어야하고 6부터 계속해야합니다.
Andrew
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.