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

Hi3798MV200 恩兔N2 NS-1 (二): HiNAS海纳思使用和修改

目录

  • Hi3798MV200 恩兔N2 NS-1 (一): 设备介绍和刷机说明
  • Hi3798MV200 恩兔N2 NS-1 (二): HiNAS海纳思使用和修改
  • Hi3798MV200 恩兔N2 NS-1 (三): 制作 Ubuntu rootfs
  • Hi3798MV200 恩兔N2 NS-1 (四): 制作 Debian rootfs

关于

海纳思全称是海思机顶盒NAS系统, 网站 https://www.ecoo.top/ 看起来和海思没什么关系, 应该是一个纯民间的社区. 他们做的固件在 N2 NS-1 上应该是集成度做的最好的一个, 包含的功能很丰富, 除了常见的 Aria2, Transmission, Samba, 还集成了命令行, 网盘和笔记等. 适合想直接刷机使用, 不喜欢折腾的用户.

界面

外网

内网

刷机说明

  • HiNAS 固件下载: https://dl.ecoo.top
  • 参考前一篇刷机部分的介绍, 以及 https://www.ecoo.top/hitool.html

使用部分

  • 盒子上电, 接网线后, 通过DHCP获得IP, 此时可以通过 SSH 登录, 默认账户为 root / ecoo1234
  • 用浏览器访问盒子所在 IP, 会有使用说明和各个功能入口
  • 加硬盘后上电, 系统会字段挂载硬盘到 /mnt/sda1 分区

如果加硬盘后未能自带挂载, 通过 dmesg 命令查看日志排查问题.

定制部分

删除web界面的浮窗

有个学开发linux的浮窗比较烦人

编辑 /var/www/html/index.html 找到并删除

<div class="adleft">
<button onclick="">关闭</button>
<a href="https://www.ecoo.top/gonggao.html" target="_blank"><img src="https://www.ecoo.top/hongbao.jpg" width="141px" height="203px" border="1" /></a>
</div>

修改欢迎界面

欢迎界面会清除系统自带的登录输出, 如果想将其融合到系统自带的登录输出中, 可以做如下修改

删除 /etc/profile.d/ 下面的两个文件

在 /etc/update-motd.d/ 目录下, 创建文件 60-welcome, 并将其 chmod +x 设置为可执行

文件内容如下, 如果不合适可以自己改

