当前位置: 首页 > article >正文

“星睿O6” AI PC开发套件评测 - 部署PVE搭建All in One NAS服务器

Radxa O6平台上部署PVE搭建All in One NAS服务器

Radxa O6是一款性能卓越的单板计算机,其强劲的硬件配置和多样化的接口设计,使其成为家庭和小型企业理想的All in One服务器解决方案。值得一提的是,O6原生配备了两个5G网口,便于直接实现软路由的部署。此外,设备上的两个USB 4.0接口极大地便利了外部设备的扩展,例如连接外置显卡。O6还支持原生NVMe SSD作为系统盘,虽然缺少原生的SATA接口,但通过PCIe 4.0 x16扩展槽,用户可以轻松添加SATA或NVMe设备,USB 4.0同样支持连接硬盘柜。O6采用ITX板型,与市面上ITX机箱完美兼容,并且支持ATX电源,堪称All in One NAS的理想选择。本篇文章将详尽指导如何在Radxa O6上部署Proxmox VE(PVE),构建一款功能全面的All in One NAS服务器。

一、准备工作

硬件要求

  • Radxa O6单板计算机一台
  • 64GB以上存储空间(建议256GB以上 NVME SSD)
  • 网络连接设备(网线、路由器等)
  • 显示器、键盘、鼠标(可选,用于初次设置,如果没有显示器,也可以使用串口线,因为需要配置网络,无法通过ssh完成)

软件要求

  • Bios 需要升级到最新版本0.2.2-1,或者更新的版本,教程.
  • 安装好官方的镜像(目前很多驱动还没开源,先使用官方镜像),教程。安装debian镜像,不要用Fedora。

安装镜像,建议使用NVME硬盘盒 直接DD写到SSD上面,然后直接开机就可以用了。当然,也可以参照官方教程安装。
启动系统之后,需要配置好网络,最好使用有线连接。

二、安装PVE

PVE 目前还没有官方的ARM64 ISO镜像,因此我们都是基于Debian 安装第三方ARM64 ports.

网络配置

pve 会检查localhost 和 hostname.因此我们需要检查一下hosts的配置

先检查自己的hostname,官方应该是radxa,我改成了proxmox了

$ cat /etc/hostname
proxmox

把自己的静态地址加上去,这里我的是

$ nano /etc/hosts
# 把这一行加上去,地址和hostname改成自己的
192.168.9.227   proxmox pvelocalhost

可以用ip命令获取自己的地址

$ ip addr

这里192.168.9.227是的地址, proxmox是我的hostname

检查一下hosts配置

$ cat /etc/hosts
127.0.0.1       localhost
127.0.1.1       orion-o6
192.168.9.227   proxmox pvelocalhost
::1             localhost ip6-localhost ip6-loopback
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters

配置软件源

  1. 我们先把官方源换成国内镜像源,我这里用的清华的源

/etc/apt/source.list 更改为如下内容

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmwaredeb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmwaredeb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware# 以下安全更新软件源包含了官方源与镜像站配置,如有需要可自行修改注释切换
#deb https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
# deb-src https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
  1. 安装证书和依赖库
apt update && apt install -y apt-transport-https ca-certificates curl --fix-missing && apt update
  1. 安装第三方GPG key
curl -L https://mirrors.apqa.cn/proxmox/debian/pveport.gpg -o /etc/apt/trusted.gpg.d/pveport.gpg
  1. 添加第三方的 PVE源
echo "deb https://mirrors.apqa.cn/proxmox/debian/pve bookworm port">/etc/apt/sources.list.d/pveport.list
  1. 更新source list
apt update

安装PVE

apt install -y   ifupdown2 proxmox-ve

这可能需要很长时间,中间需要配置pve管理邮箱服务器,可以选择不配置

安装完后,理论上应该可以直接本机打开网页https://127.0.0.1:8006开看一下,排除网络的问题。
最可能的错误是第一步的hosts没有配置好, 可以通过查看log来debug,多google一下。可以通过下面几个命令来看有没有错误

$ service pvedaemon status
$ service pveproxy status
$ service pve-cluster status

