私はDebianテストを使用していますが、ファイルがあります。これは、ext4ファイルシステムを備えたLUKSコンテナーです。私のシステムは、起動するたびにそれをマウントします。そのためには、次の3つのファイルを使用する必要がありました。
/ etc/crypttab
sda2_crypt UUID = 727fa348-8804-4773-ae3d-f3e176d12dac none luks crypt_dropbox/media/Server/Dropbox/luks_dropbox sda2_crypt luks、keyscript =/lib/cryptsetup/scripts/decrypt_派生、noauto
/ etc/fstab
#dropbox UUID = 0d959e74-ec19-43bf-b779-60134c676aef/media/Dropbox ext4 defaults、noauto、user、nofail、noatime、commit = 20 0 2
/etc/rc.local
cryptdisks_start crypt_dropbox mount/media/Dropbox
ドロップボックスボリュームはパーティション上にあり、パーティションをマウントする前に開く必要があるため、コンテナは起動時に/etc/crypttab
+ /etc/fstab
を介して自動的に開いてマウントすることはできません。そのため、/etc/crypttab
にnoauto
があります。そのコンテナ内のファイルシステムは、まだデバイスがないため、mount -a
を介して(少なくとも起動時に)マウントすることもできません。 「デバイスなし」エラーを抑制するためのオプションnofail
が存在します。そして、最初のフェーズが完了します。 2番目のフェーズは、起動が完了したときです。そのため、/etc/rc.local
ファイルを使用しました。最初の行は(/ etc/crypttabの設定のために)パスワードなしでドロップボックスボリュームを開き、2番目の行は/ etc/fstabを介してマウントします。そしてそれはうまくいきます。
このエラーは、システムがドロップボックスボリュームがあるパーティションをアンマウントしようとしたときに発生します。正確な理由はわかりませんが、Dropboxボリュームのファイルシステムがマウンドされているか、コンテナが開いているか、loop0デバイスがまだアクティブであることが原因である可能性があります。ドロップボックスボリュームを完全に閉じるには、次のコマンドを使用する必要があります。
umount /media/Dropbox cryptdisks_stop crypt_dropbox losetup -d/dev/loop0
システムがダウンしたときだけ、他のパーティションをアンマウントする前にそれを行う方法はありますか? /etc/rc.localのように、これらのコマンドを挿入できるファイルはありますか?
詳細は、実行しているディストリビューションとその設定方法によって異なりますが、非常に幅広いブラシでペイントすると、Linuxシステムがダウンすると、ランレベル0(シャットダウン)または6(リブート)のいずれかになります。
ランレベルを切り替えると、initプロセスは「kill」および「start」スクリプトを実行します入力されたランレベルに対して。
このような独自のスクリプトを追加して、特定のランレベルに入るときに任意のコマンドを実行できます。たとえば、システムが再起動の準備をしているときに実行されるDebianにスクリプトを追加するには、任意のコマンドを使用してシェルスクリプト/etc/init.d/my-reboot-prepare-script
を作成します(実行方法の詳細については、そのディレクトリ内の他のスクリプトを参照してください)。 )、次に/etc/rc6.d/K00my-reboot-prepare-script
からシンボリックリンクを追加します。最初のK
により、スクリプトが呼び出され、パラメータstop
を使用して問題のプロセスが「停止」されます。