OrangePi Kunpeng Pro开发板初体验——家庭小型服务器

news2024/11/15 15:31:02

引言

在开源硬件的浪潮中,开发板作为创新的基石,正吸引着全球开发者的目光。它们不仅为技术爱好者提供了实验的平台,更为专业开发者带来了实现复杂项目的可能性。本文将深入剖析OrangePi Kunpeng Pro开发板,从开箱到实际应用,全面评估其性能与实用性。

开箱体验

当OrangePi Kunpeng Pro套装首次映入眼帘,其精致的包装设计和周到的配件选择便令人印象深刻。套装内含的主板、电源适配器及数据线、高效散热片以及一张32GB的高速存储卡,共同构成了一个功能完备的开发环境,为创意实现提供了坚实的硬件基础。

硬件概览

OrangePi Kunpeng Pro的主板设计紧凑而不失专业,搭载了一颗性能强劲的4核64位Arm处理器,搭配8GB或16GB的LPDDR4X内存,足以应对各种中小型项目的需求。

存储方面,除了板载的32MB SPI Flash,还提供了Micro SD卡插槽、eMMC插座以及M.2 M-Key接口,支持2280规格的NVMe SSD或SATA SSD,为数据存储提供了多样化的选择。

网络连接方面,板载的RTL8211F PHY芯片支持10/100/1000Mbps以太网,而Wi-Fi+蓝牙模块则提供了2.4G和5G双频Wi-Fi及BT4.2,确保了无线连接的高速与稳定。此外,2个USB3.0 Host接口和1个Type-C接口(仅支持USB3.0)提供了丰富的外设扩展能力。

显示与音频输出同样不落下风,2个HDMI接口和1个MIPI DSI 2 Lane接口满足了多屏显示需求,而1个3.5mm耳机孔输出则为音频爱好者提供了高品质的音频体验。40 pin的扩展口更是为开发者提供了UART、I2C、SPI、PWM和GPIO等丰富的接口选项。

安装与使用

OrangePi Kunpeng Pro的安装过程异常简便。预装的openEuler 22.03操作系统让初次启动变得轻松愉快。仅需将电源接入Type-C接口、HDMI线接入HDMI0接口,并将有线鼠标和键盘插入USB-A接口,拨动拨码开关至最右侧,即可一键启动,迅速进入系统桌面。

通过设置界面,连接上wifi网络,打开终端界面,输入命令ifconfig wlan0,记录下OrangePi Kunpeng Pro的wlan0网口IP地址。

实际应用案例——智能家居开源系统Homeassistant

将OrangePi Kunpeng Pro作为家庭小型服务器的想法,让我在家中就能享受到智能家居带来的便利。通过系统界面配置好无线网络或者有线网络,获取到ip地址后,在路由器上做一个端口转发将22端口转发出去,之后就可以抛弃桌面系统,在任何地方通过SSH远程连接至开发板,实现对家中智能设备的远程控制。

下图是在公司通过SSH成功远程连接至家里的OrangePi Kunpeng Pro开发板。

Docker安装

为了方便快速的部署Homeassistant,需要在OrangePi Kunpeng Pro开发板上安装docker服务。 在root用户下执行yum install docker -y或在非root用户下执行sudo yum install docker -y,等待安装完成,通过docker -v命令查看版本号,确认docker服务安装成功。

Homeassistant简介及安装

HomeAssistant,简称HA,是一款基于Python开发的智能家居开源系统。它支持市面上众多品牌的智能家居设备,能够轻松实现设备的语音控制和自动化管理。通过Docker容器化部署,安装过程变得异常简单:

docker run -d \

--name homeassistant \

--restart=always \

--privileged \

--hostname homeassistant \

-e TZ=Asia/Shanghai \

-v /hdd/opt/homeassistant:/config \

-v /hdd/downloads:/media \

--net=host \

ghcr.io/home-assistant/home-assistant:stable

参数解释

  • docker run:这是Docker运行容器的基本命令。

  • -d:表示以守护进程模式运行容器。

  • --name homeassistant:指定容器的名称为homeassistant

  • --restart=always:设置容器在退出时总是尝试重启。

  • --privileged:以特权模式运行容器,这通常用于需要访问宿主机硬件或需要更高权限的容器。

  • --hostname homeassistant:设置容器的主机名为homeassistant

  • -e TZ=Asia/Shanghai:设置容器的时区为上海时区。

  • -v /hdd/opt/homeassistant:/config:将宿主机的/hdd/opt/homeassistant目录挂载到容器的/config目录,用于存储Home Assistant的配置文件。

  • -v /hdd/downloads:/media:将宿主机的/hdd/downloads目录挂载到容器的/media目录,可能用于存储下载的文件或其他媒体内容。

  • --net=host:将容器的网络设置为宿主机的网络,这样容器内的应用程序就可以直接使用宿主机的网络接口。

  • ghcr.io/home-assistant/home-assistant:stable:指定要运行的Home Assistant镜像的来源和版本号。这里是从GitHub Container Registry (ghcr.io) 拉取的官方Home Assistant镜像,标签为stable,表示稳定版本。

