iSCSIブロックをインポートしてext4としてマウントし、NFS共有にエクスポートするUbuntuシステムがあります。起動時にiSCSIディレクトリマウントがまだロードされていないため、NFSは起動しません。
"exportfs: /mnt/iscsi/nfs を計算できません: そのファイルまたはディレクトリはありません"
サーバーの起動後にnfs-kernel-serverを実行すると正常に動作します。
NFSがiSCSIブロックマウントを待つようにする方法はありますか?
編集:追加調査中。nfs-server.serviceがmnt-iscsi.mountを待つように強制して依存関係ループをトリガーしました
Dec 02 09:16:09 on1 systemd[1]: nfs-server.service: Found ordering cycle on mnt-iscsi.mount/start
Dec 02 09:16:09 on1 systemd[1]: nfs-server.service: Found dependency on remote-fs-pre.target/start
Dec 02 09:16:09 on1 systemd[1]: nfs-server.service: Found dependency on nfs-server.service/start
Dec 02 09:16:09 on1 systemd[1]: nfs-server.service: Unable to break cycle starting with nfs-server.service/start
何を変えるべきかを調べようとしました。
ありがとうございます!
答え1
remote-fs-pre.target
私の場合、iSCSIドライブがiSCSIドライブの一部として扱われ、systemd
デフォルトで起動するのが問題だったようですnfs-server
Before
。
質問で指摘したようにループをAfter
作成するには、1行だけ入力してください。/etc/systemd/system/nfs-server.service.d/override.conf
私の解決策は以下を使用することです。
systemctl edit --full nfs-server
完全な設定を複製するので、コメントアウトが可能です。
##Before=remote-fs-pre.target
そして、以下を追加してください:
After=mnt-foo.mount
今まではそんなに良くなった。