倍控 N5095/N5105 AIO 小主机 PVE+OpenWRT+Ubuntu+Android TV 您所在的位置:网站首页 倍控n5105发热严重 倍控 N5095/N5105 AIO 小主机 PVE+OpenWRT+Ubuntu+Android TV

倍控 N5095/N5105 AIO 小主机 PVE+OpenWRT+Ubuntu+Android TV

2024-05-30 19:49| 来源: 网络整理| 查看: 265

第一次玩PVE,有很多需要学习的地方,这里简单记一下不同于Windows内虚拟机软件(比如VMWare)的地方。第三、四部分比较了一下不同机箱不同CPU的日常使用情况。

安装PVE的内容就不写了,和安装普通的系统没有两样,需要注意的是填写后台地址的时候:

网卡选择要记住,PVE只能用你选择的网口做管理口访问后台。 ip写你路由器管理的网段下,保证可以访问到。 要写 https 一、PVE 准备 1.1 换源

这个操作可有可无,如果你的网络连接默认源够快,完全不需要换。

无论是安装啥,安装完先把时间改了,错误的时间可能影响你正常上网 # 不知道怎么一个命令改出来 date -s 2022-04-25 date -s 22:32

有时候你会发现这个时间怎么改都不对,那是因为https://sspai.com/post/55983,所以我建议你,先去BIOS里把时间改成北京时间减去8个小时,这样类unix系统都会正确了。如果安装windows,通过修改注册表让windows也将硬件时间看成UTC时间,在哪里看过好像微软自己也要修改这个规则了。

注释掉 /etc/apt/sources.list.d/pve-enterprise.list 中的源

换PVE源

wget https://mirrors.ustc.edu.cn/proxmox/debian/proxmox-release-bullseye.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bullseye.gpg echo "deb https://mirrors.ustc.edu.cn/proxmox/debian/pve bullseye pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.list echo "deb https://mirrors.ustc.edu.cn/proxmox/debian/ceph-pacific bullseye main" > /etc/apt/sources.list.d/ceph.list sed -i.bak "s#http://download.proxmox.com/debian#https://mirrors.ustc.edu.cn/proxmox/debian#g" /usr/share/perl5/PVE/CLI/pveceph.pm apt update && apt dist-upgrade #更新软件,可不执行 换debian源 sed -i.bak "s#ftp.debian.org/debian#mirrors.163.com/debian#g" /etc/apt/sources.list sed -i "s#security.debian.org#mirrors.163.com/debian-security#g" /etc/apt/sources.list apt update && apt dist-upgrade #更新软件,可不执行 1.2 去掉无有效订阅弹窗

修改/usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js文件中的这块代码

Proxmox.Utils.API2Request( { url: '/nodes/localhost/subscription', method: 'GET', failure: function(response, opts) { Ext.Msg.alert(gettext('Error'), response.htmlStatus); }, success: function(response, opts) { let res = response.result; if (res === null || res === undefined || !res || res .data.status.toLowerCase() !== 'active') { Ext.Msg.show({ title: gettext('No valid subscription'), icon: Ext.Msg.WARNING, message: Proxmox.Utils.getNoSubKeyHtml(res.data.url), buttons: Ext.Msg.OK, callback: function(btn) { if (btn !== 'ok') { return; } orig_cmd(); }, }); } else { orig_cmd(); } }, }, );

Ext.Msg.show就是那个弹窗,可以直接在let res = response.result;前面加个return;。

sed -i.bak "s#let res = response.result;#return; let res = response.result;#g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js 1.3 直通pci设备准备

修改/etc/default/grub文件,将GRUB_CMDLINE_LINUX_DEFAULT="quiet" 修改为GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on video=efifb:off"

# 修改/etc/default/grub sed -i.bak "s#GRUB_CMDLINE_LINUX_DEFAULT=\"quiet\"#GRUB_CMDLINE_LINUX_DEFAULT=\"quiet intel_iommu=on video=efifb:off\"#g" /etc/default/grub # 更新GRUB update-grub

添加内核模块

# 添加模块, 包括核显直通 echo -e "vfio \nvfio_iommu_type1 \nvfio_pci \nvfio_virqfd" >> /etc/modules # 这个命令好像是更新内核的 update-initramfs -k all -u # 重启 reboot

注意

虚拟机芯片组一定要q35 。因为Q35,才能PCIE直通,否则就是PCI直通。

二、开玩

要实现的网络拓扑图,一个OpenWRT做路由,Ubuntu做服务器跑一些自己的web应用,还有其它用网的虚拟机,统统接到第三个口。

倍控网络拓扑.png

