魅力博客

魅力Linux|魅力空间|魅力博客|学习Linux|ubuntu日记|电脑教程|手机软件

​让局域网中的网络播放器能扫描并发现同网段armbian-nas的video视频文件。使用armbian小主机作为媒体库。





你只需要在现有Samba配置基础上,补充几处关键设置、完善系统权限并开启配套服务,

就能让局域网网络播放器顺利发现并访问NAS里的视频文件。


优化Samba全局配置

在smb.conf配置文件中[global]字段末尾添加以下内容,以大幅提升设备兼容性:


   unix charset = UTF-8
   dos charset = CP936
   display charset = UTF-8
   min protocol = SMB2
   max protocol = SMB3
   socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536
   dns proxy = no
   disable netbios = no


最后如下:配置文件位置:etc/samba/smb.conf

[global]
## Browsing/Identification ###
# Change this to the workgroup/NT-domain name your Samba server will part of
   workgroup = WORKGROUP
# server string is the equivalent of the NT Description field
   server string = %h server (Samba, Ubuntu)
   unix charset = UTF-8
   dos charset = CP936
   display charset = UTF-8
   min protocol = SMB2
     max protocol = SMB3
     socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536
     dns proxy = no
     disable netbios = no


作用:

解决中文文件名乱码问题,

兼容老旧播放器的SMB2协议,

优化局域网传输速度,

确保设备能通过NetBIOS发现你的NAS 。


完善共享目录的系统权限

你配置的视频共享目录(如、),需要在Ubuntu系统中开放读写权限:/mnt/sda1/mnt/sdb1

sudo chmod -R 0777 /mnt/sda1
sudo chmod -R 0777 /mnt/sdb1



执行后,确保目录下所有视频文件和子文件夹都能被匿名访客正常读取,

避免播放器出现“能看到共享名但点进去空文件夹”的问题。

重启smb服务:

systemctl restart smbd


=======可选=====================

放行防火墙关键端口

在Ubuntu防火墙中开放Samba和网络发现所需的端口:


sudo ufw allow 137/udp
sudo ufw allow 138/udp
sudo ufw allow 139/tcp
sudo ufw allow 445/tcp
sudo ufw reload


这些端口对应SMB共享、NetBIOS网络发现服务,是播放器扫描局域网设备的必要条件 。

========如果没有防火墙就忽略======


开启DLNA/UPnP媒体发现服务

很多网络播放器默认优先通过DLNA协议自动扫描媒体库,仅靠Samba可能无法自动发现视频文件:


1.安装MiniDLNA服务:【配置ubuntu-arm的源地址请看另一篇文章>>>】


sudo apt update && sudo apt install minidlna -y


2.编辑配置文件,添加你的视频目录:/etc/minidlna.conf


media_dir=V,/mnt/sda1
media_dir=V,/mnt/sda1/一口气看完系列
media_dir=V,/mnt/sdb1
media_dir=V,/mnt/sdb1/发送同步的文件夹
friendly_name=CUMEBOX2-NAS
inotify=yes


同时更改数据库位置:

db_dir=/mnt/sda1/minidlna
#把数据库目录改到了sda1(避免占满系统盘)/mnt/sda1/minidlna

 

3.0启动并设置开机自启:

sudo systemctl enable --now minidlna


输出类似下面:

root@CumeBox2:~# sudo systemctl enable --now minidlna
minidlna.service is not a native service, redirecting to systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable minidlna



3.1 先确保服务停了

sudo systemctl stop minidlna



3.2确保数据库目录存在(你自己改了路径,确认一下)

# 1. 确保目录存在
mkdir -p /mnt/sda1/minidlna

# 2. 修改目录权限为 777 (所有用户可读可写可执行)
chmod -R 777 /mnt/sda1/minidlna

# 3. 如果之前已经生成了 files.db,删除它让服务重新生成(避免旧文件权限锁死)
rm -f /mnt/sda1/minidlna/files.db



3.3 强制重建媒体库(注意命令名是 minidlnad,末尾有 d)

sudo /usr/sbin/minidlnad -R



3.4. 启动服务

sudo systemctl start minidlna


# 或者用服务方式启动

sudo systemctl restart minidlna



两个注意事项

首次扫描会吃 CPU :视频多的话可能要扫几分钟,期间温度升高、负载上去是正常的,扫完就降下来了。

db_dir 放 /mnt/sda1 要注意 :你把数据库放在数据盘上,

如果这块盘是 USB 外接的且偶尔会掉线,minidlna 会因为找不到 db_dir 而启动失败。

如果遇到启动失败,先确认 挂载正常。/mnt/sda1


最后验证一下:

#查看配置目录:

# 查看当前生效的配置(过滤掉注释行)

grep -v "^#" /etc/minidlna.conf | grep -v "^$"


重点看这几行有没有:

media_dir=V,/mnt/sda1
media_dir=V,/mnt/sda1/一口气看完系列
media_dir=V,/mnt/sdb1
media_dir=V,/mnt/sdb1/发送同步的文件夹
friendly_name=CUMEBOX2-NAS
inotify=yes
db_dir=/mnt/sda1/minidlna