#!/bin/sh
#
IP=$(ifconfig eth0 | grep '\<inet\>'| grep -v '127.0.0.1' | awk '{print $2}' | awk 'NR==1')
DEVICE=$(dmesg 2> /dev/null | grep "CPU: hi3798" | awk -F ':[ ]' '/CPU/{printf ($2)}')
[ ! "$DEVICE" ] && DEVICE=$(head -n 1 /etc/regname 2> /null)
mac_now=$(ifconfig eth0 |grep "ether"| awk '{print $2}')
echo "\e[33m__  ____                __       / / / / /_  __  ______  / /___  __/ / / / __ \/ / / / __ \/ __/ / / // /_/ / /_/ / /_/ / / / / /_/ /_/ / \____/_.___/\__,_/_/ /_/\__/\__,_/ 
\e[0mBoard   : ${DEVICE}Module  : $(egrep -oa "hi3798.+reg" /dev/mmcblk0p1| cut -d '_' -f1 | sort | uniq | tr "\\n" ",")CPU     : $(cat -v /proc/device-tree/compatible |sed 's/\^@//g') @$(cat /proc/cpuinfo | grep "processor" | sort | uniq | wc -l) Cores | $(uname -p)Version : $(awk -F '[= "]' '/PRETTY_NAME/{print $3,$4,$5}' /etc/os-release) | V$(cat /etc/nasversion)-$(uname -r)-$(getconf LONG_BIT)Storage : $(df -m / | grep -v File | awk '{a=$4*100/$2;b=$4} {printf("%.1f%s %.1fM\n",a,"%",b)}')Memory  : $(free -m | grep Mem | awk '{a=$7*100/$2;b=$7} {printf("%.1f%s %.1fM\n",a,"%",b)}') | Swap:$(free -m | grep Swap | awk '{a=$4*100/$2;b=$4} {printf("%.1f%s %.1fM\n",a,"%",b)}')StartAt : $(awk '{a=$1/86400;b=($1%86400)/3600;c=($1%3600)/60;d=($1%60)} {printf("%d Day %d Hour %d Minute %d Second\n",a,b,c,d)}' /proc/uptime)IP Addr : $IPTemper. : $(grep Tsensor /proc/msp/pm_cpu | awk '{print $4}')°CMAC Add : $mac_now
"alias reload='. /etc/profile'
alias cls='clear'
alias syslog='cat /var/log/syslog'
alias unmount='umount -l'
alias reg="egrep -oa 'hi3798.+' /dev/mmcblk0p1 | awk '{print $1}'"

删除,禁用 swap

在这个小设备上开启swap意义不大, 即使在内存溢出的情况, 也不希望增加eMMC的写入.

编辑 /etc/init.d/system-init.sh
删除或注释掉以下内容

if [ ! -f /swapfile ]
then
{dd if=/dev/zero of=/swapfile bs=1M count=512chmod 600 /swapfilemkswap /swapfileswapon /swapfile
} &
fi
grep -q '/swapfile' /etc/fstab || echo "/swapfile swap swap defaults,nofail 0 0" >> /etc/fstab

编辑 /etc/fstab
删除以下内容

/swapfile swap swap defaults,nofail 0 0

关闭swap

swapoff -a

删除swap文件

rm /swapfile

配置 Aria2

假设硬盘已经挂载到 /mnt/sda1, 所以在配置中, 将路径都配置到 /mnt/sda1 下

修改配置文件 /usr/local/aria2/aria2.conf

dir=/mnt/sda1/downloads
disk-cache=16Minput-file=/mnt/sda1/usr/aria2/aria2.session
save-session=/mnt/sda1/usr/aria2/aria2.sessiondht-file-path=/mnt/sda1/usr/aria2/dht.dat
dht-file-path6=/mnt/sda1/usr/aria2/dht6.dat

需要手动创建一个空文件 /mnt/sda1/usr/aria2/aria2.session, 否则 aria2 会启动失败.

重启 aria2 使其生效

配置 Transmission

配置文件在 /etc/transmission-daemon/settings.json

将下载目录修改为硬盘下的目录

"download-dir": "/mnt/sda1/transmission-downloads",

启用 incomplete 目录

"incomplete-dir": "/mnt/sda1/tmp",
"incomplete-dir-enabled": true,

修改前必须停止 transmission, 否则修改不会生效, 在transmission退出时会被原配置覆盖.

配置 Samba

配置文件在 /etc/samba/smb.conf

增加一个只读的 public 目录, 设为硬盘所在路径, 用于局域网内共享

[public]comment = public anonymous accesspath = /mnt/sda1/browsable =yescreate mask = 0600directory mask = 0700writable = noguest ok = yes

遇到的问题

散热

如果长时间运行, 放底座上竖起来, 如果没有底座, 带条码这面尽量朝上放.

这个盒子设计时, 是假设直立放置在底座上工作的, 所以散热安排在其中带条码标签那面的盖板上, CPU的热量直接传到盖板上的一块金属散热片, 再通过盖板散发出去. 但是实际的使用环境, 很可能就是一个狭小的空间, 并不太可能都有底座. 这时候条码那面如果朝下, 就会导致没法散热. 如果上面还放了硬盘, 就会热上加热. 所以带条码标签的那边不要朝下放置, 除非下方是金属面, 散热很好.

盒子供电能力不足

这是没有意料到的一点. 这个盒子不是所有的2.5寸硬盘都能带起来.

2.5寸SATA机械盘HDD的电流要求一般为0.5A, 盒子带动机械盘没什么问题. 但是对于电流要求在 0.9A 以上的 SSD 固态, 就可能会有问题. 经过测试, 可以带动所有 320G 以下的硬盘, 大部分 500GB 以下的固态, 对于 1TB 以上的固态就不一定, 尤其是电流要求为 1.7A 的镁光系列SSD固态, 无法识别, 无法初始化, 或者即使能初始化, 在读写过程中也很可能报错重置. 测试过的 闪迪ECO 1.92T 可以识别, 工作不稳定, 镁光1100 2T 不识别.

系统负载一直为7.x

这个是内核的问题, 内核中一直存在多个 HI_ 开头的进程, 怀疑与多媒体编解码以及加解密有关. 尚未找到关闭的方法.

相关文章:

Hi3798MV200 恩兔N2 NS-1 (二): HiNAS海纳思使用和修改

目录 Hi3798MV200 恩兔N2 NS-1 (一): 设备介绍和刷机说明Hi3798MV200 恩兔N2 NS-1 (二): HiNAS海纳思使用和修改Hi3798MV200 恩兔N2 NS-1 (三): 制作 Ubuntu rootfsHi3798MV200 恩兔N2 NS-1 (四): 制作 Debian rootfs 关于 海纳思全称是海思机顶盒NAS系统, 网站 https://www…...

无涯教程-Perl - foreach 语句函数

foreach 循环遍历列表值&#xff0c;并将控制变量(var)依次设置为列表的每个元素- foreach - 语法 Perl编程语言中的 foreach 循环的语法是- foreach var (list) { ... } foreach - 流程图 foreach - 示例 #!/usr/local/bin/perllist(2, 20, 30, 40, 50);# foreach loop ex…...

easyWechat 5.x 复写代码 获取企业微信授权用户敏感信息

复写 (new SocialiteManager($config))->extend(wework, function ($config) {return new \App\Extend\EasyWechat\Work\WeWork($config);});创建的 \App\Extend\EasyWechat\Work\WeWork是我们需要复写的类 <?phpnamespace App\Extend\EasyWechat\Work;use Overtrue\So…...

医疗器械研发中的可用性工程实践(一)

致读者&#xff1a;以前看《楚门的世界》&#xff0c;《蝴蝶效应》&#xff0c;《肖申克的救赎》&#xff0c;《教父》&#xff0c;《横道世之介》&#xff0c;《老友记》&#xff0c;一个人的一生匆匆。作为平凡人就是历史大河中的浪花&#xff0c;顺势而为&#xff0c;起起伏…...

LNMP搭建

LNMP&#xff1a;目前成熟的企业网站的应用模式之一&#xff0c;指的是一套协同工作的系统和相关软件 能够提供静态页面服务&#xff0c;也可以提供动态web服务。 这是一个缩写 L linux系统&#xff0c;操作系统。 N nginx网站服务&#xff0c;也可也理解为前端&#xff0c…...

软件测试分类总结

目录 1.根据源代码可见度划分 1.1黑盒测试 1.2白盒测试 1.3灰盒测试 2.根据开发阶段划分 2.1单元测试 2.2集成测试 2.3系统测试 2.4验收测试 3.按照实施组织划分 3.1α测试 3.2β测试 3.3第三方测试 4.按照是否运行程序划分 4.1静态测试 4.2动态测试 5.根据软件测试工作的…...

模糊PID(三角隶属度函数模糊化CODESYS ST代码)

三角隶属度函数的详细算法介绍,之前的专栏有详细介绍,这里不再展开讨论。相关文章链接如下: 博途三角隶属度函数FC 博途PLC模糊PID三角隶属度函数指令(含Matlab仿真)_博图模糊pid控制_RXXW_Dor的博客-CSDN博客三角隶属度函数FC,我们采用兼容C99标准的函数返回值写法,在…...

探索人工智能 | 计算机视觉 让计算机打开新灵之窗

前言 计算机视觉是一门研究如何使机器“看”的科学&#xff0c;更进一步的说&#xff0c;就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉&#xff0c;并进一步做图形处理&#xff0c;使电脑处理成为更适合人眼观察或传送给仪器检测的图像。 文章目录 前言…...

7.物联网操作系统互斥信号量

1.使用互斥信号量解决信号量导致的优先级反转&#xff0c; 2.使用递归互斥信号量解决互斥信号量导致的死锁。 3.高优先级主函数中多次使用同一信号量的使用&#xff0c;使用递归互斥信号量&#xff0c;但要注意每个信号量的使用要对应一个释放 优先级翻转问题 优先级翻转功能需…...

Vue - Element el-form 表单对象多层嵌套校验

针对el-form的数据源是对象嵌套对象&#xff0c;在进行数据绑定和校验时和单层的对象有一点区别&#xff0c; 具体是下面两部分&#xff1a; 数据源&#xff1a; fromData: {name: ,health: {height: } }1、 给 el-form-item 的 prop设为&#xff1a;prop"health.height&…...

elementUI全屏loading的使用(白屏的解决方案)

官网中有使用方法&#xff0c;但是我实际上手之后会出现白屏&#xff0c;解决办法如下&#xff1a; <el-button type"text" size"small" click"delRow(scope)"> 删除</el-button>loading: false, // loading 动画loadingInstance…...

flutter开发实战-flutter_spinkit实现多种风格进度指示器

flutter开发实战-flutter_spinkit实现多种风格进度指示器 最近开发过程中flutter_spinkit&#xff0c;这个拥有多种种风格加载指示器 一、flutter_spinkit 引入flutter_spinkit # 多种风格的模糊进度指示器flutter_spinkit: ^5.1.0效果示例 const spinkit SpinKitRotatingC…...

检测文本是否由AI生成,GPT、文心一言等均能被检测

背景 目前很多机构推出了ChatGPT等AI文本检测工具&#xff0c;但是准确率主打一个模棱两可&#xff0c;基本和抛硬币没啥区别。 先说结论&#xff0c;我们对比了常见的几款AI检测工具&#xff0c;copyleaks检测相比较而言最准确。 检测文本 AI文本片段1 来源&#xff1a;G…...

【3D机甲】捏造型功能

文章目录 1. 模型选择2. 变形和调整3. 材质和纹理4. 部件修改5. 关节和动作6. 物理模拟 3D机甲捏造型功能通常包括以下小功能&#xff1a; 模型选择&#xff1a;通过从库中选择机甲模型或导入自定义模型来开始设计。 变形和调整&#xff1a;调整机甲的大小、比例、旋转和位置&…...

设计模式之五:单例模式

有些对象只需要有一个&#xff0c;比如线程池、缓存和注册表等。 对比全局变量&#xff0c;其需要在程序开始就创建好对象&#xff0c;如果这个对象比较耗资源&#xff0c;而在后面的执行过程中又一直没有用到&#xff0c;就造成了浪费。 class Singleton {private:static Si…...

MATLAB的设置路径

在主页下的 或者在命令行输入path&#xff0c;命令行会出现所有路径 必须要将某些函数.m文件以及一些类文件包含在路径当中&#xff0c;否则在脚本代码中输入代码时&#xff0c;不会有代码提示...

Hyperledger Fabric 使用 CouchDB 和复杂智能合约开发

前言 在上个实验中&#xff0c;我们已经实现了简单智能合约实现及客户端开发&#xff0c;但该实验中智能合约只有基础的增删改查功能&#xff0c;且其中的数据管理功能与传统 MySQL 比相差甚远。本文将在前面实验的基础上&#xff0c;将 Hyperledger Fabric 的默认数据库支持 …...

这应该是最全的,Fiddler手机App抓包详解,看完还不会来找我...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 什么是抓包&#…...

使用ubuntu-base制作根文件系统

1&#xff1a;ubuntu官网下载最小根文件系统&#xff1a; 放置到电脑的ubuntu中&#xff0c; Mkdir Ubuntu_rootfs Cd Ubuntu_rootfs Sudo tar –zxvf Ubuntu-bash-xxxxxx.tar.gz 2&#xff1a;电脑的ubuntu安装qemu搭建arm模拟系统 将/usr/bin/qemu-arm-static/(64位拷贝…...

springboot-mybatis的分页查询的接口

一、安装依赖 <dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.4.6</version> </dependency> 二、代码定义 分页对象类 Data AllArgsConstruct…...

深入解析Paddle GPU版本Segmentation fault报错及环境变量配置方案

1. 为什么Paddle GPU版本会突然报Segmentation fault&#xff1f; 最近在Linux系统上部署PaddlePaddle GPU版本时&#xff0c;不少开发者都遇到了一个让人头疼的问题——程序运行到一半突然崩溃&#xff0c;终端只留下一行冷冰冰的"Segmentation fault (core dumped)"…...

实战演练:基于快马平台与zeroclaw理念构建高性能个人博客系统

最近在尝试用zeroclaw理念重构个人博客系统&#xff0c;发现这种极简高效的设计思路确实能大幅提升开发效率和运行性能。今天就来分享下基于InsCode(快马)平台实现的完整实战过程。 项目架构设计 zeroclaw的核心是"零冗余"&#xff0c;所以在设计阶段就做了严格的功能…...

中小卖家最怕买“大而全”,真正需要的是“刚刚好”的自动化方案

很多中小卖家一听到“AI自动化”“全链路智能体”这些词&#xff0c; 心里会先紧张一下。 不是不感兴趣&#xff0c; 而是怕另一个问题&#xff1a; 看起来很强&#xff0c;但太大了&#xff1b; 功能很多&#xff0c;但太重了&#xff1b; 概念很全&#xff0c;但不一定适合自…...

PicoClaw:10美元硬件上的AI革命,让Mac mini瞬间不香了!

PicoClaw&#xff1a;10美元硬件上的AI革命&#xff0c;让Mac mini瞬间不香了&#xff01;一只皮皮虾搅动了整个AI助手江湖&#xff0c;95%代码由AI自主生成&#xff0c;在不到10MB内存中跑出完整智能体能力。最近&#xff0c;GitHub上有个项目像火箭般蹿升——PicoClaw&#x…...

BilibiliDown高效视频下载指南:全面掌握B站视频离线解决方案

BilibiliDown高效视频下载指南&#xff1a;全面掌握B站视频离线解决方案 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader &#x1f633; 项目地址: https://gitcode.com/gh_mir…...

公开信息整理|2026年3月12日:公积金改革、儿童友好建设、存款利率进入“1时代”与科技突破速览

&#x1f525;个人主页&#xff1a;杨利杰YJlio❄️个人专栏&#xff1a;《Sysinternals实战教程》《Windows PowerShell 实战》《WINDOWS教程》《IOS教程》《微信助手》《锤子助手》 《Python》 《Kali Linux》 《那些年未解决的Windows疑难杂症》&#x1f31f; 让复杂的事情更…...

2025届最火的六大降重复率助手推荐

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 能降低AIGC检测率的关键之处在于模拟人类写作所具备的自然性以及逻辑跳跃。其一&#xff0c;…...

面向商业航天的高可靠电机控制系统:从环境约束到芯片实现

摘要商业航天已成为全球航天产业高质量发展的核心增长极&#xff0c;电机控制系统作为运载火箭、卫星平台、空间载荷与在轨服务装备的关键执行机构&#xff0c;其在轨可靠性、控制精度与环境适应性直接决定航天任务成败。本文系统梳理商业航天电机控制领域的技术演进、典型负载…...

多组学联合分析揭示转录因子调控网络:ATAC-seq与RNA-seq的协同应用

1. 多组学联合分析的技术基础 在基因组学研究领域&#xff0c;ATAC-seq和RNA-seq已经成为揭示基因调控网络的两大核心技术。ATAC-seq全称是转座酶可及性染色质测序&#xff0c;它能够精准定位基因组中开放的染色质区域。想象一下&#xff0c;DNA就像一条紧密缠绕的毛线&#xf…...

凸优化问题中严格凸函数与最优解唯一性的关系

1. 为什么我们需要严格凸函数&#xff1f; 在优化问题中&#xff0c;我们常常会遇到多个局部最优解的情况&#xff0c;这就像在山地徒步时发现多个山谷&#xff0c;每个山谷看起来都很深&#xff0c;但只有一个是真正的最低点。严格凸函数就像是一个设计精良的漏斗&#xff0c…...