Featured image of post 家里云All in One折腾日记

家里云All in One折腾日记

   
文章摘要
新的一天,有没有变得更好呢……😋

配置以及教程

n100的信息查询

32f7dceac817abdf2ad05f9bf6d57d0

c2e2132ffb6830790675c5c88244557

走前人的路不一定最好,但是一定比较稳

选择的B站教程

文字教程以及交流群

一起玩 NAS!

小陈折腾日记

拆机

​ 没啥难的,没有自带螺丝刀,使用买硬盘送的螺丝刀刚刚好,注意插内存的时候小心就可以了,拆内存把两边扒拉开就行

底部外壳有个拉条,可以把底盖拉开,这个拉条在网口一侧

​ 本来买的8G内存,但是没想到飞牛装了太多媒体应用,就占了7个多G,想了下,干脆七天无理由退了,换根32G的或者16G的

image-20250219180423882

系统选择

由于要使用all in one

根据n100小主机的性能,想先尝试一下pve,期望的效果是软路由+轻NAS+服务器

PVE系统下载

官网地址: https://www.proxmox.com/

官网下载地址: https://www.proxmox.com/en/downloads

这里有一个坑(官网下载多线程会莫名卡死,选择连接数1就可以下载完整文件,速度慢慢稳定在50%带宽速度)

image-20250116130351129

教程操作

  • 将iso写入U盘

  • 装上内存和硬盘

  • 连接上U盘,鼠标,键盘,显示器(我用的电视),最后插上电源

  • 先按住键盘del键,然后点击开机键才能进入bios

  • 设置U盘为第一启动项之后保存(保存在最右边)

  • 安装和视频教程一样

  • 安装完成之后务必先拔U盘,才reboot(否则引导grup概率出问题)

  • 出问题就插U盘进入bios设置第一启动项,重新安装(我装了两次)

一次性脚本

wget -q -O /root/pve_source.tar.gz 'https://bbs.x86pi.cn/file/topic/2023-11-28/file/01ac88d7d2b840cb88c15cb5e19d4305b2.gz' && tar zxvf /root/pve_source.tar.gz && /root/./pve_source

很方便,只要bios设置成功,几乎不会出问题,但是安全性存疑,也不利于熟悉家里云

第一个视频的坑

  • 大部分没有问题,很细致,但是添加no订阅和去除弹窗的命令是冲突的,添加no订阅之后nano /etc/apt/sources.list会多出来一个no订阅的官方连接,自然就慢了,因此不需要让它变绿,只要添加镜像就行
  deb https://mirrors.tuna.tsinghua.edu.cn/proxmox/debian/pve bookworm pve-no-subscription

image-20250116204029247

image-20250116203926472

飞牛OS核显直通

使用教程失败(已经排查出是BIOS没有开启VT-d)

另寻他法

BIOS设置可以跳到下面核显虚拟直通BIOS设置

我在grup引导绑定了完整的硬件信息

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt iommu.strict=1 vfio-pci.disable_vga=1 video=vesafb:off video=efifb:off initcall_blacklist=sysfb_init"

其他和教程一样

点这里看隐藏内容!

原本的教程:

  1. 修改grub引导启动

nano /etc/default/grub

“quiet intel_iommu=on video=efifb:off”

update-grub

  1. 添加模块

nano /etc/modules

添加如下内容:

vfio vfio_iommu_type1 vfio_pci vfio_virqfd

  1. 增加黑名单

nano /etc/modprobe.d/pve-blacklist.conf

添加如下内容:

blacklist i915 blacklist snd_hda_intel options vfio_iommu_type1 allow_unsafe_interrupts=1

  1. 更新内核

update-initramfs -k all -u

重启:reboot

  1. 修改fnOS虚拟机硬件配置

GPU 选 virtio GPU

添加PCI硬件,选择显卡

关闭并重新启动虚拟机。

全部设置完成之后

检查是否需要进行BIOS设置

检查iommu开启与否
dmesg | grep -e DMAR -e IOMMU

