Linux 태블릿: 부팅 중에 화면 키보드를 사용하여 비밀번호를 입력하여 LUKS 암호화 장치의 잠금을 해제할 수 있는 방법이 있습니까?

Linux 태블릿: 부팅 중에 화면 키보드를 사용하여 비밀번호를 입력하여 LUKS 암호화 장치의 잠금을 해제할 수 있는 방법이 있습니까?

방금 x86 기반 태블릿에 Linux(Ubuntu, 하지만 중요하지 않음)를 설치했습니다. 또한 부팅 중에 마운트된 파티션을 암호화했습니다. 물론 일반적으로 파티션 잠금을 해제하려면 부팅 시 비밀번호를 입력해야 합니다.

cryptsetup luksOpen화면 키보드로 파티션을 잠금 해제()할 수 있는 방법이 있습니까 (터치스크린만 가능, 물리적 키보드 없음!)앞으로처음 로그인한 사용자인가요?

화면 키보드( Onboard)는 로그인( gdm또는 다른 디스플레이 관리자) 및 그 이후에도 매우 잘 작동합니다.

나는 대화식으로 암호를 요청하는 것이 정상적인 시간 (또는 새로운 시간 ) X에 시작되지 않았다는 것을 알고 있으므로 X가 시작될 때까지(그러나 사용자가 로그인하기 전에) 잠금 해제를 연기할 수 있는 방법이 있는지에 대한 질문이 있을 수 있습니다./etc/init.d/boot.cryptosystemd/etc/crypttab

추신: 일반적으로 비밀번호 프롬프트를 표시하는 프로세스는 plymouth비밀번호를 묻는 것 입니다.https://wiki.ubuntu.com/Plymouth#A.22plymouth_ask-for-password.22. 그래픽 디스플레이 모드를 사용하지만 X는 아닌 것 같은데요? ! 통합은 lightdm또 다른 옵션입니다(온스크린 키보드를 쉽게 사용할 수 있음).

답변1

오랫동안 검색하고 노력한 끝에 마침내 제가 감당할 수 있는 해결책을 찾았습니다. 상황이 꽤 복잡해서 최대한 구조적으로 설명하려고 노력했습니다.

구성

하드웨어 구성: DH87RL 마더보드 i7-4771 CPU GeForce GTX 970

소프트웨어 구성: 우분투 15.10

드라이버 선택

기본으로 설치된 open nouveau 드라이버 또는 독점 nvidia 드라이버를 사용할 수 있습니다. 다음으로 그래픽 시작을 구성할 수 있는 "plymouth" 패키지가 밀접하게 관련되어 있습니다. plymouth와 함께 nvidia 드라이버를 사용하는 것은 저에게 효과적이지 않았지만 다른 3가지 가능한 조합에 대한 해결책은 다음과 같습니다.

여기서 밀접하게 관련된 두 가지 문제는 시작 시 암호화된 하드 드라이브에 대한 비밀번호를 입력하는 기능과 X가 실행 중인 동안 콘솔로 전환하는 기능입니다. 이 두 가지 문제는 아래에 설명되어 있습니다.

시작 시 암호화된 하드 드라이브의 비밀번호를 입력하는 기능

Nouveau 드라이버 대 Plymouth: Nouveau 드라이버는 "아주 잘" 작동합니다. 즉, 텍스트 모드를 표시하려면 시작할 때 키보드의 아래쪽 화살표를 눌러야 한다는 의미입니다. 거기에서 비밀번호를 묻는 메시지가 나타납니다. (일부 별표가 이미 표시되어 있을 수 있습니다. 비밀번호를 입력하기 전에 별표를 제거하세요...)

이 솔루션은 괜찮지만, 예를 들어 nouveau를 사용하면 virtualbox 내부에 적절한 3D 가속이 없기 때문에 작동하려면 nvidia 드라이버가 필요합니다.

Plymouth가 없는 Nvidia 드라이버: 제가 현재 사용하고 있는 nvidia 드라이버는 nvidia-352입니다. 저는 apt-get을 통해 설치했습니다. 그래서 nvidia.com 사이트에서 직접 드라이버를 다운로드하여 설치하는 대신 nvidia 드라이버 배포판(제 경우에는 Ubuntu 15.10) 패키지를 사용했습니다.

Nvidia 드라이버가 제대로 작동하려면 plymouth를 비활성화해야 합니다. 예를 들어 "noplymouth" 옵션을 커널 인수에 전달하면 이 작업을 수행할 수 있습니다.

--- /etc/default/grub (예제) ---

[...]
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash noplymouth"
[...]

---그럽 업데이트 ---

그런 다음 명령줄에서 update-grub을 실행합니다.

# update-grub

이러한 변경으로 인해 그래픽 시작 중에 화면이 잠시 깜박이는 것을 볼 수 있습니다(분명히 암호 프롬프트가 몇 초 동안 나타났다가 다시 사라집니다). 하지만 이제 비밀번호 프롬프트가 나타나는 것을 알았으므로 비밀번호 입력을 시작할 수 있습니다. 첫 번째 문자를 입력하고 입력한 문자가 인식되면 프롬프트가 다시 나타납니다. 안전하지 않은 경우 비밀번호 프롬프트가 준비되었는지 여부에 관계없이 위에서 언급한 대로 아래쪽 화살표를 누를 수 있습니다.

예, 완벽한 솔루션은 아닙니다. 하지만 오랫동안 검색하고 시도한 후에는 적어도 작동하며 익숙해질 수 있습니다.

호기심 때문에 나는 또한 plymouth의 nouveau 드라이버를 비활성화하려고 시도했습니다. 이 경우에는 암호 프롬프트가 나타나고 화면에 남아 있기 때문에 훨씬 더 원활하게 작동했습니다.

따라서 무료 nouveau 드라이버가 nvidia 드라이버보다 더 나은 작업을 수행하는 것 같습니다. 내 생각엔 NVIDIA가 아직 여기서 숙제를 좀 해야 할 것 같아요!

콘솔로 전환

누보 드라이버를 사용하면 쉽게 콘솔로 전환할 수 있습니다(CTRL-ALT-F1).

nvidia-352 드라이버를 사용하면 콘솔로 전환할 수 없습니다! CTRL-ALT-F1을 눌러도 아무런 효과가 없습니다. 내가 찾은 한 가지 (추악한) 해결 방법은 X 세션 내에서 창 관리자를 다시 시작하는 것입니다. lightdm을 창 관리자로 사용하면 다른 사람에서는 테스트되지 않았지만 나에게 효과적이었습니다. X 세션의 모든 응용 프로그램이 종료되므로 이 작업을 수행하기 전에 열려 있는 모든 문서를 저장하십시오. sudo service lightdm restart

다시 말하지만, nouveau 드라이버는 공식 nvidia 드라이버보다 더 나은 작업을 수행합니다. 저는 NVIDIA에 매우 실망했습니다!

관련 정보