通过NFS提升小鸡的硬盘容量(jellfin及TMM刮削配置)

结合我自己使用的jellyfin+TinyMediaManager(下面简称tmm)搭建自己的影音库。这里主要记录我在使用NFS扩充小鸡硬盘空间时遇到的一些问题及解决方法。

NFS简述:NFS(Network File System,网络文件系统)是一种允许用户通过网络访问远程计算机上的文件系统的协议。它最初由 Sun Microsystems 在 1984 年开发,现在是类 Unix 操作系统(如 Linux、BSD、macOS)中广泛支持的一种标准。NFS 允许客户端计算机通过网络像访问本地磁盘一样读取、写入远程服务器上的文件。

这里涉及的实验机器如下:

服务器A(服务端),假设ip为192.168.100.10,自身硬盘容量大,提供硬盘空间给服务器B使用

服务器B (客户端),假设ip为192.168.100.20,自身硬盘容量小,通过NFS方式挂在服务器A的硬盘,并当成是本地硬盘使用

操作系统都是debian12

服务器A(服务端)

安装服务

sudo apt update
sudo apt install nfs-kernel-server

配置共享目录

#修改/etc/exports文件,假设我要共享的文件是qb的下载路径,权限最好改成777,这样子客户端读写时不受限
/opt/1panel/apps/qbittorrent/qbittorrent/data 192.168.100.20(rw,sync,no_subtree_check)
chmod 777 /opt/1panel/apps/qbittorrent/qbittorrent/data
#重启NFS服务
sudo exportfs -ra
sudo systemctl restart nfs-kernel-server
#如果有防火墙的话
sudo ufw allow from 192.168.100.20 to any port nfs

服务器B(客户端)

安装客户端

sudo apt update
sudo apt install nfs-common

创建挂载目录(一般都是mnt目录下)

sudo mkdir -p /mnt/nfs_qbdata

挂在共享目录

sudo mount 192.168.100.10:/opt/1panel/apps/qbittorrent/qbittorrent/data /mnt/nfs_qbdata
#检查下读写权限
ls -ld /mnt/nfs_qbdata

如果需要开机挂载(不建议)

sudo vim /etc/fstab
192.168.100.10:/opt/1panel/apps/qbittorrent/qbittorrent/data /mnt/nfs_qbdata nfs defaults 0 0

主要是遇到过国产Linux挂载nfs导致系统起不来的问题,个例哈。其实重启开机后执行一下这个挂载命令也是很方便的,如果多的话可以写成脚本。

jellyfin中挂载这个目录

jellyfin的docker compose文件中在volumes中增加挂载的目录

- /mnt/nfs_qbdata:/media/qbnfs

然后重启这个应用(数据不会丢失)

登录jellyfin管理后台,新增媒体库,选择这个目录,同时因为是采用TMM进行刮削,需要把内置的这些媒体刮削都取消掉

屏幕截图 2025-06-10 111913

屏幕截图 2025-06-10 111923

TMM相关设置

同样在TMM的docker compose文件中的volumes加入

- /mnt/nfs_qbdata:/media/qbnfs

媒体库中加入这个/media/qbnfs

屏幕截图 2025-06-10 112606

重启docker应用

cd docker-compose.yml文件目录
sudo docker compose down 
sudo docker compose up -d

重新进入这个页面会发现中文字乱码丢失,需要进行修复

docker ps #查看TMM的容器id,假设为d42474c2e398
sudo docker  exec -it d42474c2e398 bash
wget http://dl-cdn.alpinelinux.org/alpine/v3.19/community/aarch64/font-wqy-zenhei-0.9.45-r3.apk
apk add --allow-untrusted font-wqy-zenhei-0.9.45-r3.apk
sudo docker restart d42474c2e398

再次登录页面会发现中文字回来了,但是刮削的时候会发现图片,nio等信息都无法写入到这个nfs文件夹里

TMM 的运行用户与 NFS 权限映射不一致使用了 root 启动但被 NFS root_squash 限制

使用非root权限即可,假如用户为dandy

id dandy  #获取用户号,一般第一个创建的是1000,uid=1000(dandy) gid=1000(dandy)
# 修改PUID和PGID
docker run -d \
  -e PUID=1000 \
  -e PGID=1000 \
  -v /mnt/nfs_qbdata:/media \
  -v /config/tmm:/config \
  --name tinymediamanager \
  tinymediamanager/tmm

我的参考:

version: '3.8'

services:
  tinymediamanager:
    image: romancin/tinymediamanager:latest
    container_name: tinymediamanager
    restart: unless-stopped
    ports:
      - "15800:5800"
      - "15900:5900"
    environment:
      - USER_ID=1000          # ← 替换为你主机“dandy”用户的 UID
      - GROUP_ID=1000         # ← 替换为你主机“dandy”用户的 GID
      - TZ=Europe/Madrid
      - VNC_PASSWORD=s123123123jksdf   #访问密码
    volumes:
      - /share/Container/tinymediamanager/config:/config
      - /share/Container/tinymediamanager/media:/media
      - /opt/1panel/apps/qbittorrent/qbittorrent/data:/media/qb
      - /mnt/nfs_qbdata:/media/qbnfs
#重建容器,在docker-compose.yml文件目录里执行
docker-compose down    # 停止并删除旧容器(可选)
docker-compose up -d   # 启动新容器
docker ps #查看TMM的容器id,假设为d42474c2e398,解决中文错乱问题
sudo docker  exec -it d42474c2e398 bash
wget http://dl-cdn.alpinelinux.org/alpine/v3.19/community/aarch64/font-wqy-zenhei-0.9.45-r3.apk
apk add --allow-untrusted font-wqy-zenhei-0.9.45-r3.apk
sudo docker restart d42474c2e398

这样子,可以通过TMM进行愉快的“刮削”了,同时小鸡的硬盘因为外挂“电池”,“续航”更强大(容量更大了),可以下载更多的电影进行观看了。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