cp -r --preserve=all
오늘은 메인 시스템에 문제가 생길 경우를 대비해 백업을 갖고 싶었기 때문에 루트 파일 시스템을 다른 파티션에 복사했습니다 . 저는 Arch Linux의 자유 변형인 Parabola를 사용하고 있습니다. /home
두 시스템에서 공유할 파티션은 하나만 있습니다 . 시스템을 복사한 후(라이브 USB 사용) 팩맨을 사용하여 전체 시스템 업그레이드를 수행했습니다(구식임). 새 시스템에 로그인하려고 하면 모든 것이 괜찮은 것 같고 DM 로그인 화면으로 부팅되지만 내 사용자 비밀번호가 작동하지 않습니다. 그래서 가상 터미널로 전환해서 루트로 로그인을 해봤지만 역시 안 되더라구요.
그래서 라이브 USB로 돌아가서 chroot
새로 복제된 루트 파티션으로 가서 passwd
루트를 포함한 모든 비밀번호(사용됨)를 새로 고쳤습니다. 그런 다음 재부팅했는데 똑같은 일이 일어났습니다. 여전히 내 사용자 계정에 로그인할 수 없거나 루트로 로그인할 수 없습니다.
여기서 뭔가 빠졌나요?
편집하다:
명확히 하기 위해 파티션을 "복제"하지 않고 cp
gparted로 만든 새 파티션에 루트 파일 시스템( 사용)을 복사했습니다(명확하게 하기 위해 질문 제목을 변경하겠습니다). 따라서 새 파티션은 상위 파티션과 다른 UUID를 갖습니다. 그래서 복제 시스템을 부팅하려면 grub.cfg
몇 가지 수동 조정을 해야 했습니다 . /etc/fstab
비밀번호 시스템이 파티션 UUID와 연관되어 있습니까? 이것이 문제의 원인이 될 수 있습니까?
passwd
또한 chroot를 실행했을 때 비밀번호가 성공적으로 업데이트되었다는 메시지가 표시되었다는 점을 추가하고 싶습니다 (그 후에도 여전히 비밀번호가 작동하지 않음).
답변1
비밀번호를 업데이트한 후에도 계속 로그인할 수 없다면 근본적으로 문제가 있는 것 같습니다.
라이브 USB로 돌아가서 su
루트 및 비루트 권한 및 /bin/login
루트 권한으로 루트를 설정하고 시도하는 것이 좋습니다. 올바른 비밀번호를 얻으면 오류 메시지가 나타날 수 있습니다.
/etc/nsswitch.conf
및 의 내용 도 확인해 보겠습니다 /etc/pam.d/
.
또한 비밀번호를 제거하고(가운데 두 번째 필드 지우기 /etc/shadow
) 작동하는지 확인하겠습니다. (전체 문제가 해결되면 이 사용자에게 새 비밀번호를 할당해야 합니다.)
/var/log/auth.log
또한 읽을 가치가 있는 오류 메시지가 (또는 해당 디렉터리의 다른 파일) 있을 수 있습니다.
답변2
문제를 발견한 것 같아요. /var/log/pacman.log
내가 수행한 시스템 업데이트 내역을 확인했습니다 . 파일 /etc/pam.d/system-login
이 /etc/pam.d/system-login.pacnew
. pam이 로그인을 처리하는 방식을 변경하여 이전 파일에서는 작동하지 않을 수 있습니다.
어쨌든 이제 다시 로그인이 잘 됩니다. 아마도 내 실수는 chroot에서도 시스템 업데이트를 실행한 것일 수 있습니다. 복사한 후 중복 시스템에 로그인하여 거기에서 업데이트를 실행해야 할 것 같습니다.