シングルユーザーモードで起動しない場合のサービスの無効な起動順序

シングルユーザーモードで起動しない場合のサービスの無効な起動順序

私はLinuxでsysvinitとZFSを実行しているDebian Wheezyシステムについて質問しています。私の問題はZFSで発生していますが、根本的な問題はZFSに限定されていないと強く疑っています。

何らかの理由でシステムを正常に起動するとzfs-import実行されます。今後 cryptdisks-earlyシステム起動中。 LUKS デバイスに ZFS プールがあり、LUKS デバイスがまだ復号化されていないため、インポートできないため問題になります。ファイルシステムの内容が予想されるため、他の多くの操作が失敗します。使用できますが、そうではありません。

singleただし、シングルユーザーモードで起動すると(カーネルコマンドラインに追加)、必要に応じて動作するようですcryptdisks-earlyzfs-import

最近このようなことがいつあったのか覚えていません。いいえこれは本当ですが、通常の起動時にサービスが正しい順序で自動的に開始されないことを保証することはできません。私はすべてがかなり大きなZoLアップグレードから始まったと思います。デフォルトでは、/etc/insserv.conf.d のような以前の設定と比較して若干の調整を促すまったく新しい初期化スクリプトです。 initスクリプト自体は大丈夫です。ただ起動順序に問題があるだけです。

/ etc / rc?

  • S10cryptdisks-early
  • S11zfs-import
  • S12cryptdisks

素朴に言えば、すべてが正しい順序で始まるはずですが、必ずしもそうではありません。

/etc/insserv.conf.d/zfs-mountinclude $local_fs +zfs、これは予想されます(ZFSファイルシステムのマウントは提供の一部ですlocal_fs)。 ZFSでは、インポートとマウントは2つの異なる操作であり、マウント前にインポートが発生します。 (ファイルシステムをマウントせずにZFSプールをインポートできますが、ファイルシステムが保存されているプールをインポートしないと、ZFSファイルシステムをマウントできません。通常、私のシステムではZFSファイルシステムが自動的にマウントされます。(プールがインポートされます) 。

システムの真のクリーンブートを保証するための回避策として、do_startを続行する前に手動で起動するように/etc/init.d/zfs-import編集しましたcryptdisks-early。しかし、私はいくつかの構成設定を変更して同じ目標を達成したいと思います(可能であるかどうか疑問です)。

zfs-importとの相対的な順序に関する具体的な情報を見つけることができないようですが、cryptdisks-earlyおそらくそこから明らかなことを見落としているようです。

システムを確認したい。着実に開始(開始するまで待ちます。時間がかかる場合があります)cryptdisks-early 今後始めようとしていますzfs-import。システム構成ファイルをどのように変更する必要がありますか?

/etc/init.d/.depend.start関連する内容はリストされていませんが、次の抜粋に示す/etc/init.d/.depend.bootように、ZFSと暗号化ディスクが記載されています。

cryptdisks: checkroot.sh cryptdisks-early udev mdadm-raid
cryptdisks-early: checkroot.sh udev mdadm-raid
zfs-mount: mountall.sh mountall-bootclean.sh cryptdisks cryptdisks-early zfs-import
zfs-import: mtab.sh

したがって、正しく読み取ると、zfs-mountはzfs-importとcryptdisksに依存しますが、zfs-import自体はcryptdisksに依存しないため、initはzfs-importを自由に起動できます。今後cryptdisks または cryptdisks-early.これは実際に実際に発生する動作ですが、/etc/rcS.dの下のファイル名が表す動作ではありません。

必要に応じてより多くの情報を提供します。関連性のある情報を教えてください。

関連情報