如果输出完整信息就是成功

如果显卡(就是后面是02那个显示被skip,那么说明bios里面没有设置正确)

正常的输出

root@pve:~# dmesg | grep -e DMAR -e IOMMU
[    0.018569] ACPI: DMAR 0x000000006F4F8000 000088 (v02 INTEL  EDK2     00000002      01000013)
[    0.018611] ACPI: Reserving DMAR table memory at [mem 0x6f4f8000-0x6f4f8087]
[    0.034121] DMAR: IOMMU enabled
[    0.078599] DMAR: Host address width 39
[    0.078600] DMAR: DRHD base: 0x000000fed90000 flags: 0x0
[    0.078608] DMAR: dmar0: reg_base_addr fed90000 ver 4:0 cap 1c0000c40660462 ecap 29a00f0505e
[    0.078611] DMAR: DRHD base: 0x000000fed91000 flags: 0x1
[    0.078615] DMAR: dmar1: reg_base_addr fed91000 ver 5:0 cap d2008c40660462 ecap f050da
[    0.078617] DMAR: RMRR base: 0x00000076000000 end: 0x000000807fffff
[    0.078621] DMAR-IR: IOAPIC id 2 under DRHD base  0xfed91000 IOMMU 1
[    0.078622] DMAR-IR: HPET id 0 under DRHD base 0xfed91000
[    0.078623] DMAR-IR: Queued invalidation will be enabled to support x2apic and Intr-remapping.
[    0.080371] DMAR-IR: Enabled IRQ remapping in x2apic mode
[    0.297428] pci 0000:00:02.0: DMAR: Skip IOMMU disabling for graphics
[    0.375560] DMAR: No ATSR found
[    0.375560] DMAR: No SATC found
[    0.375562] DMAR: IOMMU feature fl1gp_support inconsistent
[    0.375563] DMAR: IOMMU feature pgsel_inv inconsistent
[    0.375563] DMAR: IOMMU feature nwfs inconsistent
[    0.375564] DMAR: IOMMU feature dit inconsistent
[    0.375565] DMAR: IOMMU feature sc_support inconsistent
[    0.375566] DMAR: IOMMU feature dev_iotlb_support inconsistent
[    0.375567] DMAR: dmar0: Using Queued invalidation
[    0.375569] DMAR: dmar1: Using Queued invalidation
[    0.375965] DMAR: Intel(R) Virtualization Technology for Directed I/O
root@pve:~#

直通成功

image-20250117102317599

去除弹窗

逐步执行

sed -i_orig "s/data.status === 'Active'/true/g" /usr/share/pve-manager/js/pvemanagerlib.js
sed -i_orig "s/if (res === null || res === undefined || \!res || res/if(/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
sed -i_orig "s/.data.status.toLowerCase() !== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
systemctl restart pveproxy

PCI硬件(网口,USB等)直通

i915.max_vfs=4(需要虚拟的核显数目)

sed -i '/^GRUB_CMDLINE_LINUX_DEFAULT/c\GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream i915.enable_guc=3 i915.max_vfs=4"' /etc/default/grub
echo -e "vfio\nvfio_iommu_type1\nvfio_pci\nvfio_virqfd" | tee -a /etc/modules
update-grub
update-initramfs -u -k all
reboot

核显虚拟直通BIOS设置

教程较少

这两个比较直接

看了大量教程

大差不差,有两种方式:

  • 通过开启iommu,添加模块,硬件黑名单更改引导grup
  • intel 12代以上默认支持的SR_IOV(虚拟核显)

暂时没有分割核显的打算,打算直接给飞牛OS使用

开启VT-d

Chipset->SA configuration->VT-d设置为enabled(可能需要先开启advanced设置)

IMG_20250117_095058

IMG_20250117_095048

开启 SR_IOV

Advanced->OEM设置->SR IOV设置为enabled

IMG_20250117_094750

IMG_20250117_094739

轻NAS

