![비밀번호 변경 후 sudo su를 사용할 수 없습니다](https://linux55.com/image/174280/%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8%20%EB%B3%80%EA%B2%BD%20%ED%9B%84%20sudo%20su%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%A0%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4.png)
저는 우분투 14.04 LTS를 실행하고 있습니다.
어제 사용자 계정(관리자 계정)의 비밀번호를 변경했습니다. 오늘 아침에 더 이상 sudo su
루트로 전환을 사용할 수 없다는 사실을 발견했습니다 . sudo가 루트 계정의 비밀번호가 아닌 내 사용자 계정의 비밀번호를 사용한다는 것을 알고 있지만 두 비밀번호 중 하나를 사용하여 sudo su로 이동할 수는 없습니다.
그런 다음 재부팅 후 사용자 계정에 로그인하면 화면에 메시지가 잠깐 깜박인 다음 사용자 이름과 비밀번호를 다시 묻습니다. 어제 나는 또한 내 홈 디렉토리에 대한 권한을 변경하여 루트로 로그인하고 chmod 777
내 홈 디렉토리에 대해 명령을 실행했습니다. 이제 해당 사용자 계정을 사용하여 로그인할 수 있지만 내 디렉터리 구조는 마치 새 사용자인 것처럼 교체되었습니다. 터미널에서 루트로 디렉터리를 보면 이전 디렉터리 구조 대신 다음이 표시됩니다.
root@CLM1001-Ubuntu:/home/stephen# whoami
root
root@CLM1001-Ubuntu:/home/stephen# ls
Access-Your-Private-Data.desktop Documents Music Public Templates
Desktop Downloads Pictures README.txt Videos
root@CLM1001-Ubuntu:/home/stephen#
이전에 삭제를 시도한 후 이 동작을 본 적이 .ecryptfs
있으며 유일한 방법은 시스템 백업에서 복원하는 것이었습니다.
백업에서 또 다른 전체 시스템 복원을 수행하는 것 외에 이 사용자 계정이 다시 제대로 작동하도록 할 수 있는 방법이 있습니까?
나는 보았지만 /var/log/syslog
나 /var/log/auth.log
에게 분명한 것은 아무것도 보지 못했습니다. 필요한 경우 이러한 로그에서 덤프를 추가할 수 있지만 크기가 큽니다.
추가 정보 추가: 내 사용자 계정이 더 이상 mysqldump를 실행할 수 없다는 것을 알았습니다. - 권한 거부 오류가 발생합니다. phpmysql에 들어갈 수는 있지만. (또 다른 질문이라는 것을 알고 있으므로 첫 번째 질문에 대한 추가 정보 외에는 가능하면 무시해 주시기 바랍니다.)
좋습니다. 이 문제에 대한 추가 정보는 다음과 같습니다(iMac의 협조를 받을 수 있는 경우). "스크립트" 세션을 실행하고 캡처된 텍스트를 즉시 게시하려고 했습니다.
Script started on Sun 31 May 2020 03:51:24 PM PDT
stephen@CLM1001-Ubuntu:~$ whoami
stephen
stephen@CLM1001-Ubuntu:~$ pwd
/home/stephen
stephen@CLM1001-Ubuntu:~$ hostname
CLM1001-Ubuntu
stephen@CLM1001-Ubuntu:~$ uname -a
Linux CLM1001-Ubuntu 3.13.0-93-generic #140-Ubuntu SMP Mon Jul 18 21:21:05 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
stephen@CLM1001-Ubuntu:~$ passwd
Changing password for stephen.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
stephen@CLM1001-Ubuntu:~$ sudo su
[sudo] password for stephen:
root@CLM1001-Ubuntu:/home/stephen# whoami
root
root@CLM1001-Ubuntu:/home/stephen# exit
exit
stephen@CLM1001-Ubuntu:~$ whoami
stephen
stephen@CLM1001-Ubuntu:~$ ./SQLbackup
./SQLbackup
Sun May 31 15:57:06 PDT 2020
/dev/sdb5 on /media/stephen/Hitachi72101Ptn5 type ext4 (rw)
/media/stephen/Hitachi72101Ptn5 is mounted
-- Warning: Skipping the data of table mysql.event. Specify the --events option explicitly.
<snip> [note: SQLbackup is my script that runs mysqldump.]
stephen@CLM1001-Ubuntu:~$ echo "Ok, it looks like mysqldump is working."
Ok, it looks like mysqldump is working.
stephen@CLM1001-Ubuntu:~$ exit
exit
Script done on Sun 31 May 2020 03:57:35 PM PDT
그 다음에
나는 다음으로 로그인했습니다.
stephen
- 내 홈 디렉토리가 손상되지 않은 것을 볼 수 있습니다
sudo su
문제없이 할 수 있어요mysqldump
문제없이 실행할 수 있어요 .
passwd
stephen
내 계정의 비밀번호를 변경했습니다sudo su
문제없이 할 수 있어요mysqldump
괜찮아요- Firefox 브라우저를 통해 phpmyadmin에 로그인하려고 시도했지만 phpmyadmin에 로그인할 수 없습니다
stephen
(어떤 비밀번호를 사용하든 관계 없음). ls
여전히 내 홈 디렉토리가 표시됩니다. 문제 없습니다.- 시스템을 다시 시작하세요
- 어떤 비밀번호를 사용해도 Stephen으로 로그인할 수 없습니다.
- 다른 사용자 계정을 사용하여 시스템에 로그인하십시오.
sudo su
(뿌리까지)passwd Stephen
- 스티븐 계정의 비밀번호를 원래 비밀번호로 다시 설정했어요
- 로그 아웃
- Stephen으로 다시 로그인하세요. 화면에 뭔가 깜박인 다음 바로 로그인 화면으로 돌아갑니다.
- 시스템을 다시 시작하세요.
- Stephen으로 로그인: 화면이 깜박이고 다시 로그인 화면으로 바로 돌아갑니다.
- 두 번째 사용자 계정으로 로그인
su Stephen
Signature not found in user keyring Perhaps try the interactive 'ecry0tfs-mount-private'
따라서 수정 사항을 다시 찾거나 백업에서 복원할 때까지 이 시점에서 컴퓨터는 작동하지 않습니다.
좋습니다. 두 번째 사용자 계정을 사용하여 문제 컴퓨터에 다시 로그인했습니다. 그런 다음 sudo su
루트로 다음 단계를 수행했습니다. (두 번째 사용자는 rootytooty입니다.)
root@CLM1001-Ubuntu:/home/rootytooty# whoami
root
root@CLM1001-Ubuntu:/home/rootytooty# cd /
root@CLM1001-Ubuntu:/# pwd
/
root@CLM1001-Ubuntu:/# su stephen
Signature not found in user keyring
Perhaps try the interactive 'ecryptfs-mount-private'
stephen@CLM1001-Ubuntu:/$ man ecryptfs-mount-private
stephen@CLM1001-Ubuntu:/$ ecryptfs-mount-private
Enter your login passphrase:
Error: Unwrapping passphrase and inserting into the user session keyring failed [-5]
Info: Check the system log for more information from libecryptfs
ERROR: Your passphrase is incorrect
Enter your login passphrase:
Error: Unwrapping passphrase and inserting into the user session keyring failed [-5]
Info: Check the system log for more information from libecryptfs
ERROR: Your passphrase is incorrect
Enter your login passphrase:
Error: Unwrapping passphrase and inserting into the user session keyring failed [-5]
Info: Check the system log for more information from libecryptfs
ERROR: Your passphrase is incorrect
ERROR: Too many incorrect password attempts, exiting
stephen@CLM1001-Ubuntu:/$ whoami
stephen
stephen@CLM1001-Ubuntu:/$ ecryptfs-mount-private stephen
Enter your login passphrase:
Error: Unwrapping passphrase and inserting into the user session keyring failed [-5]
Info: Check the system log for more information from libecryptfs
ERROR: Your passphrase is incorrect
Enter your login passphrase:
Error: Unwrapping passphrase and inserting into the user session keyring failed [-5]
Info: Check the system log for more information from libecryptfs
ERROR: Your passphrase is incorrect
Enter your login passphrase:
Error: Unwrapping passphrase and inserting into the user session keyring failed [-5]
Info: Check the system log for more information from libecryptfs
ERROR: Your passphrase is incorrect
ERROR: Too many incorrect password attempts, exiting
다시 회복을 할 것 같아요.
그런데: /var/log/syslog
터미널에 표시되는 것과 동일한 메시지가 표시됩니다.
답변1
제가 회복한 방법은 다음과 같습니다.
- 두 번째 관리자 계정으로 로그인하세요. [내 두 번째 계정은
rootytooty
] 루트 계정으로 변경:
sudo su
손상된 계정의 홈 디렉터리 내용을 검토
ls /home/stephen
하고 해당 디렉터리에Access-Your-Private-Data.desktop
파일 이 포함되어 있지만README.txt
있어야 할 파일은 포함되어 있지 않음을 확인하세요.손상된 계정의 홈 디렉터리를 삭제합니다.
rm -r stephen
ecryptfs 패키지 제거
apt-get remove ecryptfs-utils libecryptfs0
손상된 계정에 대해 비어 있는 새 홈 디렉터리를 만듭니다.
mkdir /home/stephen
새 홈 디렉터리에 대한 권한 설정
chown stephen /home/stephen chgrp stephen /home/stephen chmod 777 /home/stephen
손상된 계정 홈 디렉터리의 백업 복사본에서 및 하위 디렉터리를 제거합니다
.Private
..ecryptfs
(외부 디스크에 디렉터리의 백업 복사본을 만들었죠?)cd /externaldrive/Backups/stephen-home rm -r .ecryptfs rm -r .Private
백업 드라이브의 파일을 생성한 새 홈 디렉터리로 복원합니다.
cp -pvr /externaldrive/Backups/stephen-home/* /home/stephen/
참고: 이 복사 작업 중에 모니터가 검게 변한 다음 "신호 없음" 메시지가 표시되고 빨간색 디스크 작업 표시등이 꺼지며 들리는 것은 마더보드 팬이 회전하는 소리뿐입니다. 그래서 활성 디스크(Redo 백업 디스크)에서 재부팅했습니다. 백업 파일이 포함된 드라이브와 /home/stephen 디렉터리가 포함된 드라이브를 마운트한 다음 활성 CD를 사용하여 파일을 계속 복사했습니다.
cp -vprf /externaldrive/Backups/stephen-home/* /home/stephen/
시스템을 다시 시작하고 로 로그인합니다
stephen
. 내 숨겨진 디렉터리(.mozilla
,.firefox
, 등) 가 존재하지 않으므로.local
백업에서 숨겨진 디렉터리를 복사해야 합니다.cp -pvr /externaldrive/Backups/stephen-home/.[^.]* /home/stephen/
여러 실행 프로그램 아이콘이 누락되고 사용자 설정이 사라집니다(창 배경 이미지 등). FTP 소프트웨어에 저장된 설정이 사라졌습니다. 다른 응용 프로그램에서도 마찬가지입니다. 그래서 앱을 다시 설정해야 했습니다. 하지만 내 이메일 기록은 모두 거기에 있습니다.
2012년 12월 25일 게시물을 작성해 주신 Nikos Alexandris에게 감사드립니다.내장된 홈 디렉토리 암호화 사용을 중지하는 방법조사에 참여한 AB, pLumo 및 roaima에게 감사드립니다. 그들은 문제의 원인을 정확히 찾아냈습니다: Ubuntu 10.04부터 존재했던 버그였습니다.
따라서 ecryptfs를 실행 중인 경우 비밀번호를 변경하지 마십시오. 이 문제가 발생하는 다음 사람에게 도움이 되기를 바랍니다. Ubuntu의 후속 버전에 여전히 존재하는지 모르겠지만 Ubuntu 14.04 LTS에서는 존재합니다.
이 장소를 제공해주신 StackExchange에게 감사드립니다.
답변2
따라서 비밀번호를 변경하기 전에 루트 계정이 있었다면 사용자 이름: 루트와 변경되지 않은 비밀번호로 로그인할 수 있습니다. sudo su
이는 해당 사용자 계정에 대해 생성된 루트 로그인이기 때문입니다. 를 사용하시면 sudo su
해당 사용자 계정으로 로그인 한 이후부터 동작하므로, sudo su
비밀번호를 입력하고 변경한 이후부터 동작합니다. 이것이 루트 액세스가 되기를 바랍니다.