cryttab 書いたけど・・・
この書式であってんのかな。と、自身が無い
/etc/crypttab の内容をチェックしたり、テストしたり、また再起動せずに反映したいときにどうするのか。
cryptdisks_start crypt-ssd を使う
crypttab の内容を使ってリマッピングする
sudo cryptdisks_start crypt-my-ssd sudo cryptdisks_stop crypt-my-ssd
再起動前にチェックする
systemd の仕組みを通して、再起動のプロセスを擬似的に再現する。
sudo /usr/lib/systemd/system-generators/systemd-cryptsetup-generator /run/systemd/generator sudo systemctl daemon-reload sudo systemctl restart cryptsetup.target
注意点 コメントアウトが誤作動する
次のような、末尾にコメントをつけた場合、再起動後は問題なく動く
crypt-disk10 UUID=xxx /boot/keyfil luks,keyslot=0 # WDC WD80EAAZ-00BXBB0 / WD-RD0A75RE / 2024-05-15:追加
cryptdisk コマンドの場合は、エラーになる。
Starting crypto disk...cryptsetup: ERROR: crypt-disk10: invalid value for 'keyslot' option, skipping
ただし、cypytdisks_start は、次のように並んでいる場合
crypt-disk07 UUID=xxx /keysluks,keyslot=0 # コメント crypt-disk08 UUID=xxx /keysluks,keyslot=0 # コメント crypt-disk09 UUID=xxx /keysluks,keyslot=0 # コメント crypt-disk10 UUID=xxx /keysluks,keyslot=0 # コメント
必要な行だけを読み込む
sudo cryptdisks_start crypt-disk10 # failed syntax error
この場合は、disk10 の部分だけを読み込む。
だから、Syntaxエラーには、disk10 の場所だけ。
なので
crypt-disk07 UUID=xxx /keysluks,keyslot=0 # コメント crypt-disk08 UUID=xxx /keysluks,keyslot=0 # コメント crypt-disk09 UUID=xxx /keysluks,keyslot=0 # コメント crypt-disk10 UUID=xxx /keysluks,keyslot=0
とすると
sudo cryptdisks_start crypt-disk10 # success
ちゃんと動作する。
どう考えてもこれってバグっぽい挙動ですよね。
書式は同じだけど、コマンドの場合だけ、動かないのは「バグ」だと思うんです。
まぁ仕方ないけどね。
テストするときは、cryptdisk_start する 行だけがシンタックスあっていればいいので。
2024-05-15
コメントのバグについて言及。