
.dll 때문에 시작되지 않는 Oracle Linux 7.2의 VirtualBox 인스턴스가 있습니다 Failed to start Login Service
. 부팅 순서에서 이 메시지가 나타나면 프로세스가 중단되고 계속되지 않으므로 로그인하여 실행할 수도 없습니다 systemctl status systemd-logind.service
.
이에 대한 가능한 원인은 모든 사용자(루트 포함)가 zsh를 기본 쉘로 설정하는 동안 zsh를 제거했기 때문입니다(duh!). 그 후 컴퓨터가 시작되고 로그인 프롬프트가 표시되었지만 셸을 찾을 수 없어 로그인할 수 없었습니다. 그런 다음 Live CD를 삽입하고 /etc/passwd
사용자의 기본 셸을 /bin/bash
. 이 후에는 로그인 서비스가 전혀 시작되지 않습니다. 이 문제를 해결하는 방법에 대한 아이디어가 있습니까?
답변1
/etc/passwd
변경 후 더 이상 올바른 SELinux 설정이 없다는 것을 알았습니다 . 내 컴퓨터에는 SELinux가 실제로 필요하지 않으므로 SELinux를 완전히 비활성화하여 문제를 해결했습니다. 이는 파일을 수정 /etc/selinux/config
하고 옵션을 설정 SELINUX=permissive
(나중에 활성화하기 위해 SELinux 파일 레이블 지정을 유지하려는 경우)하거나 SELINUX=disabled
(완전히 끄는 경우) 쉽게 수행됩니다.
답변2
오늘 VirtualBox의 CentOS 7.2에서 이 문제가 발생했습니다. ssh
일반 사용자로 로그인 하여 발급받았습니다.
touch /.autorelabel
그런 다음 재부팅하여 모든 컨텍스트를 재설정했습니다. 부팅하는 데 시간이 좀 걸리지만 작동했습니다.
답변3
비밀번호가 만료되어 단일 사용자 모드로 사용한 후에는 적절한 레이블을 복원하려면 설정한 상태 chage
로 부팅해야 합니다 .SELINUX=permissive
/etc/selinux/config
정상적인 시스템에서 수정된 각 파일에 대해 적절한 SELinux 컨텍스트를 가져오고 ls -Z /etc/passwd /etc/shadow
손상된 시스템에 다시 컨텍스트를 적용합니다.
로서예, 다음은 CentOS 7에서 사용되는 명령 세트입니다 chage
.신청하지 마세요정상 시스템(테스트 또는 사전 제작)과 비교하지 않고!
chcon system_u:object_r:passwd_file_t:s0 /etc/passwd
chcon system_u:object_r:passwd_file_t:s0 /etc/group
chcon system_u:object_r:shadow_t:s0 /etc/shadow
chcon system_u:object_r:shadow_t:s0 /etc/gshadow
SELINUX=enforcing
일반 작업으로 돌아가기 위해 재부팅하기 전에 단일 모드에서 수정한 모든 파일의 SELinux 컨텍스트를 검토하세요 .
SELinux 컨텍스트를 복사하는 다른 방법은 다음에서 확인할 수 있습니다.한 디렉터리에서 SELinux 컨텍스트를 복사하여 다른 디렉터리에 적용하는 방법은 무엇입니까?