同学们(其实是我)可能有个疑问,这样AP这里能访问到PVE的管理口吗?其实是可以的,不记得在哪个文章里看到了,不同的虚拟机只要接到PVE的同一个虚拟网口,相当于接到了一个虚拟交换机,也就是说拓扑图中接在第三个网口上的三根线是互通的

2.1. 安装OpenWRT

1)创建虚拟机,ISO、磁盘不选,系统默认,创建完成。 2)用命令qm importdisk 虚拟机ID img文件地址 local-lvm将img文件转换为虚拟机的硬盘,比如

qm importdisk 100 /var/lib/vz/template/iso/openwrt.img local-lvm

3)回到虚拟机,点击未使用的硬盘,将总线/设备设置为sata 4)到选项-引导顺序,将硬盘启动选中,调到第一位。 5)这样,硬盘就配置好了。最后在网络设备中添加四个网口。启动。

四个网卡,最后一个直通

7)暂时用不到PVE了,先将管理端口的ip改成192.168.1.5,两种方法:

直接在web管理页面修改pve-网络-对应的网口 修改/etc/network/interfaces,/etc/issue,/etc/hosts三个文件中的ip(interfaces中还有网关),然后重启。其实只需要修改/etc/network/interfaces中的信息,/etc/issue应该是命令行下的开机提示,/etc/hosts是映射域名和ip的。

四个网口只有其中的一个指定了IP地址,指定的那个网口就是管理口,并不像网上说的怎么固定。

2.2. 配置OpenWRT

先改时间。

镜像是eSir的,默认第一个网络设备是LAN口(ip是192.168.5.1),这样我们启动之后将电脑的网线插入ETH0网口,便可以直接通过浏览器访问OpenWRT后台(192.168.5.1)。

根据拓扑图调整网络,eSir固件默认只有一个LAN口(第一个网口)和一个WAN口(第二个网口)。这里我把WAN口调到第一个网口,因为现在只有一根入户宽带,另一个WAN口先留着吧(想必以后也用不到)。最后在LAN口中选择第三个和第四个网口,ip改成192.168.1.1(最后调这个,调完就需要重插网线了)。

插网线 将光猫出来的网线接入WAN口(ETH0),LAN口(ETH3)插在电脑上,经测试可以正常访问OpenWRT(192.168.1.1)和PVE(192.168.1.5)控制台。

2.3 安装Ubuntu 20.04

这里就不多写了,想必大家都轻车熟路了。其实我想安装Ubuntu Server,但是在格式化完磁盘,复制系统文件的时候总是报错。日志太长看不懂,所以不确定问题出在哪里,有知道的同学可以交流一下。Desktop也好,怕系统占用可以不启动图形界面(这么安慰自己)。(N5105到货了,安装Ubuntu Server没有发现这个问题)

2.4 安装Android TV x86

配置虚拟机的时候注意硬盘选SATA,芯片组选Q35。 安装过程按照eSir的教程来,其中他输入了一串命令pm disable com.tosanthony.tv.networkprovider,按照哔哩哔哩的那篇文章,tosanthony最初制作的Android TV 9 x86是收费的,这个命令好像就是来禁用com.tosanthony.tv.networkprovider这个应用来避免收费的。但是我不知道在哪里下载的包,没有看到这个收费界面(后来好像又不收费了),所以没执行这个命令也正常安装完了。 之后重启了一次小主机,竟然只能进命令行的界面了,没有图形界面。解决办法:PVE里强行停止再打开就好了。

2.4.1 直通核显用显示器输出

注意:以前不知道,原来11代U不能直通!不能!看Vedio Talk说可以,他提取了vbios,正在修复,但是就没有下文了。

我没有搞成功,同学们试试运气吧。看我参考的三篇文章,个人感觉第一篇更全面合理一些,推荐。

将显卡驱动加入pve黑名单 我不太理解这个步骤是为什么,是不是说不要pve来管理显卡了?而且看的两篇教程指定的pve黑名单文件都是/etc/modprobe.d/blacklist.conf,但是我看系统内自带了一个/etc/modprobe.d/pve-blacklist.conf,而且里面写着:“This file contains a list of modules which are not supported by Proxmox VE.” 感觉这个应该才是黑名单的文件吧,而且设置完他们都没有什么验证,不确定是不是生效了。所以我这一步先不做。

新版本的pve,例如pve7.0,无需做驱动屏蔽

