パッケージをインストールnfs-utils
し、次の方法で試しました。
# mount -t nfs server:/mnt /mnt
mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.
mount.nfs: an incorrect mount option was specified
まあ、おそらくsystemdを介して起動する必要があります。そうですか?
# systemctl start nfs-lock.service
Job failed. See system journal and 'systemctl status' for details.
# journalctl
Jun 15 23:22:18 host rpc.statd[24339]: Version 1.2.6 starting
Jun 15 23:22:18 host rpc.statd[24339]: Opening /var/run/rpc.statd.pid failed:
Permission denied
[..]
Jun 15 23:22:18 host systemd[1]: nfs-lock.service: control process exited,
code=exited status=1
Jun 15 23:22:18 host systemd[1]: Unit nfs-lock.service entered failed state.
SELinux関連の問題だと思いますか?
Jun 15 23:22:18 host setroubleshoot[3211]: analyze_avc()
avc=scontext=system_u:system_r:rpcd_t:s0
tcontext=unconfined_u:object_r:var_run_t:s0
access=['unlink'] tclass=file tpath=rpc.statd.pid
Jun 15 23:22:18 host setroubleshoot[3211]: SELinux is preventing
/usr/sbin/rpc.statd from unlink access on the file rpc.statd.pid.
Jun 15 23:22:18 host setroubleshoot[3211]: analyze_avc()
avc=scontext=system_u:system_r:rpcd_t:s0
tcontext=unconfined_u:object_r:var_run_t:s0
access=['write'] tclass=file tpath=rpc.statd.pid
Jun 15 23:22:18 host setroubleshoot[3211]: SELinux is preventing
/usr/sbin/rpc.statd from write access on the file rpc.statd.pid.
いいですね。これで質問は次のとおりです。どのSELinux設定またはどのファイルタグを変更する必要がありますか?
# systemctl status nfs-lock.service
nfs-lock.service - NFS file locking service.
Loaded: loaded (/usr/lib/systemd/system/nfs-lock.service; enabled)
Active: failed (Result: exit-code) since Fri, 15 Jun 2012 23:22:18 +0200;
13min ago
Process: 24338 ExecStart=/sbin/rpc.statd $STATDARG
(code=exited, status=1/FAILURE)
Process: 24334 ExecStartPre=/usr/lib/nfs-utils/scripts/nfs-lock.preconfig
(code=exited, status=0/SUCCESS)
CGroup: name=systemd:/system/nfs-lock.service
パッケージが紛失しましたか?それとも間違ったサービスを利用しましたか?
答え1
SElinuxエラーは表示されないので、これが役に立つかどうかはわかりません。
Fedora 17をインストールした後、最新バージョンにアップグレードしましたが、再起動できませんでした。いくつかのGNOMEパッケージの更新のためにログアウトしてから再度ログインしました。 (アップデートsystemd
も含まれていることがわかりませんでした。)
NFS共有をマウントするためにnfs-utils
rpcbindサービスをインストールして起動しようとしました。
sudo systemctl start rpcbind.service
次のエラーが発生します。
Failed to issue method call: Unit var-run.mount failed to load: No such file or directory. See system logs and 'systemctl status var-run.mount' for details.
var-run.mountは最近削除されたように見え、まだ存在しているyum whatprovides
ようですsystemd-44-8.fc17
。
他の多くのNFSサービスでも同じエラーが発生しました。
私の場合は、再起動するだけで役に立ちました。したがって、最新のパッケージに更新して再起動する必要があるかもしれません。 (再起動せずに設定を再度読み取るようにsystemdを取得する方法を知っている人がいる場合は、教えてください。)
答え2
Fedora 17で開始する必要があるサービス名は「nfslock」なので、次のようになります。
systemctl start nfslock
nfs-utilsのインストール後に有効になりました。
答え3
nfs-lock.service
systemdによる起動は、コマンドラインからNFS 3をマウントするための前提条件ではないようです。
処刑されたばかり
# mount -t nfs server:/mnt /mnt
nfs-utils
(パッケージのインストール後)「ロード済みrpc.statd
- SELinuxがもう存在しません」というエラーメッセージが表示されます。そしてマウントされたNFSエクスポートは問題なく動作します。
カーネルはsystemdと対話せずに要求に応じてrpc.statd(および友達)を起動するようです。
# pgrep -l rpc
3063 rpc.statd
22599 rpciod
24280 rpcbind