问题现象:
backup服务器(192.168.152.121)中,通过nfs服务实现存储共享(/export),访问这块共享空间的服务器包括运用服务器,backup服务器(自身),构成管理服务器,但是应用程序并不是直接访问nfs挂载上来的地址(192.168.152.121:/export)的,而是mount这块空间到本地。于是在各台服务器的/etc/fastab中加了如下配置
192.168.152.121:/export /mnt/backup/ nfs rw,hard,intr,rsize=8192,wsize=8192 0 0
现在遇到的问题是,除了backup服务器,重启机器后,没有mount成功外,其他两台服务器重启机器后都是可以正常mount的。
问题出在了哪里?
os启动时各个服务间启动顺序的导致的。
当前的启动顺序应该是这样的
1.os启动
2.根据/etc/fstab的设定,进行文件系统的Mount
3.NFS Server启动
因此,执行第二步的时候,会失败,从系统日志(/var/log/messages)里也可以看出
Sep 28 16:30:29 ****bk01 systemd: Mounting /mnt/backup... ★ NFS mount执行
Sep 28 16:30:30 ****bk01 systemd: Failed to mount /mnt/backup. ★ NFS mountが失败
Sep 28 16:30:30 ****bk01 systemd: Starting NFS server and services... ★ NFS Server启动开始
Sep 28 16:30:30 ****bk01 systemd: Started NFS server and services. ★ NFS Server启动完毕
因此配置了该文件/etc/systemd/system/mnt-backup.mount,目的是使NFS Server启动后,在执行/mnt/backup的mount操作
mnt-backup.mount
[Unit]
Description=Mount NFS
After=nfs-server.service
[Mount]
what=192.168.152.121:/export
Where=/mnt/backup
Type=nfs
Options=rw,hard,intr,rsize=8192,wsize=8192
[Install]
WantedBy = multi-user.target
通过systemctl list-unit-files可以查看到该服务,是不是要将其设成开机自启动呢?