pve 会使用fuse 来重新挂载/etc/pve,可以通过

$ df -h
文件系统               大小  已用  可用 已用% 挂载点
/dev/root              447G   86G  342G   21% /
devtmpfs               7.2G     0  7.2G    0% /dev
tmpfs                  7.5G   46M  7.4G    1% /dev/shm
tmpfs                  3.0G  3.9M  3.0G    1% /run
tmpfs                  5.0M  8.0K  5.0M    1% /run/lock
/dev/fuse              128M   20K  128M    1% /etc/pve
tmpfs                  1.5G   72K  1.5G    1% /run/user/1000
tmpfs                  1.5G   36K  1.5G    1% /run/user/1001

来查看,如果没看到 /dev/fuse 128M 20K 128M 1% /etc/pve这一行,需要把/etc/pve/的内容清空,然后重启pve的服务。

配置PVE

现在PVE 安装成功了,可以打开https://<IP>:8006来配置PVE了

先来一张图

在这里插入图片描述

OVS网桥理论性能比Linux Bridge要高,推荐使用

$ apt install -y openvswitch-switch

硬盘或者网络配置,都可以参考x86 pve配置,没有区别。CT的template应该也是配置好的,不需要额外配置

三、安装OpenWRT虚拟机

上传OpenWRT固件

  1. 下载ARM64 OpenWRT generic 镜像,点击下载
  2. 上传到pve
  3. 也可以直接在PVE shell 上面下载
$ wget https://downloads.openwrt.org/releases/24.10.0/targets/armsr/armv8/openwrt-24.10.0-armsr-armv8-generic-ext4-combined-efi.img.gz
  1. 解压镜像
$ gzip -d openwrt-*.img.gz

创建虚拟机

  1. 填写虚拟机名称,选择Arch为aarch64.

在这里插入图片描述2. iso选择no media,OS选择linux
在这里插入图片描述

  1. 系统选择OVMF(UEFI), arm只支持UEFI bios,添加EFI storage到local。

在这里插入图片描述

  1. disk直接下一步,我们后面会删掉这个磁盘的。
  2. 分配CPU、内存资源,建议至少分配4核CPU、1024MB内存。
  3. 选择网络接口之前建立的网桥,确保虚拟机与物理网络连接。

配置虚拟机

创建完先不要启动,先去硬件配置界面配置一下

  1. detach硬盘,然后remove掉在这里插入图片描述

  2. 添加新的网口(或者你添加一个usb 网卡),不添加也无所谓,后面可能要自己配置wan口。

  3. 在host shell命令行下,把openwrt 镜像加上去, 把VMid换成你的虚拟机ID。

$ qm importdisk <VM ID> openwrt-24.10.0-armsr-armv8-generic-ext4-combined-efi.img local
  1. 回到虚拟机硬件配置界面,把刚刚添加的磁盘加上去,双击 unused Disk0,选择SCSI控制器在这里插入图片描述

  2. 去到虚拟机options,设置界面,把刚刚添加的磁盘作为第一引导 在这里插入图片描述

  3. 启动,正常应该可以直接启动,这时候你就可以配置的软路由了。 在这里插入图片描述

在这里插入图片描述

四、安装其他虚拟机

这里就不详细讲了,可以安装windows,linux。后续如果有需要,再出教程。
windows安装相比linux麻烦一点,大家可以参考这个教程 和 这里。

在这里插入图片描述

CT LXC 容器也比较简单,直通、映射硬件设备也更加成熟。后面如果linlong的VPU解码ok的话,可以用LXC搭建一个Jellyfin媒体服务器。虚拟话的最大好处就是隔离,一个服务崩溃了也不会影响其他服务。

NAS系统可以使用unraid,或者OVM,黑群晖都可以,fnos目前没有支持。这些系统我还没有尝试过,后续可以尝试一下再出教程。

五、总结

已知问题

  1. 直通有问题
    我尝试打开iommu,但是貌似网卡还是无法直通,这个后续需要更多探索。不过软路由用网桥也可以,或者可以外接USB 网卡

