国内新手填坑指南---新手遇到的问题


Recommended Posts

玩unraid三个月,大小坑都趟过来了,在这里做个记录,可以供以后自己查阅(记性不好),或者给其他新手盆友借鉴。

有的问题解决了,但也许有运气成分,或者说我并没有弄清楚原理,有的问题到现在也没解决,依然列出来,如果你恰巧明白,请指教。

不探讨出国留学,不探讨国内镜像服务器,默认你可以流畅访问下载unraid应用,再来玩unraid。

我也是小白,也许我的解决方法是退了裤子放屁,那么有请高手给出高效解决方法,我会更正本文。

 

1、u盘启动,GUI模式无法显示

1】症状:

制作unraid启动U盘时,勾选“allow UEFI boot”选项:

unraid启动时,选第一项启动,一切正常,代码结尾是获得IP地址。选择倒数第二项GUI模式,外接显示器的代码跑完,unraid外接的显示器,屏幕变黑,不再有任何代码显示,gui模式无法显示无法使用。

制作unraid启动U盘时,不勾选“allow UEFI boot”,此时u盘系统是legacy模式启动,选gui模式,外接显示器可以显示,可以进入GUI图形界面。

解决办法:在go文件中加入“modprobe i915”命令,这样修改后,是可以进入GUI模式的。请专家分析原因。

2】解决办法:

操作方法一:

点击unraid界面右上角“>_”进入终端,即命令行

输入:modprobe i915 回车,注意中间空格,这一步是运行集成显卡驱动。

输入:ls /dev/dri 回车 打开,下面如果有renderD128文件,那么证明显卡驱动正常了,下一步要修改go文件,让机器每次启动时都启动这个驱动程序。

输入:cd /boot/config 回车

输入:vi go

按键盘i键,回车,就可以输入了,输入:modprobe i915  

按esc键,输入:(冒号):wq 完成go文件修改。

操作方法二:

在应用中,搜索config file editor 安装,安装好后,他会出现在工具页面第一项

然后在第一横线处选择:/boot/cofing/go

就可以在下面对话框里编辑go文件,加上modprobe i915  这一行

按应用,完成。

 

2、多网口问题

1】症状

多网口主机启动时,不知道网线该插哪一个网线口

2】解决办法:

固定一个网口为unraid管理网口。

unraid默认eth0是系统管理口,但是系统会把哪个物理网口定义为eth0,不设置,他就乱来。

点击unraid界面右上角“>_”进入终端,即命令行

输入:nano /boot/config/network-rules.cfg

就会看到机器所有的网卡信息,这时候,你想把哪个物理网卡指定为管理口,就在他后面把他的编号改成eth0,相应的,哪个原来是eth0.那你就把他的换成其他的。网卡编号是从0开始的,eth0、eth1、……最好是按顺序指定,不要让数字断开。

按ctrl+x 退出 输入 y保存,输入reboot回车,系统重启,配置生效。

那你要怎么确定你机器网卡的mac,来识别他,给他冠名eth0呢?好问题。

你可以在unraid的设置-网络设置里看到,一般主板一个或者两个网卡,你可以知道他们的硬件名称,他们的硬件名称不一样,你可以分别记住他们的硬件名称对应的mac地址,然后在上面的修改里找出你要指定的那个。如果是pcie扩展多网口,那更好分辨,如果你扩展了四个,你会发现有四个的名字或者编号是有顺序规律的,一般都会用主板的网口指定管理口,那么这四个名字差不多的就确定不是你要用的,剩下的不一样的,那一定就是主板自带的网口,把他改成eth0就可以了。

 

3、jellyfin使用因特尔核心显卡实现硬解码、转码

jellyfin是可以硬解码的,百分百可以,前提是你要有英特尔的核心显卡,这里不探讨amd核显和独立显卡。

解决办法:

第一步,添加核心显卡驱动,如果你遇到过我列的第一个问题,u盘启动,GUI模式无法显示,恭喜你你可以跳过了,和那个解决办法一样。

操作方法一:

