Openwrt(IstoreOS)安装iventoy

背景

目前家里有两台不用的旧主机,平时没事在家里折腾这两台机器。经常换装各种系统。最早是将镜像刷入u盘作为启动盘,这样需要重复装系统就特别麻烦。后来用了ventoy以后一个U盘可以放多个系统镜像,还能做口袋系统(SystemToGo)。最近看到ventoy的作者发布了iventoy提供了一种简单易用的网络启动的方法,就想着在家里的网关上安装iventoy作为PEX服务器。以后重装系统,进PE都不需要U盘了。

尝试按官网方式安装(失败了)

  1. 下载官网tar包

  2. 解压

  3. 运行启动脚本

存在问题:

openwrt基于busybox,存在以下问题

  1. 其内部命令相比debian、RHL等发行版要精简很多,导致脚本(iventoy.sh)无法运行(可修改启动脚本解决)

  1. 缺少相关类库,导致二进制文件(lib/iventoy)也无法执行

错误:lib/iventoy not found,但是明明是有这个文件的,通过搜索引擎检索发现这种问题可以通过ldd命令去调试

如上图,通过ldd lib/iventoy可以发现报了很多错,通过各种搜索发现问题都指向没有类库glibc,而openwrt使用的是muslc,而安装glibc非常麻烦,并且也不建议这么做,因为openwrt本来就是为嵌入式设备设计的,加了会导致系统变大。

到这里就失败了,然后就想到了能否做成Docker镜像来运行,首先就是到hub.docker.com和github上去搜索是否有现成的镜像,结果来真有,详细步骤参考后文。

使用docker镜像安装(成功了)

推荐镜像:ziggyds/iventoy,该作者的镜像通过Github Actions自动更新

参考 docker-compose.yml

version: '3.9'
services:iventoy:image: ziggyds/iventoy:latestcontainer_name: iventoyrestart: alwaysprivileged: true #must be truenetwork_mode: hostvolumes:- /data/sda/packages/SystemImages:/app/iso- ./config:/app/data- ./logs:/app/logenvironment:- AUTO_START_PXE=true # optional, true by default

启动:docker compose up -d

这里直接启动会遇到问题,因为我们把data目录映射到了容器外面,如果不映射那么配置会随着容器的销毁而销毁,因此我们需要把单独下载的linux安装包对应文件拷贝到映射配置目录即可。

也可以通过docker命令来实现

# 先移除容器
docker compose down
# 复制容器data目录的文件到你映射的配置目录
docker cp iventoy:/app/data ./config
# 重新启动
docker compose up -d

使用外部dhcp-服务器(网关的DHCP)

我的openwrt系统是网关也是nas,本机已经存在一个hdcp服务器了,所以参考官方文档配置外部dhcp服务器即可。

  1. 登录iventoy控制台,在【参数配置】中设置【DHCP 服务器模式】为External

  2. 在openwrt中配置PXE启动选项

对比ventoy

根据我的实际使用经验来看,iventoy不能替代ventoy,原因主要有以下两点

  1. 不支持SystemToGo,无盘系统启动好像也不行(没有足够资料供我研究)

  2. 不是所有的镜像都支持网络启动。目前感觉是只有支持legacy模式的镜像才能通过iventoy启动,另外WIMBOOT也不支持

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

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

相关文章

红队攻击手“实战”特训

伴随着新的一年的到来,我们最新一期的红队攻防,也如约而至~ 每一期我们都会做二次学员反馈,根据同学们的真实反馈和需求,来调整讲师及授课内容 新的一期我们增加了C基础,python基础,汇编基础的课程&#…

4.1k star,官方出品的redis桌面管理工具——redislnsight

导航 令人抓狂的大key加载RedisInsight 简介RedisInsight的亮点GitHub 地址安装和使用RedisInsight 下载安装 使用RedisInsight redis数据库可视化直观的CLI(Command-Line Interface)日志分析和命令分析 结语参考 令人抓狂的大key加载 工欲善其事必先利…

深入理解SpringCloud之Zuul

引言 在微服务里,系统通常被拆分成许多小的、独立的服务,每个服务都有自己的职责和生命周期。但这么多服务怎么协同工作呢?这就需要一个交通警察来指挥交通,确保数据能安全、高效地流动。在Spring Cloud生态系统中,这…

gemini 试用(python)

1. 非stream方式(requests) import os import json import requestsdef test_gemini_no_stream(apikey, text):url fhttps://generativelanguage.googleapis.com/v1beta/models/gemini-pro:generateContent?key{apikey}headers {Content-Type: appli…

BUUCTF--极客大挑战php

