跳到主要内容

附件转存到NFS存储

业务场景##

针对ERPNext的环境, 把应用数据,DB数据, 附件 分离存储是一个很好的管理方式。 本文针对ERP环境的附件通过NFS mount的方式, 存放在其他的可存放的位置。

实验环境:unbuntu22.04

第 1 步 — 下载和安装组件

安装 nfs-common 包,它提供 NFS 功能,而不包含任何服务器组件。 同样,在安装之前刷新本地包索引以确保您拥有最新信息:

sudo apt update
sudo apt-get install nfs-common -y

如果仅仅安装以上服务端出现挂载time out 执行以下:

sudo apt-get install nfs-kernel-server -y

第 2 步 — 在客户端上创建挂载点和挂载目录

NFS的服务端教程自行百度,我用的群辉做测试,群辉已开通NFS服务,

路径为192.168.9.100://volume1/erpnext

Erpnext文件附件有私有及非私有两类,我这里用非私有做测试,共有的附件目录为/home/frappe/frappe-bench/sites/gdzz.local/public/files,站点gdzz.local换成自己的就行

执行以下命令挂载磁盘

sudo mount 192.168.9.100://volume1/erpnext /home/frappe/frappe-bench/sites/gdzz.local/public/files

可以用 df命令查看是否成功,成功后显示

frappe@frappe--machine:~/frappe-bench/sites/gdzz.local/public$ df
文件系统 1K的块 已用 可用 已用% 挂载点
tmpfs 2461700 1652 2460048 1% /run
/dev/sda3 65220172 15225796 46648968 25% /
tmpfs 12308484 12 12308472 1% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
/dev/sda2 524252 6216 518036 2% /boot/efi
tmpfs 2461696 2408 2459288 1% /run/user/1000
/dev/sr0 3737140 3737140 0 100% /media/frappe/Ubuntu 22.04.1 LTS amd64
192.168.9.100:/volume1/erpnext 11238050432 2890985216 8347065216 26% /home/frappe/frappe-bench/sites/gdzz.local/public/files

第 3 步 — 修改files文件夹权限

系统默认的frappe用户可能无读写files目录的权限,切换root用户 sudo -s
进入需要修改权限的跟目录 Cd /home/frappe/frappe-bench/sites/gdzz.local/public 执行修改files文件所属,这里使用 chmod 777 命令可能不行,用下面命令能成功。 chgrp frappe files

第 4 步 — 结果展示

在erpnext上上传文件: 群辉服务器跟unbuntu服务器显示结果:

第 5 步 — 在引导时挂载远程 NFS 目录

您可以通过将远程 NFS 共享添加到 客户端 上的 /etc/fstab 文件来自动挂载远程 NFS 共享。 在文本编辑器中以 root 权限打开此文件: sudo nano /etc/fstab 在文件的底部,为您的每个共享添加一行。 它们看起来像这样:

/etc/fstab
. . .
192.168.9.100:/volume1/erpnext /home/frappe/frappe-bench/sites/gdzz.local/public/files nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0

重启检查挂载情况

frappe@frappe--machine:/etc$ su root
密码:
root@frappe--machine:/etc# reboot
Connection closing...Socket close.

。。。。。。。。。。。。。。。。。。。。 Connection closed by foreign host. 启用 ESM Apps 来获取未来的额外安全更新

See https://ubuntu.com/esm or run: sudo pro status

Last login: Wed Mar 8 22:08:56 2023 from 10.0.0.2
frappe@frappe--machine:~$ df
文件系统 1K的块 已用 可用 已用% 挂载点
tmpfs 2461700 1648 2460052 1% /run
/dev/sda3 65220172 15222276 46652488 25% /
tmpfs 12308484 0 12308484 0% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
/dev/sda2 524252 6216 518036 2% /boot/efi
tmpfs 2461696 2396 2459300 1% /run/user/1000
192.168.9.100:/volume1/erpnext 11238050432 2890985216 8347065216 26% /home/frappe/frappe-bench/sites/gdzz.local/public/files
/dev/sr0 3737140 3737140 0 100% /media/frappe/Ubuntu 22.04.1 LTS amd64