"systemctl start"가 디스크 암호화 비밀번호를 묻는 이유는 무엇입니까?

"systemctl start"가 디스크 암호화 비밀번호를 묻는 이유는 무엇입니까?

Fedora 24를 처음부터 설치하고 다음과 같이 썼습니다.https://github.com/barrycarter/bcapps/blob/master/FEDORA/README

여러 번 다시 설치했지만(CentOS 7도 시도했지만 포기함) 최근에 문제가 발생했습니다. 내가 할 때 :

sudo systemctl start postgresql mysqld nagios dnsmasq httpd sendmail

(또는 "sudo systemctl start nagios"와 같은 것 중 하나라도) 다음을 얻습니다.

Please enter passphrase for disk STxxxxxx-xxxxxx (luks)! *

문제: 부팅 시 디스크 비밀번호를 입력했고 기본 설치 드라이브(SSD)와 기타 하드 드라이브가 제대로 작동하는지 확인했습니다. Luks 비밀번호를 다시 물어볼 필요가 없습니다!

나중에 이 명령을 "수동으로" 실행하여 이 문제를 분명히 해결할 수 있지만 이는 약간 문제가 있는 것 같습니다. 해결책이 있나요? 내가 뭐 잘못 했어요?

참고: 내 디스크 번호가 비공개가 아닐 수도 있다는 것을 알고 있지만 어쨌든 무시합니다.

답변1

나는 이 질문에 대한 답의 일부를 찾은 것 같습니다.

상황은 이렇습니다. 마지막으로 시스템을 재부팅한 이후로 암호화된 볼륨을 생성했습니다 umount. cryptsetup luksClose나는 또한 그 줄을 주석 /etc/crypttab처리 /etc/fstab하고 noauto.

나중에 실행해본 sudo systemctl start my-oneshot결과 systemd해당 유닛을 생성한 파일 시스템 중 하나가 더 이상 마운트되지 않은 것을 발견하여 부팅을 시도했지만 systemd-cryptsetup@volumename_unlk.service어떤 이유로 맵 이름 "volumename_unlk"를 사용하지 않고 대신 "temporary"를 사용했습니다. -cryptsetup-1234" 또는 기타 4자리 숫자.

결과적으로 장치에 오류가 발생하고 다음에 장치를 실행하려고 하면 재부팅을 시도하며 systemctl start my-oneshot계속해서 암호를 묻습니다.

아직도 혼란스럽나요? 예. 그러나 적어도 어느 정도 명확성은 확보되었습니다. 재부팅 systemd하면 셀이 암호화 장치와 마운트 지점을 재생성할 수 있으므로 이 문제가 해결 될 것으로 생각됩니다 . 재부팅할 기회가 생기면 여기에 업데이트하겠습니다.

편집하다:

예, 재부팅 후 문제가 있는 cryptsetup 장치는 더 이상 존재하지 않으며 oneshot 장치를 시작할 때 비밀번호를 묻는 메시지가 표시되지 않습니다.

답변2

재부팅하지 않고 이러한 상황을 해결하는 명령은 다음과 같습니다.

systemctl daemon-reload

이를 변경하면 모든 유닛 파일을 다시 로드할 뿐만 아니라 모든 유닛 생성기도 다시 실행됩니다. 이것이 바로 /etc/crypttab및/또는 을 변경한 후 원하는 것입니다 /etc/fstab.

관련 정보