我们成功在Radxa O6平台上部署了PVE,并搭建了一款功能强大的All in One服务器。接下来,你可以在这台服务器上部署各种服务,满足家庭或小型企业的需求。

相关文章:

“星睿O6” AI PC开发套件评测 - 部署PVE搭建All in One NAS服务器

Radxa O6平台上部署PVE搭建All in One NAS服务器 Radxa O6是一款性能卓越的单板计算机&#xff0c;其强劲的硬件配置和多样化的接口设计&#xff0c;使其成为家庭和小型企业理想的All in One服务器解决方案。值得一提的是&#xff0c;O6原生配备了两个5G网口&#xff0c;便于直…...

16.使用豆包将docker-compose的yaml转为k8s的yaml,安装各种无状态服务

文章目录 docker方式httpbinit-toolslinux-commandmyipreference docker-compose安装k8s方式 docker方式 httpbin A simple HTTP Request & Response Service https://httpbin.org/ https://github.com/postmanlabs/httpbin https://github.com/mccutchen/go-httpbin do…...

全志H5,NanopiKP1lus移植QT5.12记录

移植步骤 机器环境下载QT5.12.0源码安装交叉编译器修改qmake.conf文件配置编译选项qt5的configure选项说明基本配置选项编译器和链接器选项功能模块配置第三方库集成注意事项 配置过程报错解决配置完成编译过程报错解决编译完成将arm-qt文件夹传送到开发板配置板子环境变量运行…...

定制一款国密浏览器(10):移植SM2算法前,解决错误码的定义问题

上一章中,我给大家介绍了 SM4 在 BoringSSL 上的移植要点,本来计划本章介绍 SM2 算法的移植要点。在移植 SM2 过程中,遇到了一个拦路虎,所以先扫除这个拦路虎,这就是错误码的定义问题。 在铜锁中,引入了几个错误码和错误字符串,在文件 sm2_err.c 中: static const ER…...

使用EXCEL绘制平滑曲线

播主播主&#xff0c;你都多少天没更新了&#xff01;&#xff01;&#xff01;泥在干什么&#xff1f;你还做这个账号麻&#xff1f;&#xff01;&#xff01;&#xff01; 做的做的&#xff08;哭唧唧&#xff09;&#xff0c;就是最近有些忙&#xff0c;以及…… 前言&…...

Warcraft Logs [Classic] [WCL] Usage Wizard <HTOC>

‌HTOC&#xff08;十字军的试炼&#xff09;副本中各个BOSS的ID如下‌&#xff1a; ‌629 - 诺森德野兽‌ ‌633 - 加拉克苏斯大王‌ ‌637 - 派系冠军‌ ‌641 - 瓦格里双子‌ ‌645 - 阿努巴拉克‌ encounterID!637 and encounterID!641 encounterID NOT IN (637,641) 伤害 …...

【笔记】网络安全管理

计算机硬件中&#xff0c;运算器和控制器通常集成在一块芯片内&#xff0c;一般称为&#xff08;&#xff09;。 数据库DB、数据库系统DBS、数据库管理系统DBMS&#xff0c;三者之间的关系是&#xff08;&#xff09;。 OSI/RM体系结构中的网络层与TCP/IP体系结构中的&#x…...

在服务器上部署MinIO Server

MinIO的优势 高性能&#xff1a;MinIO号称是目前速度最快的对象存储服务器&#xff0c;据称在标准硬件上&#xff0c;对象存储的读/写速度最高可以高达183 GB/s和171 GB/s&#xff0c;可惜我的磁盘跟不上 兼容性&#xff1a;MinIO基于Amazon S3协议&#xff0c;并提供了与S3兼…...

一个改善Entity Framework异常处理和错误信息的开源项目

使用DDD从零构建一个完整的系统 使用Entity Framework作为ORM框架应该是绝大多数项目的选择&#xff0c;使得我们操作数据库变得简单方便&#xff1b;但是我们操作数据库&#xff0c;绝对是无法避免数据库发生异常的情况&#xff0c;数据库针对每一种异常也都会提供一个编码来…...

计算机视觉——基于 Yolov8 目标检测与 OpenCV 光流实现目标追踪