# 看服务状态

sudo systemctl status minidlna



# 看扫描日志,确认它在扫你的视频文件

tail -40 /var/log/minidlna.log



# 看端口在监听没

ss -tulnp | grep -E "1900|8200"



日志里如果出现 、 之类的,就说明正在工作。Scanning /mnt/sda1Scanning /mnt/sdb1

端口 1900(UDP,DLNA 发现用)和 8200(TCP,HTTP 媒体流)都在监听就对了。

去播放器上找

打开播放器,在 UPnP / DLNA / 媒体服务器 分类里刷新,

应该能看到 CUMEBOX2-NAS,点进去就能浏览所有视频了。


===============

最后注意点:

root@CumeBox2:~# sudo minidlna -R
sudo: minidlna: command not found


提示找不到指令。


这说明 minidlna 虽然装了(能设置开机自启),但 可执行文件可能不在默认 PATH 里 ,或者实际二进制名不是 minidlna


按下面步骤排查:


 1.找到 minidlna 的实际路径

# 全盘搜索 minidlna 相关文件

sudo find / -name "minidlna*" -type f 2>/dev/null | grep -v "/proc"


常见位置有:

/usr/sbin/minidlnad(很多发行版里叫 ,末尾有个 d)minidlnad

/usr/bin/minidlna

/usr/local/sbin/minidlnad

你找到的文件名很可能是minidlnad(daemon 版本),而不是minidlna

 2.试试用完整路径执行

 如果上面 find 找到的是 ,就这样执行:/usr/sbin/minidlnad

 # 停止当前服务

sudo systemctl stop minidlna



# 用完整路径执行强制重建(注意末尾的 d)

sudo /usr/sbin/minidlnad -R



# 再启动服务

sudo systemctl start minidlna



3.查看服务启动脚本,确认它到底调的哪个命令

# 看 SysV 启动脚本里用的什么命令

cat /etc/init.d/minidlna | grep -E "DAEMON|minidlna|minidlnad"



里面会告诉你真实的二进制路径和名字,照着用就行。

4.最简验证方法

不管 能不能用,服务跑起来就会自动扫描。直接看服务状态和日志就行:-R

# 看服务状态

sudo systemctl status minidlna


# 看扫描日志

tail -30 /var/log/minidlna.log

如果日志里有类似下面的内容,说明它已经在工作了,不一定要手动执行:

root@CumeBox2:~# tail -40 /var/log/minidlna.log
[2026/09/22 18:35:29] minidlna.c:1060: warn: Starting MiniDLNA version 1.2.1.
[2026/09/22 18:35:29] minidlna.c:355: warn: Creating new database at /var/cache/minidlna/files.db
[2026/09/22 18:35:29] minidlna.c:1101: warn: HTTP listening on port 8200
[2026/09/22 18:35:29] scanner.c:730: warn: Scanning /var/lib/minidlna
[2026/09/22 18:35:29] scanner.c:819: warn: Scanning /var/lib/minidlna finished (0 files)!
[2026/09/22 18:35:29] playlist.c:135: warn: Parsing playlists...
[2026/09/22 18:35:29] playlist.c:269: warn: Finished parsing playlists.
[2026/09/22 18:44:58] minidlna.c:155: warn: received signal 15, good-bye
[2026/09/22 18:45:00] minidlna.c:1060: warn: Starting MiniDLNA version 1.2.1.
[2026/09/22 18:45:00] minidlna.c:355: warn: Creating new database at /mnt/sda1/minidlna/files.db
[2026/09/22 18:45:01] minidlna.c:1101: warn: HTTP listening on port 8200
[2026/09/22 18:45:53] metadata.c:697: warn: Opening /mnt/sda1/downloads/新三国2010/新三国2010第95集.mkv failed! [Invalid data found when processing input]
[2026/09/22 18:45:53] scanner.c:489: warn: Unsuccessful getting details for /mnt/sda1/downloads/新三国2010/新三国2010第95集.mkv
[2026/09/22 18:49:17] minidlna.c:155: warn: received signal 15, good-bye
[2026/09/22 18:49:43] minidlna.c:1060: warn: Starting MiniDLNA version 1.2.1.
[2026/09/22 18:49:43] minidlna.c:355: warn: Creating new database at /mnt/sda1/minidlna/files.db
[2026/09/22 18:49:43] minidlna.c:1101: warn: HTTP listening on port 8200


打开你的网络播放器(电视盒子、投影、Kodi 等),

在「 UPnP 」「DLNA 」「媒体服务器 」这类分类里刷新一下,应该就能看到 CumeBox2-NAS 了。

 




返回顶部

上一篇:比特米盒Armbian_21.08.1_Ubuntu_CumeBox2_5.10.602安装宝塔面板

下一篇:简单创建armbian的cpu温度达到50度启动风扇(只有打开没有关闭功能)

发表评论:

Powered By Z-BlogPHP 1.7.5



本网站内容均采用知识共享署名4.0国际许可协议

网站备案号粤ICP备15104741号-1