!["apt Upgrade"가 실패한 후 sudo는 비밀번호를 묻는 메시지를 표시하지 않습니다. 어떻게 해결할 수 있나요?](https://linux55.com/image/204380/%22apt%20Upgrade%22%EA%B0%80%20%EC%8B%A4%ED%8C%A8%ED%95%9C%20%ED%9B%84%20sudo%EB%8A%94%20%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8%EB%A5%BC%20%EB%AC%BB%EB%8A%94%20%EB%A9%94%EC%8B%9C%EC%A7%80%EB%A5%BC%20%ED%91%9C%EC%8B%9C%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4.%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%ED%95%B4%EA%B2%B0%ED%95%A0%20%EC%88%98%20%EC%9E%88%EB%82%98%EC%9A%94%3F.png)
"sudo apt update"를 수행할 때 "공유 라이브러리 로드 오류: libcrypt.so.1"이라는 메시지가 나타납니다.
몇 분 후에 다시 돌아와서 sudo를 실행하려고 하면 다음과 같은 결과가 나타납니다.
$ sudo -i
Sorry, try again.
Sorry, try again.
sudo: 3 incorrect password attempts
$
즉, sudo는 비밀번호를 묻는 메시지를 표시하지 않습니다. 이 문제를 해결할 방법이 있나요?
시스템은 Raspberry Pi이므로 raspbian(debian)을 실행합니다.
업데이트(Stephen Kitt의 의견에 대한 응답):
이것은 데비안 버그의 사례와 똑같습니다.#993755왜냐하면 테스트를 위해 업그레이드를 적용할 때 libc6을 설정하는 중에 Perl이 손상되었고 결과적으로 dpkg도 손상되었기 때문입니다.
이걸로 업그레이드 끝...
Preparing to unpack .../6-libc6_2.33-7+rpi1_armhf.deb ...
Checking for services that may need to be restarted...
Checking init scripts...
Unpacking libc6:armhf (2.33-7+rpi1) over (2.28-10+rpt2+rpi1) ...
Setting up libc6:armhf (2.33-7+rpi1) ...
/usr/bin/perl: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory
dpkg: error processing package libc6:armhf (--configure):
installed libc6:armhf package post-installation script subprocess returned error exit status 127
Errors were encountered while processing:
libc6:armhf
E: Sub-process /usr/bin/dpkg returned an error code (1)
태그가 붙은 걸 보니수정이 불가능함업그레이드가 심각하게 중단되는 경우 이는 이상하며 내가 아는 한 유일한 방법은 새로 설치하는 것입니다.
높은 권한으로 실행하고 있지 않기 때문에 /lib/...에 복사할 수 없기 때문에 버그 보고서의 수동 복구 단계가 작동하지 않습니다.
답변1
읽고 나서오류 보고서, 내가 찾은 가장 깨끗한 수정 사항은 다음과 같습니다.
sudo apt upgrade perl-base ; sudo apt upgrade
libcrypt1
이것은 누락된 항목을 설치합니다 libcrypt.so.1
. 방금 Kali-Linux WSL2에서 시도했습니다.
~ 위에예방하다OP의 상황. 이미 OP 상황에 처해 있는 경우 먼저 Paladin의 수정 사항을 사용하여 sudo
액세스 권한을 다시 얻으세요.
PI의 SD 카드를 꺼내서 카드 리더기에 넣고 카드 리더기를 Linux PC에 연결하고(모든 Linux 라이브 USB 스틱이 가능함) /etc/shadow 파일을 열고 루트를 검색하고 루트를 변경합니다:*: 18970 :0:99999:7::: 루트::18970:0:99999:7:::(예제의 첫 번째 *는 제거됨), 파일을 저장하고 SD 카드를 다시 PI에 넣고 다음으로 부팅합니다. root로 로그인하고(비밀번호 필요 없음) 슈퍼유저를 사용하여 문제를 해결해 보십시오.