文章目录 1.网站备份文件www.zip2.下载后发现class.phpindex.phpflag.php 3.分析php代码绕过__wakeup方法变量权限为私有或保护python方法url方法 1.网站备份文件www.zip 2.下载后发现 class.php <?php include flag.php; error_reporting(0);class Name{private $usernam…

创邻科技获评环紫金港创新生态圈智源创新企业

3月1日&#xff0c;由杭州城西科创大走廊管理委员会指导&#xff0c;中共杭州市西湖区委员会、西湖区人民政府主办的“环紫金港创新生态圈”行动推进大会暨2024年紫金港科技城经济高质量发展大会在杭州举办。凭借重要的生态位置和创新业务成果&#xff0c;创邻科技受邀参会并被…

java-springboot 源码 01

01.springboot 是一个启动器 先安装maven&#xff0c;按照网上的流程来。主要是安装完成后&#xff0c;要修改conf目录下的setting.xml文件。 添加&#xff1a;阿里云镜像 <mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>ali…

【vue3之Pinia:状态管理工具】

Pinia:状态管理工具 一、认识Pinia二、定义store三、gettters四、Action1.定义普通函数2.异步实现 五、storeToRefs工具函数六、pinia持久化插件1. 安装插件2. main.js 使用3. 开启4.其他配置 一、认识Pinia Pinia 是 Vue 的最新 状态管理工具 &#xff0c;是 Vuex 的 替代品 …

OpenCV 视频处理(关于摄像头和视频文件的读取、显示、保存等等)

1、前言 OpenCV不仅能够处理图像&#xff0c;还能够处理视频 视频是由大量的图像构成的&#xff0c;这些图像是以固定的时间间隔从视频中获取的。这样&#xff0c;就能够使用图像处理的方法对这些图像进行处理&#xff0c;进而达到处理视频的目的。要想处理视频&#xff0c;需…

PCL官方demo的编译使用教程

写在前面 本文内容 PCL官方demo的编译使用教程&#xff1b; 后续对PCL demo中比较常用的算法、应用demo会出专门的博客讲解、拓展&#xff1b; 更多点云基础、算法相关内容请关注专栏&#xff1a; 点云处理基础 点云配准(PointCloud Registration) Open3D点云处理 PCL点云处理 …

Docker本地部署Redis容器结合内网穿透实现无公网ip远程连接

文章目录 前言1. 安装Docker步骤2. 使用docker拉取redis镜像3. 启动redis容器4. 本地连接测试4.1 安装redis图形化界面工具4.2 使用RDM连接测试 5. 公网远程访问本地redis5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定TCP地址远程访问 前言 本文主要介绍如何在Ub…

Python与FPGA——局部二值化

文章目录 前言一、局部二值化二、Python局部二值化三、FPGA局部二值化总结 前言 局部二值化较全局二值化难&#xff0c;我们将在此实现Python与FPGA的局部二值化处理。 一、局部二值化 局部二值化就是使用一个窗口&#xff0c;在图像上进行扫描&#xff0c;每扫出9个像素求平均…

探索AI视频创新:Sora的奇迹

探索AI视频创新&#xff1a;Sora的奇迹 随着科技的不断演进&#xff0c;AI视频模型已经成为人工智能领域的一颗新星。在这场技术的风暴中&#xff0c;OpenAI的Sora模型以其杰出的性能和前瞻性的技术脱颖而出&#xff0c;正引领着AI视频领域的全新创新浪潮。 Sora的技术之光 …

【深度学习笔记】优化算法——小批量随机梯度下降

小批量随机梯度下降 到目前为止&#xff0c;我们在基于梯度的学习方法中遇到了两个极端情况&#xff1a; :numref:sec_gd中使用完整数据集来计算梯度并更新参数&#xff0c; :numref:sec_sgd中一次处理一个训练样本来取得进展。 二者各有利弊&#xff1a;每当数据非常相似时&a…

电脑蓝牙在哪里打开?不同系统详解

在现代计算机的多功能性中&#xff0c;蓝牙技术的广泛应用使得我们能够轻松连接各种外部设备&#xff0c;实现无线传输和分享。无论是连接无线耳机、键盘&#xff0c;还是与其他设备快速交换文件&#xff0c;蓝牙在电脑中的角色很重要。然而&#xff0c;对于一些用户而言&#…

centos7 使用rpm包部署filebeat

先决条件参考 虚拟机部署elasticsearch集群-CSDN博客 下载并安装filebeat的rpm包 curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.17.18-x86_64.rpmrpm -vi filebeat-7.17.18-x86_64.rpm 修改配置文件 配置文件内容可以参考 Repositories…

5G工业网关是什么?

随着科技的飞速发展&#xff0c;5G技术已经逐渐渗透到我们生活的方方面面。而在工业领域&#xff0c;5G工业网关作为连接工业设备与网络的关键组件&#xff0c;正发挥着越来越重要的作用。HiWoo Box其5G工业网关产品以其卓越的性能和稳定性&#xff0c;正助力企业实现数字化转型…

【异常处理】Vue报错 Component template should contain exactly one root element.

问题描述 启动VUE项目后控制台报错&#xff1a; Component template should contain exactly one root element. If you are using v-if on multiple elements, use v-else-if to chain them instead.翻译为&#xff1a;组件模板应该只包含一个根元素 查看vue代码&#xff0…

【Redis】Redis的应用场景

&#x1f4dd;个人主页&#xff1a;五敷有你 &#x1f525;系列专栏&#xff1a;Redis ⛺️稳中求进&#xff0c;晒太阳 Redis的应用场景&#xff1a; 限流 要求10s内只能访问一次 RequestMapping("xian")public String xianLiu(String sign){String sign1 …

前端处理接口直接返回的图片

有时候接口会直接返回图片而不是连接&#xff0c;前端需要处理后才能使用。 首先你可能需要设置responseType: blob’处理响应数据格式。 直接使用 将接口及参数动态拼接成img.src直接使用 <img src"http://test.com/api/img?size50x50" alt"">i…