查找设备id 这个搞过黑苹果的同学一定知道,最后的格式是vendor-id:设备id。 先用lspci命令查看显卡和声卡的pci位置(第一列),找到VGA和Audio字样分别对应显卡和声卡,然后用lspci -n -s pci位置来查看设备id,我的是VGA(8086:4e61)、Audio(8086:4dc8) 将得到的信息按照options vfio-pci ids=ID1,ID2,...的格式写入/etc/modprobe.d/vfio.conf echo "options vfio-pci ids=8086:4e61,8086:4dc8" > /etc/modprobe.d/vfio.conf 最后更新内核,重启虚拟机 update-initramfs -u reboot 配置虚拟机 添加pcie显卡设备。根据pcie位置来选就好了,我的没有教程中那么完整的信息。 把显示那里改成无。 结果,Ubuntu成功(后期来纠正一下,这里并没有成功,只是ubuntu一直等能显示画面,但是并不能操作,当时应该是看到画面就以为成功了),AndroidTV不成功。Android TV没有任何的反应,看着系统可能启动了,但是应该是进入那个命令行界面了(看内存占用猜的)。 用这串代码args: -device vfio-pci,host=00:02.0,addr=0x02,x-igd-gms=1替换下直接在pve里添加的pcie设备的配置项(/etc/pve/qemu-server/102.conf)。Ubuntu 成功(第一次启动把pve搞死机了,是不是添加options防止VM死机那一步可以避免这个问题),AndroidTV不成功。 添加VBios 跟着第三个教程来,失败了...,echo 1 > rom报错permission denied。看着第四个文章(pve官方的教程)也是这么弄的,应该不会有问题,但是我放弃了,想着即便直通成功,Android内多数的国内视频软件都用不了,kodi用不了,甚至YouTube视频都加载不出来,就没有折腾的动力了。想想在物理机上安装x86也有进不去图形界面的问题,所以我又试了用SeaBIOS引导,修改grub启动文件,结果问题还是一样,内存占用500M左右,感觉卡在了启动图形界面之前的那个命令行的状态,他想启动但是找不到合适的显示器输出。

最后,这东西发热严重,恰巧看到N5105有货了,果断换货,过几天折腾N5105。

三、N5105到货

在上面的基础上有安装了OpenMediaVault,没啥好说的,也没搞高级功能。欢迎留言交流。

记录一下直通硬盘:

# 查看磁盘的id,记录下你要用的硬盘 ls /dev/disk/by-id # qm set 虚拟机id 虚拟机硬盘编号 硬盘id qm set 101 -sata2 /dev/disk/by-id/ata-TOSHIBA_MQ04ABD200_32EOP03AT

下面说一下这两个机器的优缺点,下面说的数据基本都是在pve下运行着OpenWRT和Ubuntu(待机状态)的情况下统计的。

功耗 5095没测。5105不接sata硬盘14-15w,接个2.5寸的机械硬盘15-17w。

温度

晚春(室温19-21度 )我买的是G30B机箱的,就是散热鳍片小的。一是缺钱,二是觉得G31那个鳍片不太好看。N5095长时间保持在70多度,偶尔能到80度。N5105长时间保持在60多度。我手上只有一个12V的闲置的小风扇(接在5V的USB上转速很低),稍微一吹能降到50多度,偶尔到40多度。所以N5105建议买G31的机箱,应该可以免去改造散热。N5095还是用主动散热吧。

中秋,时隔快半年了更新,我想测试一下换了硅脂能对散热有多大帮助,买的硅脂导热系数声称10w/mk。天气预报说今天最高温度28度,我感觉现在室内25度只多不少。G30B加主动散热,unraid显示cpu50度。撬开了发现散热铁片和机箱中间的硅脂只涂了一点点,我就多涂了一些,换之后cpu42度,效果不错

unraid温度-换硅脂之前 unraid温度-换硅脂之后

想吐槽一下这个sata硬盘设计。G30B机箱只适用7mm的2.5寸硬盘,9mm的按照螺丝孔位固定硬盘之后根本就拧不上盖板螺丝,因为给的数据线会顶住nvme硬盘,不固定在板上斜着也能放进去。G31没有这个问题。

网速 iperf3: 我手上只有千兆的网卡,所以没法测这个2.5G的网口,但是我可以用拓扑图ETH2那里的虚拟交换机测试一下那个网卡的极限速度。OpenWRT做iperf3服务端,OMV做客户端。一测我惊了:

网速

怎么8G多了,看来虚拟网桥那里的流量并不经过网卡,我真是个大聪明。看来网速测不了了,但是也看到OpenWRT那里cpu占用44%,PVE那里占用36%。 局域网拷贝: windows下从NAS拷贝文件都能跑到900多兆。macOS下面差不多

mac 网速