1. 概述 目标检测&#xff08;Object Detection&#xff09;和目标追踪&#xff08;Object Tracking&#xff09;是计算机视觉中的两个关键技术&#xff0c;它们在多种实际应用场景中发挥着重要作用。 目标检测指的是在静态图像或视频帧中识别出特定类别的目标对象&#xff0…...

PHP使用pandoc把markdown文件转为word

文章目录 首先安装pandocPHP处理 服务器操作系统是Linux&#xff0c;centos 首先安装pandoc yum install -y pandoc安装完成后输入如下代码&#xff0c;检查安装是否成功 pandoc --versionPHP处理 我把markdown内容存到了数据库里&#xff0c;所以要从数据库读取内容。对内容…...

第二十四天 - 分布式任务队列 - Celery高级应用 - 练习:分布式监控任务系统

一、Celery核心机制解析 1.1 分布式架构四要素 # celery_config.py BROKER_URL redis://:passwordlocalhost:6379/0 # 消息中间件 RESULT_BACKEND redis://:passwordlocalhost:6379/1 # 结果存储 TASK_SERIALIZER json ACCEPT_CONTENT [json] TIMEZONE Asia/Shanghai核…...

针对MCP认证考试中的常见技术难题进行实战分析与解决方案分享

一、身份与权限管理类难题 场景1&#xff1a;Active Directory组策略&#xff08;GPO&#xff09;不生效 问题现象&#xff1a;客户端计算机未应用新建的组策略。排查步骤&#xff1a; 检查GPO链接顺序&#xff1a;使用gpresult /r查看策略优先级&#xff0c;确保目标OU的GPO…...

【滑动窗口】最⼤连续 1 的个数 III(medium)

⼤连续 1 的个数 III&#xff08;medium&#xff09; 题⽬描述&#xff1a;解法&#xff08;滑动窗⼝&#xff09;&#xff1a;算法思路&#xff1a;算法流程&#xff1a; C 算法代码&#xff1a;Java 算法代码&#xff1a; 题⽬链接&#xff1a;1004. 最⼤连续 1 的个数 III …...

OBS 日期时间.毫秒时间脚本 date-and-time.lua

文章目录 OBS 日期时间.毫秒时间脚本&#xff1a;效果 OBS 日期时间.毫秒时间脚本&#xff1a; obs obslua source_name ""last_text "" format_string "" activated false-- 此函数用于获取精确的毫秒级时间戳&#…...

探索大语言模型(LLM):目标、原理、挑战与解决方案

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言语言模型的目标语言模型的数学表示语言模型面临的挑战解决参数量巨大的方法1. 马尔可夫假设2. 神经网络语言模型3.自监督学习4. 分布式表示 脑图总结 前言 在自…...

ES基本操作(Java API)

1. 导入restClient依赖 <!-- es --><dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId><version>7.12.1</version></dependency> <!…...

得物官网sign签名逆向分析

打开得物官网&#xff0c;点击鞋类&#xff0c;可以看到请求 直接搜sign function p(e) {return f()("".concat(e ? s()(e).sort().reduce(function(t, n) {return "".concat(t).concat(n).concat(e[n])}, "") : "", "048a9…...

Agent的九种设计模式 介绍

Agent的九种设计模式 介绍 一、ReAct模式 原理:将推理(Reasoning)和行动(Acting)相结合,使Agent能够在推理的指导下采取行动,并根据行动的结果进一步推理,形成一个循环。Agent通过生成一系列的思维链(Thought Chains)来明确推理步骤,并根据推理结果执行相应的动作,…...

vivado 时钟IP核(MMCM PLL)

CMT简介 FPGA中时钟管理模块&#xff08;CMT&#xff09;包括PLL和MMCM&#xff0c;用于将时钟倍频(比如输入时钟25M&#xff0c;我们要产生50M时钟)、分频(在不影响系统功能的前提下&#xff0c;较低的工作时钟&#xff0c;能够降低系统功耗)、改变相位偏移或占空比等。 当需要…...

hackmyvm-airbind