点击unraid界面右上角“>_”进入终端,即命令行

输入:modprobe i915 回车,注意中间空格,这一步是运行集成显卡驱动。

输入:ls /dev/dri 回车 打开,下面如果有renderD128文件,那么证明显卡驱动正常了,下一步要修改go文件,让机器每次启动时都启动这个驱动程序。

输入:cd /boot/config 回车

输入:vi go

按键盘i键,回车,就可以输入了,输入:modprobe i915  

按esc键,输入:(冒号):wq 完成go文件修改。

操作方法二:

在应用中,搜索config file editor 安装,安装好后,他会出现在工具页面第一项

然后在第一横线处选择:/boot/cofing/go

就可以在下面对话框里编辑go文件,加上modprobe i915  这一行

按应用,完成。

第二步,依次: web UI-------三-------控制台------播放------硬件加速选video acceleration API   VA API设备选 /dev/dri/renderD128 保存退出。

如果不成功,请检查每个步骤,确定可以硬解,可以转码,不用怀疑!

 

4、硬件直通

所谓硬件直通,标准叫法是直连,就是把这个设备不通过unraid,直接分配给虚拟机使用了。一般来说,在虚拟机里有host选项,就说明该设备可以直通的(直连的);还有更极致的做法,就是直接在unraid系统里把这个设备禁用,即启动时就屏蔽他,unraid无法调用,直接给虚拟机直通。

可以直通的设备是网口(多于一个,给unraid留下物理管理口)、硬盘、独立显卡、wifi。

硬件直通可以提高数据传输速度,提高硬件运行效率,但是除了网口,其他一定要慎重。

以我的机器为例,主板有2个网口,还用pcie扩展了4个网口,我就把主板的一个网口留给unraid,其他五个全部在选择启动屏蔽:主板另一个直通给win10虚拟机,pcie扩展的四个直通给软路由。主板有2个m2硬盘接口,一个给unraid做缓存池,另一个在启动里屏蔽,我在bios里设置从这个硬盘启动,就可以给机器装win10,做到不用unraid时候,可以当win10主机使用,这样也不会在unraid里看到未挂载的m2,不会误操作把他删除格式化。

操作方法:

工具----系统设备,把想屏蔽的设备打勾,然后点下面的:在引导时对VFIO选择了绑定

*⚠️注意 如果设置了VFIO绑定,更换硬件的时候,一定要先把绑定取消。比如你要更换主板,就一定要把屏蔽的主板设备解除绑定,否则,换了主板会出现,原来直通旧主板硬件的虚拟机无法正常启动,还需要进命令行模式更改硬件绑定,这个太麻烦了,所以更换硬件,用unraid启动盘启动别的设备,那么最好先解除硬件屏蔽,一个启动盘插好几个机器,不建议屏蔽硬件,容易导致错误。

如果更改了设备,启动变慢,或者卡在某处,基本就是硬件配置表的问题,可以去u盘里把config文件删了,让系统重新生成硬件表,我删了,但是他好像没有重建,但是系统也正常启动了,好怪,不懂为什么。

 

 

5、win10虚拟机外接显示器无显示(机器配置仅有核显,无独立显卡)

重点一:

安装win10虚拟机,设置参数其实都无所谓,关键一点,你要选择显卡:vnc,可以确保你安装并且进入win10设置。

重点二:

在vnc里安装好win10,进去后设置好win10系用的主机名字,开启远程桌面功能,用你连着unraid的win10电脑,连一下win10虚拟机远程桌面(输入虚拟机win10机器名字就好),确保能连上后,关闭win10虚拟机

重点三:

编辑win10虚拟机配置,显卡直接选hd630,没必要设置为第二显卡。(留不留vnc无所谓,如你只有核显,win10虚拟机启动时调用唯一核显后,vnc就没有显卡可用,vnc就一定不能用了,除非你用独立显卡给win10,vnc用核显,然而这不是我们探讨的,因为我们说的是核显),给hd630指定bios com驱动vbios_gvt_uefi.com(里面有三个文件,hd630用我说的这个,hd600、610试试其他两个 下载链接:https://pan.baidu.com/s/1GS77Qt2NuTmDTrS6dSoNnQ 提取码:3f6c  )把这个驱动下了,上传到unraid的isos文件夹,驱动那一栏点开如果自己跳不出来/mnt/user/isos/vbios_gvt_uefi.com,就手动把/mnt/user/isos/vbios_gvt_uefi.com这个路径复制粘贴进去,更新配后,重启win10虚拟机

第四步:

这时候win10虚拟机外接显示器应该还是没有显示,但是你的win10已经启动了,只是你看不见他。用你连着unraid的win10电脑,链接win10虚拟机,只要输入正确的虚拟机win10电脑名字,就可以链接。

第五步:

在进入远程桌面后,点击我的电脑-管理-设备管理-更新显卡驱动-自动搜索驱动,等一会儿,你就发现,你的设备管理器里,显示器变成hd600或者hd610、630,然后你的unraid显示器也出现了win10的桌面,你退出远程桌面,ok!

第六步:

重启win10后如果发现usb鼠标无法显示指针,不要慌,可以再用远程桌面进去,懒的话就用驱动精灵扫一遍,装好所有建议安装或者升级的驱动,最主要是把intel官网的核显驱动装好。再重启,鼠标指针还有其他毛病就全没有了。

特别注意:

如果主板上集成多个hdmi、pd等视频输出口,win10虚拟机启动后不一定会输出到那个端口,你最好挨个试试有没有信号!这个我也没搞懂,有些时候全有信号,有些时候某一个有。

 

6、mini dlna的使用

minidlna是一个局域网流媒体广播,可以方便的把你的多媒体资源,比如音乐、电影,广播到局域网,你的sony电视、bose音响等,有多媒体服务器应用的设备,即支持dlna的播放器,就可以直接访问unraid指定文件夹,直接播放音视频。现在的电视处理器配置都很高,都可以直接硬解码,并不一定需要jellyfin等docker来解码。反而minidlna体量轻,不占用资源,是个不错的流媒体实现方式。

先说必须设置:

minidlna的网络类型,说明里写必须使用host,即直连模式,但我试了,无法被电视机等设备发现,我的必须使用custom br0,也就是你要给minidlna分配一个局域网地址,比如192.168.1.11,这样才可以被电视机发现,至于原因,我还不清楚。你可以先试host,无法发现,就用custom br0。

接着说说minidlna运维大神的傲慢(也许我们中国人还是没啥存在感吧)

unraid应用库里的minidlna有2个神一样bug,也不能说bug吧,linux专家或者外语好的同学可以无视,小白会踩的坑!

1】minidlna默认可以扫描的媒体文件夹名字必须是media(必须小写)路径必须是/mnt/user/media/

如果你想把minidlna的媒体文件夹指定到:download、movie、music……等等这些,那么恭喜你,minidlna只在安装时扫描一次该文件夹,以后你更新电影、音乐,他是不会看到的,他就只显示第一次安装时的文件夹内容(删了还显示,删了就出错),这也是困扰我三个星期的问题,我就奇了怪,我给他指定了music、movie、image,他就是不刷新,后来看了维护网页才知道,原来默认只扫描media文件夹,这个bug有点傲慢了,明明是改一下就可以,可惜我们这些凡人不掌握核心技术,运维的大神傲慢之极!

2】还有一个bug也是运维大神的傲慢与无知吧,他是个外国人,所以就把汉字的编码库简化了,只支持UTF-8编码,所以你的mp3会是乱码,解决办法是用mp3tag把歌曲识别信息批量转码,转成utf-8就可以了,这也是个好习惯,网上下的mp3,乱七八载的编码,乱七八糟的个信息,每次下了,把编码信息改好他,这样存档就方便了很多。

 

 

接下来会更新的内容:

7、软路由的逻辑

 

8、cpu没有硬盘费电

 

9、机箱烧钱

 

10、缓存池无意义

 

11、

  • Like 2
  • Thanks 1
Link to comment
5 hours ago, CentWind said:

另,缓存池是有意义的,比如你BT下载直接往阵列里下,会触发校验,卡的要死。

 

当然,这个缓存池的逻辑也很蠢,缓存池写满了,竟然不会自动往阵列里写。。。。

缓存池到阵列的搬运是需要mover工作,可以设置mover的计划周期短些,如每小时1次搬运或者更短(通过Mover Tuning)。另外可以采用机械硬盘作为cache盘,满足大数据临时存放需求。

Link to comment
24 minutes ago, lyqalex said:

缓存池到阵列的搬运是需要mover工作,可以设置mover的计划周期短些,如每小时1次搬运或者更短(通过Mover Tuning)。另外可以采用机械硬盘作为cache盘,满足大数据临时存放需求。

是的,我也是上次真的偶然遇到了写着写着发现没空间了才发现这个问题。

我也想用机械盘做cache,主要是现在环境以及设备的限制,盘位用满了,只能先将就用着。等明年换24盘机箱就好了。

Link to comment
On 11/24/2021 at 4:43 PM, CentWind said:

另,缓存池是有意义的,比如你BT下载直接往阵列里下,会触发校验,卡的要死。

 

当然,这个缓存池的逻辑也很蠢,缓存池写满了,竟然不会自动往阵列里写。。。。

缓存选项设置为“首选”,就会优先写入缓存了,缓存满了再写入阵列。当然这并不是默认值,是有其他方面的考量的。

Link to comment
2 hours ago, JavyLiu said:

缓存选项设置为“首选”,就会优先写入缓存了,缓存满了再写入阵列。当然这并不是默认值,是有其他方面的考量的。

首选缓存会造成持续将缓存占满。即便从缓存移出,后续还会继续把阵列里的往缓存搬。这个只适合类似appdata、domain这样的文件夹。

 

我说的是选择“是”的时候,比如你的缓存池500G,阵列2T,你没办法直接移动600G文件进去,因为它会先往缓存里写。系统判断的是600>500,而不是600<2000。

那比如说我如果移动499G进去,好了,这样是正常了。但是移动过程中缓存池的占用是慢慢上来的。如果我这个时候在BT下载呢,下载在缓存池里,比如下了5G。总量是499+5>500。但实际上下那个5G的时候,缓存池并没有被写满(尤其是类似qb不预分配空间),所以5G资源被判断允许写入。

这时候就会造成499G的文件复制到最后把缓存池占满了,占满了它就卡死了,不会往阵列里写。

 

其实我就是想要个功能,比如占用到95%的时候,立马出发mover,省的我手动点,或者到时触发。

 

它要是能做到群晖那种缓存我更乐意,但逻辑就完全不同了。

  • Upvote 1
Link to comment
20 hours ago, lyqalex said:

你可以试试安装Mover Tuning插件,现在版本已经具备你所说的功能,自己调一下设置。

是说高于某个数值就自动触发mover么?

我没找到啊,貌似只有在计划时间的move的规则,比如高于多少才move,高于多少就move all。触发的时间点还是靠计划的时间来?

最近我发现的更新好像就是具体某个共享文件夹可以单独手动move了。

Link to comment
  • 1 month later...
  • 4 months later...
  • 7 months later...
  • 3 months later...
  • 1 month later...

给hd630指定bios com驱动vbios_gvt_uefi.com(里面有三个文件,hd630用我说的这个,hd600、610试试其他两个 下载链接:https://pan.baidu.com/s/1GS77Qt2NuTmDTrS6dSoNnQ 提取码:3f6c  )把这个驱动下了,上传到unraid的isos文件夹,驱动那一栏点开如果自己跳不出来/mnt/user/isos/vbios_gvt_uefi.com,就手动把/mnt/user/isos/vbios_gvt_uefi.com这个路径复制粘贴进去,更新配后,重启win10虚拟机

 

 

这个特别好,我win11也用这个驱动成功了,12代的u,但是,hdmi的声音没有,我想应该是这个驱动的问题,770的核显,有没有最新的驱动

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.