Linuxタブレット:起動中にスクリーンキーボードを使用してパスワードを入力してLUKS暗号化デバイスのロックを解除する方法はありますか?

Linuxタブレット:起動中にスクリーンキーボードを使用してパスワードを入力してLUKS暗号化デバイスのロックを解除する方法はありますか?

私はx86ベースのタブレットにLinux(Ubuntu、しかし重要ではない)をインストールしました。また、起動中にマウントされたパーティションを暗号化しました。もちろん、通常、パーティションのロックを解除するには、起動時にパスワードを入力する必要があります。

cryptsetup luksOpen画面キーボードでパーティションをロック解除する方法はありますか(タッチスクリーンのみ、物理キーボードなし!)今後初めてログインしたユーザーですか?

スクリーンキーボード(Onboard)はログイン(gdmまたは他のディスプレイマネージャ)以降も非常にうまく機能します。

私はインタラクティブにパスワードを要求することが通常の時間(または新しい時間)Xに開始されなかったことを知っているので、Xが起動するまで(しかしユーザーがログインする前に)ロック解除を延期する方法があるかどうかについて質問があります。できます。/etc/init.d/boot.cryptosystemd/etc/crypttab

PS:通常、パスワードプロンプトを表示するプロセスはplymouthパスワードを要求することです。https://wiki.ubuntu.com/Plymouth#A.22plymouth_ask-for-password.22。グラフィック表示モードを使用していますが、Xではないようです。 !統合はlightdm別のオプションです(オンスクリーンキーボードを簡単に使用できます)。

答え1

長い間検索して努力した後、ついに私が余裕がある解決策を見つけました。状況はかなり複雑で、できるだけ構造的に説明しようとしました。

構成

ハードウェア構成:DH87RLマザーボードi7-4771 CPU GeForce GTX 970

ソフトウェア構成:Ubuntu 15.10

ドライバーの選択

デフォルトでインストールされた open nouveau ドライバーまたは独自の nvidia ドライバーを使用できます。次に、グラフィックス起動を設定できる「plymouth」パッケージが密接に関連しています。 plymouthでnvidiaドライバを使用することは私にとっては効果的ではありませんでしたが、他の3つの可能な組み合わせの解決策は次のとおりです。

ここで密接に関連する2つの問題は、起動時に暗号化されたハードドライブのパスワードを入力する機能と、Xが実行されている間にコンソールに切り替える機能です。これら2つの問題は以下に説明される。

起動時に暗号化されたハードドライブのパスワードを入力する機能

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を押しても効果はありません。私が見つけた1つの(醜い)解決策は、Xセッション内でウィンドウマネージャを再起動することです。 lightdmをウィンドウマネージャとして使用すると、他の人ではテストされていませんが、私には効果的でした。 Xセッション内のすべてのアプリケーションが終了するため、これを実行する前に開いているすべての文書を保存してください。 sudo service lightdm restart

繰り返しますが、nouveauドライバは公式のnvidiaドライバよりも優れた作業を行います。私はNVIDIAにとても失望しました!

関連情報