找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 28|回复: 0

[问题反馈] TrueNAS无法舍弃,虚拟机nfs挂载邪修解决方案

[复制链接]

1

主题

10

回帖

146

积分

管理员

积分
146
发表于 2025-10-15 00:28:53 | 显示全部楼层 |阅读模式

分享一下我的搞机历程

我的TrueNAS用了至少得有5年了,中间经历过一次找朋友借盘迁移扩容存储池,还添加了很多“娱乐”性质的vdev,从以前的aio到存算分离再到又把TrueNAS变成虚拟机挂到esxi里面,折腾了很久,乐趣也很多,不过TrueNAS确实是越更新越迷惑了,从之前的把应用从docker换成containerd,再到虚拟机不自带显示组件需要自己再去安装个vnc才能访问,我现在已经在24.10版本很久没升级了。

805dca2b80a7ac39272360b7aa0d9ad3.png

我确实很期待飞牛能支持zfs的那一天,不过目前我还是确实很想让飞牛能把数据存到nas里而不是我给这个单独的物理机分的单块的硬盘里,容量太小而且也没有冗余,之前还在用飞牛自带的备份工具把飞牛里的相册备份到nas里,然后前段时间突发奇想用nfs挂载到用户路径下应该也能实现

bd81a74b1a93c14616be9a84e129e15a.png

以下是具体搞机过程:

TrueNAS的nfs共享这样设置,下面的主机授权最好只填写飞牛的ip

03e6af6aa4aae8560683d4fbdca03e0c.png

#nas的管理员用户id和组id最好与飞牛一致,这样用smb新增文件不容易出问题#在飞牛中用id查看当前账户的用户id,飞牛需要新建一个组,在web端操作即可,新建组后添加管理员用户vim /etc/fstab#新增下列内容————————————————————————————————————————————————————————————————————————————<你的TrueNAS地址>:/<你的nfs挂载地址> /vol2/<你的用户id>/<你的挂载目录> nfs defaults 0 0192.168.1.100:/mnt/你的pool/你的数据集/你的文件夹 /vol2/1000/nfs nfs defaults 0 0<格式就这样,我多写几行是举例子>:/<记得不要有中文> / nfs defaults 0 0————————————————————————————————————————————————————————————————————————————mount -a#测试一下fstab有没有写错systemctl daemon-reload#挂载尝试一下在文件管理器能否看到nas的文件systemctl enable rc-local.servicesystemctl start rc-local.servicetouch /etc/rc.localvim /etc/rc.local#写入下列内容————————————————————————————————————————————————————————————————————————————#!/bin/sh -e/root/mounta.sh &exit 0————————————————————————————————————————————————————————————————————————————Touch /root/mounta.shVim /root/mounta.sh#写入下列内容————————————————————————————————————————————————————————————————————————————#!/bin/bash# 最大重试次数MAX_RETRIES=20# 重试间隔(秒)RETRY_INTERVAL=5# 日志记录(可选)LOG_FILE="/var/log/mount_and_reload.log"log() {    echo "$(date '+%Y-%m-%d %H:%M:%S') - $1" >> "$LOG_FILE"}log "开始执行挂载和daemon-reload操作"attempt=1while [ $attempt -le $MAX_RETRIES ]; do    log "尝试第 $attempt 次执行"      # 尝试执行 mount -a    if mount -a 2>/dev/null; then        log "挂载命令执行成功"          # 尝试执行 systemctl daemon-reload        if systemctl daemon-reload; then            log "daemon-reload 执行成功"            log "所有操作完成,脚本退出"            exit 0        else            log "daemon-reload 执行失败"        fi    else        log "挂载命令执行失败"    fi      # 如果还有重试机会,等待后继续    if [ $attempt -lt $MAX_RETRIES ]; then        log "等待 ${RETRY_INTERVAL} 秒后重试..."        sleep $RETRY_INTERVAL    fi      attempt=$((attempt + 1))donelog "达到最大重试次数,操作失败"exit 1————————————————————————————————————————————————————————————————————————————

7a318c6e01205c635c42cc24e9b07d8a.png

最后相册新增文件夹没有权限问题就万事大吉了,我这个操作其实每个用户还是需要去单独新增nfs挂载,也许有更优雅的方式我没有想到?欢迎大家来优化一下这个邪修操作

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

本站由纳斯五零(NAS50.CN),版权所有,保留部分权利。豫ICP备2023035803号-1

Archiver|手机版|小黑屋|Discuz! X

GMT+8, 2025-10-24 04:31 , Processed in 0.105723 second(s), 28 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表