我的记录分享之软路由安装(PVE+ikuai+openwrt+NAS+...)
自记录完折腾我的中兴CT341这台4核小主机后 (可看我上一篇记录,点这个链接查看),今天记录下安装软路由的一些东西,本人是资深小白 ,折腾过程中遇到的问题都是通过网络搜索和学习的,因为有很多是东看到一点西学到一点,有些问题的实现方法多样甚至要作比较和尝试才能找到对自己正确有用的,为了节省以后再次折腾的时间和避免忘记一些东西,记录本文作一次简单的梳理,当然这篇记录也都折腾完之后才写的,所以有些过程可能没有图片,只有便于自己记忆的思路上的文字描述,有些简单的步骤也可能会略去。在开始之前,首先向网络上无私奉献的各位大佬致谢 。
一、PVE(Proxmox Virtual Environment)的安装
下载地址:点击这里 直接选最新的ISO文件下载,目前最新是7.2 的。下载了ISO文件后,还需要准备一个U盘,4G的U盘就可以了,将这个ISO通过写盘工具写入U盘,这里推荐使用这个简单直观又好用的写盘工具balenaEtcher(下载点这里)。安装U盘制作好了之后,将需要安装软路由的主机设置U盘启动,插入安装启动U盘,将PVE安装入主机某个指定的硬盘或者U盘。安装过程根据提示就行,具体略过。安装完后启动小主机,用另外一台电脑连接小主机,或者直接将小主机接入家庭网络,接好内网和外网的网线。哪个网口是LAN口如果是第一次安装的主机,可能需要通过拔插网线来尝试,我这里只是双网口,而且原生网口一般安装PVE时是排第一选择位的,没有选其他的话,很容易试出来。电脑的网段设置为刚刚安装PVE时指定的PVE IP地址同一网段,然后在电脑浏览器输入https://PVEIP:8006,用户名root,密码为安装PVE设定的密码,选择语言等如下图。
进入PVE后先创建网络桥接,将剩下的网口给到PVE节点。我这里只有一个剩下的网口,作为WAN口备注使用。
将所有网卡设置为自动启动。然后就可以安装其他的虚拟机了。
二、安装爱快虚拟机,选择爱快作为拨号主路由和做一些流控,简单易用而且稳定。
下载地址:爱快,选择ISO文件下载,32位或64位看小主机配置,我选的是64位的。下载完成后,将这个ISO文件上传到PVE,可以通过浏览器直接上传,点击PVE节点下面的Local盘符,点击右边选择ISO镜像,点上传,选择文件,上传。
图上看到是我已上传了的ISO镜像。上传完成后,点击右上角“创建虚拟机”开始创建爱快虚拟机:
虚拟机ID自选,需要三位数,不能使用已有ID,名称就写iKuai,下一步
选择安装镜像来源,其他默认,下一步
默认,下一步,
系统这里,显卡选择默认或者VMWare兼容都可以,其他默认,下一步,
磁盘这里,选择安装存储位置和大小,一般安装在PVE的Lvm给几个G就行。下一步。
CPU和内存看情况给,因为我这只是作为拨号主路由,不需要太多资源,4核只给了1核,内存给了2g ,其实在日常使用过程中完全绰绰有余。下一步
网络这里,选择LAN的桥接网卡,模型采用半虚拟化。下一步,
确认无误后,点击完成,创建该虚拟机。创建完成后先别启动,把另一张网卡分配一下。
添加完网卡后,进入控制台,启动
启动引导完后,出现上图提示,因为刚刚建立虚拟机的时候设置内存是2G的,这里安装64位提示需要至少4G以上,我们可以先分配4G安装完使用后再将内存调回2G,这时可以先关闭虚拟机,然后回到硬件界面,双击内存编辑修改为4G,再次启动。
启动引导后,选择1将系统安装到硬盘,安装完自动重启进入控制台界面,界面简单易懂,这时首先需要设置网卡LAN口IP地址,选2进入
IP地址根据各自情况自定,设置后后退出。然后浏览器输入此IP地址,进入爱快系统。初始账号admin,密码admin,登陆后提示重设新密码。进入后,首先设置WAN网卡绑定,再根据宽带情况选择不同接入方式。
设置好爱快的上网参数等之后,连接上外网,接下来就可以对PVE进行修改更新源、升级和安装一些其他的东西了。如果小主机要安装的虚拟机较多或者内存紧张,记得后面可以把爱快的内存下调2G,另外需要把爱快设置为开机自动启动。
三、PVE修改源地址
如果安装PVE的时候,PVE的网关和DNS并没有填对你拨号主路由地址的话,可以先修改一下,修改后重启PVE。
下面的操作会使用到SSH工具,按各自习惯自选。我平时一般使用的是MobaXterm,有需要的可以上点击官网直接下载安装,直接选择Free版即可。
PVE7 安装后默认配置的 apt 软件源和 CT(LXC)容器模板源均是官方默认的,国内使用有时状态不佳,可以替换为清华提供的国内镜像源速度将有一个较大的提升。以下命令或文本编辑通过MobaXterm操作。
1、替换 apt 软件源
替换前建议先更新下证书,否则可能由于证书不可用导致 https 无法使用,进而无法下载所有软件。
sudo apt install apt-transport-https ca-certificates
首先替换通用软件源, Debian 的软件源配置文件目录是 /etc/apt/sources.list,备份后将其中内容修改为以下即可。
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free
之后替换 pve 软件源,pve 镜像默认的 pve 软件源配置文件是 /etc/apt/sources.list.d/pve-enterprise.list ,备份后将其中内容替换为以下即可:
deb https://mirrors.tuna.tsinghua.edu.cn/proxmox/debian bullseye pve-no-subscription
最后更新下,速度很快:
apt-get update
apt upgrade
2、修改 CT Templates (LXC容器)源
将 /usr/share/perl5/PVE/APLInfo.pm 文件中默认的源地址 http://download.proxmox.com 替换为 https://mirrors.tuna.tsinghua.edu.cn/proxmox 即可。
可以使用如下命令修改:
cp /usr/share/perl5/PVE/APLInfo.pm /usr/share/perl5/PVE/APLInfo.pm_back
sed -i 's|http://download.proxmox.com|https://mirrors.tuna.tsinghua.edu.cn/proxmox|g' /usr/share/perl5/PVE/APLInfo.pm
针对 /usr/share/perl5/PVE/APLInfo.pm 文件的修改,重启后生效。
systemctl restart pvedaemon.service
之后在 pve 网页端下载 CT Templates 速度就很快了。
apt-get update
apt upgrade
四、PVE安装温度监控,这步要放在上面PVE更新或升级完成之后,因为升级后恢复默认。
1、安装lm-sensors
apt-get install lm-sensors
安装完成后执行: sensors-detect 进行传感器探测,通常情况下全部按默认选择 yes 即可
探测完成后执行: sensors -j 测试传感器(参数 -j 使其以 JSON 格式输出)
硬盘温度检测:安装hddtemp
apt install hddtemp
安装完成后执行:
hddtemp /dev/sd? #测试传感器
由于 PVE 的 web 服务以用户 www-data 身份运行,需要修改 hddtemp 的权限:
chmod +s /usr/sbin/hddtemp
2、编辑修改文件
a、/usr/share/perl5/PVE/API2/Nodes.pm,搜索my $dinfo = df('/', 1);在其上面添加两行代码
$res->{thermal} = `sensors -j`; # 添加此行以获取 CPU 与主板等温度
$res->{thermal_hdd} = `hddtemp /dev/sd?`; # 添加此行以获取硬盘温度
修改后:
b、编辑文件 /usr/share/pve-manager/js/pvemanagerlib.js,
跳转到 widget.pveNodeStatus 位置,编辑成如下所示
此处height 的值需按情况修改,每多显示一行数据增加 20,网上说法还有另外一处的height值也要修改,但我的好像修不修改都没有变化,所以就不管它了。
跳转到 PVE Manager Version 位置,编辑成如下所示,加入两段粗体字的代码,代码可根据各自实际修改
{
itemId: 'version',
colspan: 2,
printBar: false,
title: gettext('PVE Manager Version'),
textField: 'pveversion',
value: '',
},
{
itemId: 'thermal',
colspan: 2,
printBar: false,
title: gettext('Thermal Status'),
textField: 'thermal',
renderer: function(value) {
value = JSON.parse(value.replaceAll('Â', ''));
const radeon = value['radeon-pci-0008']['temp1']['temp1_input'].toFixed(1);
const power = value['fam15h_power-pci-00c4']['power1']['power1_crit'].toFixed(1);
const cpu = value['k10temp-pci-00c3']['temp1']['temp1_input'].toFixed(1);
// ...获取其他传感器数据
return `CPU: ${cpu} C | Radeon: ${radeon} C | Power: ${power}W`;
}
},
{
itemId: 'thermal-hdd',
colspan: 2,
printBar: false,
title: gettext('HDD Thermal Status'),
textField: 'thermal_hdd',
renderer: function(value) {
value = value.replaceAll('Â', '');
return value.replaceAll('n', '<br>');
}
}
],
updateTitle: function() {
如图
然后执行: systemctl restart pveproxy 重启 PVE web 服务,即可在PVE的概要页面看到温度显示了。
因为我这小主机好像不支持CPU等具体核心温度,能显示的也比较少。看下图我后来又买了一台M720Q想一步到位做软路由主力机的,显示的信息就比较齐一点,能把每个核心温度,主板、硬盘、网卡温度都能显示。
好了,这篇就先整理到这,后面接下来会整理openwrt的安装,在openwrt内的Docker安装青龙面板,安装TMM刮削器(tinymediamanager),为什么这个TMM安装在openwrt呢,因为openwrt作为旁路由后可以直接刮削完整电影信息 ,另外还有安装黑群晖,黑群晖里安装qbittorrent负责下载和ipv6的DDNS,LXC安装jellyfin实现核显硬解等等。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
城市小鱼儿
校验提示文案
Gaoler
校验提示文案
可爱的小麦麦麦
校验提示文案
值友8529657474
校验提示文案
Darcy_Thomas
校验提示文案
买卖成仁义在
校验提示文案
qwerter
a、/usr/share/perl5/PVE/API2/Nodes.pm,搜索my $dinfo = df('/', 1);在其上面添加两行代码
这一步是怎么编辑的呢?
校验提示文案
Alex_1202
校验提示文案
Alex_1202
校验提示文案
龙在江湖漂
校验提示文案
晨小飛
校验提示文案
有丶东西呀
校验提示文案
Sea8Wind
校验提示文案
魅力猫
校验提示文案
Tianli
校验提示文案
值友1742090744
校验提示文案
rainfree
校验提示文案
laoyun
校验提示文案
值友4362896526
校验提示文案
摄影师陈大爷
校验提示文案
hkcat110
校验提示文案
qing2002
校验提示文案
Open_Your_Mind
校验提示文案
值友3110595379
校验提示文案
摄影师陈大爷
校验提示文案
值友4362896526
校验提示文案
疯狂的假期
校验提示文案
laoyun
校验提示文案
rainfree
校验提示文案
值友1742090744
校验提示文案
Tianli
校验提示文案
魅力猫
校验提示文案
Sea8Wind
校验提示文案
有丶东西呀
校验提示文案
晨小飛
校验提示文案
Alex_1202
怎么在手机端访问完整的web界面?
校验提示文案
龙在江湖漂
校验提示文案
Alex_1202
校验提示文案
Alex_1202
校验提示文案
qwerter
a、/usr/share/perl5/PVE/API2/Nodes.pm,搜索my $dinfo = df('/', 1);在其上面添加两行代码
这一步是怎么编辑的呢?
校验提示文案