私のRaspbian(Debian Jessieベース)では、NFSマウントのブート時にrpcbind
を開始する必要があるため、ブートautofs
およびnfs-common
サービスから開始する必要があります。
Debian Jessieがsystemd
に移動したので、問題を回避するためにこれらの3つのサービス(rpcbind、nfs-commond、autofs)を正しい順序で開始するための最良の方法を知りたいです。
NFS共有を手動でマウントした場合は機能します。また、rpcbindとnfs-commonがすでに稼働しているautofsサービスを使用している場合にも機能します。
autofsはsystemdユニットスクリプトを使用します。他の2つのサービスについては、init.dスクリプトを作成する必要がありますか、それともsystemdユニットファイルを作成する必要がありますか?どうすればそれらを書くことができますか?
この問題の原因は、systemd構成ファイルがないことです。 debian-devel
の- Matt Grantによる投稿 に基づいて、これらの手順を実行する必要があります。
/etc/systemd/system/nfs-common.service
を作成しますcat >/etc/systemd/system/nfs-common.service <<\EOF
[Unit]
Description=NFS Common daemons
Wants=remote-fs-pre.target
DefaultDependencies=no
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/etc/init.d/nfs-common start
ExecStop=/etc/init.d/nfs-common stop
[Install]
WantedBy=sysinit.target
EOF
/etc/systemd/system/rpcbind.service
を作成しますcat >/etc/systemd/system/rpcbind.service <<\EOF
[Unit]
Description=RPC bind portmap service
After=systemd-tmpfiles-setup.service
Wants=remote-fs-pre.target
Before=remote-fs-pre.target
DefaultDependencies=no
[Service]
ExecStart=/sbin/rpcbind -f -w
KillMode=process
Restart=on-failure
[Install]
WantedBy=sysinit.target
Alias=portmap
EOF
/etc/tmpfiles.d/rpcbind.conf
を作成しますcat >/etc/tmpfiles.d/rpcbind.conf <<\EOF
#Type Path Mode UID GID Age Argument
d /run/rpcbind 0755 root root - -
f /run/rpcbind/rpcbind.xdr 0600 root root - -
f /run/rpcbind/portmap.xdr 0600 root root - -
EOF
systemctl enable rpcbind.service
systemctl enable nfs-common