输入命令docker ps,显示一条正在运行的homeassistant容器,那么恭喜你,homeassistant安装成功。

应用界面

接下来在浏览器中输入地址“http://localhost:8123”,不出意外的话,应该可以看到如下界面,尽情去创建自己的智能家居吧。

实际应用案例——开源种子下载工具qbittorrent

qbittorrent简介及安装

qbittorrent作为一款开源的BitTorrent下载客户端,以其强大的功能和轻巧的体积,为用户提供了一个无广告、无捆绑的下载体验。无论是4k高清电影、大型游戏还是系统镜像,都能通过它轻松下载。

docker run -d \

--name=qbittorrent \

-e PUID=0 \

-e PGID=0 \

-e TZ=Asia/Shanghai \

-e WEBUI_PORT=8080 \

--net=host \

--hostname qbittorrent \

-v /ssd/dockerData/qbittorrent/config:/config \

-v /ssd/downloads:/downloads \

--restart always \

ghcr.io/linuxserver/qbittorrent:4.6.0

参数解释

  • -d:表示以守护进程模式运行容器。

  • --name=qbittorrent:指定容器的名称为qbittorrent

  • -e PUID=0-e PGID=0:设置环境变量PUIDPGID,分别代表用户ID和组ID。这里设置为0,通常意味着使用root用户。

  • -e TZ=Asia/Shanghai:设置容器的时区为上海时区。

  • -e WEBUI_PORT=8080:设置qBittorrent Web界面的端口为8080。

  • --net=host:将容器的网络设置为宿主机的网络,这样容器内的应用程序就可以直接使用宿主机的网络接口。

  • --hostname qbittorrent:设置容器的主机名为qbittorrent

  • -v /ssd/dockerData/qbittorrent/config:/config:将宿主机的/ssd/dockerData/qbittorrent/config目录挂载到容器的/config目录,用于存储qBittorrent的配置文件。

  • -v /ssd/downloads:/downloads:将宿主机的/ssd/downloads目录挂载到容器的/downloads目录,用于存储下载的文件。

  • --restart always:设置容器在退出时总是尝试重启。

  • ghcr.io/linuxserver/qbittorrent:4.6.0:指定要运行的qBittorrent镜像的来源和版本号。这里是从GitHub Container Registry (ghcr.io) 拉取的LinuxServer维护的qBittorrent镜像,版本为4.6.0。

输入命令docker ps,同样会显示一条正在运行的qbittorrent容器,那么恭喜你,qbittorrent安装成功。

应用界面

接下来在浏览器中输入地址“http://localhost:8080”,显示登录界面,默认用户名和密码为admin/adminadmin,下图为下载win11镜像测试。

试用感受

经过对OrangePi Kunpeng Pro的初体验,我对OrangePi Kunpeng Pro的整体表现感到非常满意。它不仅性能卓越,而且操作简便,无论是对于初学者还是专业开发者,都是一个理想的选择。尽管在功耗方面略高于同类产品,但这并不影响它成为我心目中的理想开发板。OrangePi Kunpeng Pro以其出色的性能和实用性,无疑值得推荐给每一位寻求高性能开发板的开发者。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1701716.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024年【G2电站锅炉司炉】免费试题及G2电站锅炉司炉复审考试

题库来源:安全生产模拟考试一点通公众号小程序 2024年【G2电站锅炉司炉】免费试题及G2电站锅炉司炉复审考试,包含G2电站锅炉司炉免费试题答案和解析及G2电站锅炉司炉复审考试练习。安全生产模拟考试一点通结合国家G2电站锅炉司炉考试最新大纲及G2电站锅…

蓝桥杯第十四届国赛B组刷题笔记

A-0子2023: 题目: 小蓝在黑板上连续写下从 11 到 20232023 之间所有的整数,得到了一个数字序列: 𝑆12345678910111213...20222023S12345678910111213...20222023。 小蓝想知道 𝑆S 中有多少种子序列恰好等…

豆包模型最新数据评测!性能究竟如何?

豆包模型最新数据评测!性能究竟如何? 前言 就在5月27日,字节跳动旗下的豆包大模型在火山引擎原动力大会上正式发布,本次大会中豆包的模型能力也引发行业关注。 介绍豆包 豆包是一个多功能 AI 助手,为你的生活、学习、工…

免费 OSS 资源 Backblaze B2 使用最新指南

免费的对象存储资源日渐枯竭,Backblaze 是为数不多仍提供免费 OSS 的良心厂商。另外一个则是大名鼎鼎的 Cloudflare R2。虽然免费,但 Backblaze 也修改了政策:如果不验证信用卡的话是不能打开 Public 选项的,或者支付一美金。估计…