在线开发: 把图形处理的深度学习程序(对硬盘读取算中等)放在本地和NAS上,跑一个阶段。NAS上用的时间竟然更少,这应该是显卡状态的原因,至少说明一般开发任务千兆局域网不是瓶颈。 在线剪辑: FCPX默认选项新建项目1080P 60帧,正常操作几十M,复制媒体到资源库(H264,1080p,14Mbps,30帧,15分钟,1.64G的素材)或者后台渲染(核显UHD630)的时候最多500-600M。

四、G31机箱N5105

快618了,刚买一个多月价格直接降了150多(G30B 690大洋,G31 720大洋),就离谱!那咋办?我又买了一个G31机箱的N5105,想着如果618之后价格如果能涨一点就卖掉一个好回点本🤣。 然后,我惊奇的发现!我真没想到!这个G31机箱散效果这么好,室温23度,待机(Openwrt+OMV)CPU 40度左右,局域网拷贝半个小时了(CPU占用10%左右)才四十五六度。 夏天不开空调室温可能大概差不多30度(没有温度计),OpenWRT待机55度左右,跑点东西就70多度,烫手,还是需要加个小风扇的。 所以如果能接受G31机箱的外形,并且室温不是很高的话还是建议买G31的机箱,可以省掉一个小风扇的钱。

五、补充 5.1 Windows Server 2022安装i225v3 驱动

PVE下直通核显暂时还无解,另一个办法是将windows(server)直接装在物理机上,用hyper-v虚拟机。可是我安装完windows server怎么装不上网卡的驱动(windows可以)。捣鼓半天,发现这么整可以:打开设备管理器-其他设备-以太网控制器-右击选择更新驱动程序-浏览我的电脑以查找驱动程序-让我从计算机上的可用驱动程序列表中选择-网络适配器-Intel-Intel(R) Ethernet Controller(3) I225-IT

除了IT还有LM、LMvP两个后缀的,不清楚有什么区别,我试了一下都可以用。

5.2 pve下温度监控

安装 lm-sensors 监控CPU温度,hddtemp 监控硬盘温度

# 安装 apt install lm-sensors hddtemp -y # 查看 sensors hddtemp /dev/sda

可以用tmux显示,先安装apt install tmux,再写一个tmux默认执行的脚本,vim ~/.tmux.conf

new -s temp split-window -v select-pane -t 0 split-window -h split-window -v -p 25 send-keys -t temp:0.1 "watch -n 10 sensors" Enter send-keys -t temp:0.2 "watch -n 10 hddtemp /dev/sda" Enter select-pane -t 3

最后执行tmux a。

5.3 pve删除local-lvm分区

默认pve会生成两个存储区域local和local-lvm不知道有什么用,但是很碍眼。可以用以下的命令删除local-lvm并把腾出来的空间分配给local

lvremove pve/data lvextend -l +100%FREE -r pve/root

然后到数据中心>存储删掉local-lvm。这样就没有LVM-Thin的这种存储,好像就不能存快照了,自己取舍。而且如果改了,后面img文件转换成OpenWRT系统盘的命令也要做相应更改。

5.4 pve添加硬盘 错误记录 不知道咋的PVE的web管理页面登录不了,提示”登录失败,请重试“ 解决办法: 清除浏览器缓存就可以了。 参考 PVE https://post.smzdm.com/p/a85g06k7/ https://github.com/ivanhao/pvetools 分区调整 https://baijiahao.baidu.com/s?id=1692493332405204550&wfr=spider&for=pc&searchword=pve%E7%9A%84local%E5%92%8Clocal-lvm 换源 https://www.jianshu.com/p/98e87febfd5e https://www.jianshu.com/p/b4a792945d99 无有效订阅弹窗 https://www.jianshu.com/p/98e87febfd5e https://www.nasge.com/archives/139.html vfio https://luohao-brian.gitbooks.io/interrupt-virtualization/content/vfio-she-bei-zhi-tong-jian-jie.html 直通 https://foxi.buduanwang.vip/virtualization/pve/561.html/ https://www.vediotalk.com/archives/46093 https://www.10bests.com/pve-libreelec-kodi-htpc/ https://pve.proxmox.com/wiki/Pci_passthrough https://www.cnblogs.com/haiyonghao/p/14440944.html 安装OpenWRT https://youtu.be/UPKpEvyx9_o PVE修改ip https://www.xhling.com/post-398.html Android TV 9 x86 https://www.youtube.com/watch?v=7mdV1r8mUPo https://www.bilibili.com/read/cv6750143 https://www.cnblogs.com/Summer6/p/13696468.html 硬盘直通 https://foxi.buduanwang.vip/virtualization/1754.html/ 硬解 https://www.moeox.com/155.html


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有