ubuntu18.04 NFS挂载远程服务器

背景:
本地计算机访问远程服务器,并且改写服务器上的文件,通过NFS把服务器上文件所在的目录挂载到本地计算机目录,从而可以在本地目录改写。

1. 配置配置 NFS 服务端

首先服务端将自己的文件挂载出来,然后才能被客户端访问
在服务器上操作:
1.1 安装 NFS 服务端

sudo apt-get install nfs-kernel-server

如果出现错误:

dpkg: error processing package nfs-common (--configure):
 subprocess installed post-installation script returned error exit status 10
dpkg: dependency problems prevent configuration of nfs-kernel-server:
 nfs-kernel-server depends on nfs-common (= 1:1.2.8-9ubuntu12.3); however:
  Package nfs-common is not configured yet.

dpkg: error processing package nfs-kernel-server (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 nfs-common
 nfs-kernel-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

参考解决方案:Ubuntu dpkg报错: dpkg: error processing package

1.2 添加 NFS 挂载目录

$ cd /media/xxx/wxf
$ pwd
/media/xxx/wxf
sudo vi /etc/exports 

添加内容:

/media/xxx/wxf *(rw,sync,no_root_squash)

前面是挂载的文件路径
*(rw,sync,no_root_squash)表示允许任何网段 IP 的系统访问该 NFS 目录

1.3 修改挂载目录的权限以及修改文件用户

$ sudo chmod  -R  775  /media/xxx/wxf
$ sudo chown  -R  775  /media/xxx/wxf

1.4 启动NFS服务

$ sudo /etc/init.d/nfs-kernel-server start
[ ok ] Starting nfs-kernel-server (via systemctl): nfs-kernel-server.service.
$ sudo /etc/init.d/nfs-kernel-server restart
[ ok ] Restarting nfs-kernel-server (via systemctl): nfs-kernel-server.service.

先启动NFS再重启NFS

2. 配置 NFS 客户端

2.1 安装 NFS 客户端

sudo apt-get install nfs-common portmap

2.2 创建本地映射的目录

$ sudo mkdir /home/xxx/mount

2.3 挂载服务端的文件到本地

sudo  mount  -t  nfs  -o  nolock  192.168.2.168:/media/xxx/wxf  /home/xxx/mount

192.168.2.168 为服务器的IP

2.4 查看是否挂载成功

$ df -H
Filesystem                                                          Size  tmpfs 
...                                                              1.7G   54k  1.7G   1% /run/user/1000
/dev/sdb1                                                           4.1T  3.7T  384G  91% /media/XXX/Elements
192.168.10.127:/media/XXX/wxf  8.0T  3.3T  4.3T  44% /home/XXX/mount

且到 /home/xxx/mount 目录,查看是否有需要挂载的文件

$ cd /home/xxx/mount
$ ls
01-5000       IA-SSD_PC             OpenPCDet_ori     YOLOv6
01-5000.zip   lib                   OpenPCDet_zori    yolov7
02-20000      OpenPCDet_ls          output            yolov7_inference
02-20000.zip  openpcdet_lskitti     pcl_1_9_1
IA-SSD        OpenPCDet-master.zip  TensorRT-8.2.5.1

挂载成功!!!

3. 启动开机挂载

nfs 挂载会在每次重启后失效,需要手动重新挂载,这样很麻烦,故需要开机自动挂载

3.1 创建开机启动的脚本文件

$ cd /etc/init.d
$ sudo vim mount_nfs.sh

添加内容

#!/bin/bash
### BEGIN INIT INFO
# Provides:           svnd.sh
# Required-start:     $local_fs $remote_fs $network $syslog
# Required-Stop:      $local_fs $remote_fs $network $syslog
# Default-Start:      2 3 4 5
# Default-Stop:       0 1 6
# Short-Description:  starts the svnd.sh daemon
# Description:        starts svnd.sh using starts-stop-deamon
### END INIT INFO

sudo  mount  -t  nfs  -o  nolock  192.168.2.168:/media/xxx/wxf  /home/xxx/mount

3.2 修改脚本的权限

sudo chmod 777 mount_nfs.sh

3.3 将脚本添加到开机执行的队列中

sudo update-rc.d mount_nfs.sh defaults 90

3.4 重启查看是否挂载成功

你可能感兴趣的:(ubuntu,服务器,linux,运维)