爬山算法教程(个人总结版)

背景与简介 爬山算法(Hill Climbing Algorithm)是一种用于解决优化问题的启发式搜索方法。它是一种局部搜索算法,通过不断尝试从当前解出发,在其邻域内寻找更优的解,直到无法找到更优解为止。该算法得名于其类似于登山…

青蛙跳台阶问题

本期介绍🍖 主要介绍:青蛙跳台阶问题,青蛙跳台阶与斐波那契数列的关系👀。 文章目录 1. 题目2. 递归解题思路3. 迭代解题思路 1. 题目 从前有一只青蛙他想跳台阶,有n级台阶,青蛙一次可以跳1级台阶&#xff…

MYSQL之安装

一,下载仓库包 wget -i -c https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm二,安装仓库 yum -y install mysql80-community-release-el7-3.noarch.rpmsed -i s/gpgcheck1/gpgcheck0/g mysql-community.repo三,安装MY…

Python代码:十七、生成列表

1、题目 描述: 一串连续的数据用什么记录最合适,牛牛认为在Python中非列表(list)莫属了。现输入牛牛朋友们的名字,请使用list函数与split函数将它们封装成列表,再整个输出列表。 输入描述: …

lua 计算第几周

需求 计算当前赛季的开始和结束日期,2024年1月1日周一是第1周的开始,每两周是一个赛季。 lua代码 没有处理时区问题 local const 24 * 60 * 60 --一整天的时间戳 local server_time 1716595200--todo:修改服务器时间 local date os.date("*t…

Redis 事件机制 - AE 抽象层

Redis 服务器是一个事件驱动程序,它主要处理如下两种事件: 文件事件:利用 I/O 复用机制,监听 Socket 等文件描述符上发生的事件。这类事件主要由客户端(或其他Redis 服务器)发送网络请求触发。时间事件&am…

苗情灾情监控系统—提高农业生产效率

TH-MQ2苗情灾情监控系统是一种用于监测农作物生长状况和灾情的设备,通过实时监测和数据分析,帮助农民及时了解作物生长情况,采取相应的管理措施,提高农业生产效率和降低生产成本。 该系统通常由多种传感器、摄像头、数据传输模块等…

前端命令行部署

最近接了一个项目,发版本需要把dist包给后端部署服务,再加上产品那边需求不稳定,改了又改,一天要发好几个,不仅跟我配合的后端不胜其烦,本人也是很烦。最近在网上看到一个npm自主部署的包–deploy cli工具&…

QT C++ 模型视图结构 QTableView 简单例子

在Qt中,MVC模式被广泛使用于各种用户界面框架中,包括Qt的模型视图结构。Qt的模型视图结构是基于MVC模式设计的,其中包括了Model、View和Delegate三个部分。 QTableView是Qt模型视图结构中的一种视图,它用于以表格形式显示数据。 …

红队项目PinkysPalace格式字符串缓冲区溢出详解

简介 渗透测试-地基篇 该篇章目的是重新牢固地基,加强每日训练操作的笔记,在记录地基笔记中会有很多跳跃性思维的操作和方式方法,望大家能共同加油学到东西。 请注意: 本文仅用于技术讨论与研究,对于所有笔记中复现的…

如何使用OutputStream类实现文件的读写操作?

哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一…

Tensors张量操作

定义Tensor 下面是一个常见的tensor,包含了里面的数值,属性,以及存储位置 tensor([[0.3565,0.1826,0.6719],[0.6695,0.5364,0.7057]],dtypetorch.float32,devicecuda:0)Tensor的属…

Vue2 Element-UI 分页组件el-pagination 修改 自带的total、跳转等默认文字

场景需求: Vue2 Element-UI 分页组件el-pagination 修改 自带的total、跳转等默认文字。如下图:默认提示字变成了英文,如何将其 变成 汉字提示呢? 解决方案: 1.方案1:修改DOM内容 不提倡此方案&#xf…

这个springboot项目好用!毕设、学习提升

最近好多小伙伴过来问 V 哥关于毕业设计项目的事情,对于计算机类的同鞋们来说还是为难的,自己在学校掌握的技术栈比较少,要完成一个解决某领域业务的实用性项目,难度还是不小的,这得从需求分析,功能设计&am…

大语言模型训练部署流程及步骤

01.确定需求大小 在构建大语言模型的前期准备中,基础设施是最为重要的,GPU的型号以及数据直接关系到模型的训练质量和训练时间。例如:使用单个V100的GPU训练具有1750亿个参数的GPT-3将需要约288年,那就更不用提现在动辄万亿参数的…

react-d3-tree:React组件创建交互式D3树形图

在这里插入代码片import React from "react"; import ReactDOM from "react-dom"; import Tree from "react-d3-tree";import "./styles.css";const myTreeData [{name: "Gaurang Torvekar",attributes: {keyA: "val …