​ 使用飞牛OS安装应用完全足够,手机上传文件也很方便

软路由

​ 目前的方案是使用iStoreOS,成功使用了旁路由,但是家里的ipv6还不会设置网关,导致有时候wifi成功科学,而有线设备有时候直连,其次是没有多余网线,用了一根五类百兆网线,日常峰值11m有点不够看,4k拖动也会卡顿

科学插件地址(使用的x86的插件)

mihomo

备份方案

​ 没有更多的资金投入raid阵列和机械硬盘,所以使用onedrive和谷歌相册双端备份吧

连接wifi在学校使用

首先解决访问pve系统的问题

使用网线将笔记本和主机连接,打开控制面板,这个地址控制面板\网络和 Internet\网络和共享中心选择更改适配器选项

image-20250217175929667

右键以太网选择属性

image-20250217180043387

点击ipv4这个选项,将自动获取ip更改为PVE主机的ip地址192.168.10.106前三个网段和PVE主机相同,如此唯一的一个网口只能和小主机组内网了

image-20250217180216984

无线网络

查看无线网卡

ip link

我的是wlo1

  1. 确保 wpasupplicant 已安装:

    apt-get update
    apt-get install wpasupplicant
    
  2. 创建或编辑 /etc/wpa_supplicant/wpa_supplicant.conf 文件,添加 WiFi 配置:

    nano /etc/wpa_supplicant/wpa_supplicant.conf
    
  3. 在文件中添加以下内容:

    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    update_config=1
    country=CN
    
    network={
        ssid="WIFI名"
        psk="密码"
    }
    
    network={
        ssid="buaamobile"
        key_mgmt=WPA-EAP
        eap=PEAP
        identity="用户名"
        password="密码"
        phase1="peaplabel=0"
        phase2="auth=MSCHAPV2"
    }
    
  4. 保存并关闭文件。

  5. 启动 wpa_supplicant 服务:

    wpa_supplicant -B -i wlo1 -c /etc/wpa_supplicant/wpa_supplicant.conf
    
  6. 获取 IP 地址:

    dhclient wlo1
    
  7. 检查网络连接状态:

    ip addr show wlo1
    

如果仍然无法连接,请检查以下内容:

  • 确保无线网卡驱动已正确安装。
  • 确保无线网卡硬件开关已打开(如果有)。
  • 查看 dmesgjournalctl -xe 输出,检查是否有相关错误信息。
  1. 此时默认网关仍然是以太网ip route

    root@pve:~# ip route
    default via 192.168.10.1 dev vmbr0 proto kernel onlink 
    192.168.10.0/24 dev vmbr0 proto kernel scope link src 192.168.10.100 
    192.168.135.0/24 dev wlo1 proto kernel scope link src 192.168.135.102 
    root@pve:~# 
    
  2. 需要删除原来的默认网关,使用新的网关

连接网线之后,首先共享网络给pve,访问地址会改变,之后在飞牛SSH单独安装依赖,直通wifi之后单独连接

共享笔记本和pve小主机网络

首先同样修改适配器选项,右键WLAN属性

共享到以太网,此时ip段提示变化到192.168.137.X

image-20250220002146364

需要修改pve的访问ip 从192.168.10.100:8006改成192.168.137.100:8006

同时进入pve的shell修改文件

nano /etc/network/interfaces

不是自动桥接就手动改成需要的ip段(对于这个网口)

auto vmbr0
iface vmbr0 inet static
        address 192.168.137.100/24
        gateway 192.168.137.1
        bridge-ports enp3s0 wlo1
        bridge-stp off
        bridge-fd 0

现在pve就有网了

点进飞牛系统控制台,由于我直通了两个网口给他

可以看到新的访问地址192.168.137.7:5666

image-20250220002810781

将这个网口设置默认网关就可以联网使用

image

CC BY-NC-SA 4.0 创意的非商业派对入场券
最后更新于 2025-02-21 11:54
晚来天欲雪,能饮一杯无