收集信息 arp-scan -l nmap -sS -v 192.168.195.162 访问扫描到的ip&#xff0c;直接跳转到登录页面&#xff0c;利用admin/admin弱口令登录 在settings.php中找到一处文件上传&#xff0c;上传一句话木马&#xff0c;上传成功 反弹shell 上传php-reverse-shell.php 抓包&am…...

知识了解03——怎么解决使用npm包下载慢的问题?

1、为什么使用npm下载包会下载的慢 因为使用npm下载包时&#xff0c;默认使用国外服务器进行下载&#xff0c;此时的网络传输需要经过漫长的海底电缆&#xff0c;因此下载速度会变慢 2、怎么解决&#xff1f;&#xff08;切换镜像源&#xff09; &#xff08;1&#xff09;方…...

[晕事]今天做了件晕事71,_GNU_SOURCE

今天碰到一件晕,从别的地方搬运来一段代码,里面有使用in6_pktinfo这个结构体: struct in6_pktinfo pktinfo; 通过搜索发现需要include的头文件就是:netinet/in.h。加上这个头文件,还是出现找不到结构体的错误。最后通过仔细查看头文件,发现,这个结构体定义是在宏判断里…...

【算法数据结构】leetcode37 解数独

37. 解数独 - 力扣&#xff08;LeetCode&#xff09; 题目描述&#xff1a; 题目要求每一行 &#xff0c;每一列&#xff0c;每个3*3 的子框只能出现一次。每个格子的数字范围1-9. 需要遍历每个空格填入可能的数字&#xff0c;并验证符合规则。如果符合就填入&#xff0c;不符…...

招商信诺原点安全:一体化数据安全管理解决方案荣获“鑫智奖”!

近日&#xff0c;“鑫智奖 2025第七届金融数据智能优秀解决方案评选”榜单发布&#xff0c;原点安全申报的《招商信诺&#xff1a;数据安全一体化管理解决方案》荣获「信息安全创新优秀解决方案」。 “鑫智奖第七届金融数据智能优秀解决方案评选”活动由金科创新社主办&#x…...

楼宇自控系统如何为现代建筑打造安全、舒适、节能方案

在科技飞速发展的当下&#xff0c;现代建筑对功能和品质的要求日益提升。楼宇自控系统作为建筑智能化的核心技术&#xff0c;宛如一位智慧的“管家”&#xff0c;凭借先进的技术手段&#xff0c;为现代建筑精心打造安全、舒适、节能的全方位解决方案&#xff0c;让建筑真正成为…...

吃透LangChain(四):消息管理与聊天历史存储

消息存储在内存 下面我们展示一个简单的示例&#xff0c;其中聊天历史保存在内存中&#xff0c;此处通过全局 Python 字典实现。我们构建一个名为 get_session_history 的可调用对象&#xff0c;引用此字典以返回chatMessageHistory实例。通过在运行时向 RunnablewithMessageHi…...

【差分隐私相关概念】瑞丽差分隐私(RDP)命题4

命题4的证明详解&#xff08;分情况讨论&#xff09; 背景与设定 机制&#xff1a; f : D → R f: \mathcal{D} \to \mathcal{R} f:D→R 是由 n n n 个 ϵ \epsilon ϵ-差分隐私机制自适应组合而成。相邻输入&#xff1a; D D D 和 D ′ D D′ 是相邻数据集。目标&#xf…...

RoBoflow数据集的介绍

https://public.roboflow.com/object-detection&#xff08;该数据集的网址&#xff09; 可以看到一些基本情况 如果我们想要下载&#xff0c;直接点击 点击图像可以看到一些基本情况 可以点击红色箭头所指&#xff0c;右边是可供选择的一些yolo模型的格式 如果你想下载…...

免费将AI生成图像放大4倍的方法

有些人不需要任何高级工具和花哨的技巧;他们只需要一种简单的方法来提升图像分辨率而不损失任何质量 — 今天,我们将学习如何做到这一点。 生成AI图像最大的问题之一是什么?最终结果通常分辨率非常低。 这会导致很多不同的问题,特别是对于那些想要在内容或项目中使用这些…...