使用ruri快速构建跨架构chroot容器

简介: 【7月更文挑战第3天】使用ruri在x86_64系统上构建arm64 Ubuntu容器的简要步骤:1. 确认binfmt_misc支持,检查/proc/filesystems。2. 安装qemu-user-static以模拟arm64指令。3. 通过rootfstool脚本获取arm64的Ubuntu rootfs。4. 下载最新版的ruri二进制文件。5. 解压rootfs,将qemu-aarch64-static复制进去,用ruri启动容器。6. 在容器内配置DNS(如设置resolv.conf)。注意:需以root权限运行ruri,并根据系统环境调整步骤。

以下是使用 ruri 快速构建跨架构 chroot 容器的步骤,这里以在 x86_64 系统下运行 arm64 的 ubuntu 容器为例:

  1. 确认 binfmt_misc 支持:

plaintext

复制

cat /proc/filesystems | grep binfmt_misc


确保能看见 binfmt_misc 的输出,大多系统甚至安卓的 gki 内核应该都是支持的。


  1. 安装 qemu-user-static:

plaintext

复制

sudo apt install qemu-user-static


  1. 获取 rootfs:使用作者编写的 rootfstool 脚本

plaintext

复制

git clone https://github.com/moe-hacker/rootfstool
    cd rootfstool
  ./rootfstooldownload --mirror bfsu --distro ubuntu --version noble --arch arm64


这将得到 rootfs.tar.xz。


  1. 获取 ruri 二进制:前往 https://github.com/moe-hacker/ruri/releases ,下载最新的 ruri-x86_64

plaintext

复制

wget https://github.com/moe-hacker/ruri/releases/download/v3.3/ruri-x86_64
    chmod 777 ruri-x86_64


  1. 解压 rootfs 并启动:

plaintext

复制

mkdir ubuntu-arm64
    tar -xvf /path/to/rootfs.tar.xz -c ubuntu-arm64
    cp /usr/bin/qemu-aarch64-static ubuntu-arm64/
    sudo./ruri-x86_64 -a aarch64 -q qemu-aarch64-static./ubuntu-arm64/


  1. 配置容器 dns(在容器中执行):

plaintext

复制

rm /etc/resolv.conf
    echo "nameserver 114.114.114.114" >/etc/resolv.conf


请注意,ruri 应该始终以 root 权限执行(使用 sudo),并且不要为其设置 suid 或任何其他权限!同时,使用 ruri 或任何类似工具构建容器时,要谨慎操作并确保了解其潜在影响和风险。此外,不同的系统环境可能会有一些细微的差异,上述步骤可能需要根据实际情况进行适当调整。

相关文章
|
3天前
|
JSON JavaScript 前端开发
Vue3源码架构简析及Monorepo流程构建
【10月更文挑战第12天】Vue3源码架构简析及Monorepo流程构建
Vue3源码架构简析及Monorepo流程构建
|
3天前
|
缓存 Devops jenkins
专家视角:构建可维护的测试架构与持续集成
【10月更文挑战第14天】在现代软件开发过程中,构建一个可维护且易于扩展的测试架构对于确保产品质量至关重要。本文将探讨如何设计这样的测试架构,并将单元测试无缝地融入持续集成(CI)流程之中。我们将讨论最佳实践、自动化测试部署、性能优化技巧以及如何管理和扩展日益增长的测试套件规模。
18 3
|
3天前
|
监控 持续交付 API
深入理解微服务架构:构建高效、可扩展的系统
【10月更文挑战第14天】深入理解微服务架构:构建高效、可扩展的系统
21 0
|
5天前
|
存储 人工智能 算法
精通RAG架构:从0到1,基于LLM+RAG构建生产级企业知识库
为了帮助更多人掌握大模型技术,尼恩和他的团队编写了《LLM大模型学习圣经》系列文档,包括《从0到1吃透Transformer技术底座》、《从0到1精通RAG架构,基于LLM+RAG构建生产级企业知识库》和《从0到1吃透大模型的顶级架构》。这些文档不仅系统地讲解了大模型的核心技术,还提供了实战案例和配套视频,帮助读者快速上手。
精通RAG架构:从0到1,基于LLM+RAG构建生产级企业知识库
|
4天前
|
存储 监控 前端开发
掌握微前端架构:构建未来前端应用的基石
【10月更文挑战第12天】随着前端技术的发展,传统的单体应用架构已无法满足现代应用的需求。微前端架构通过将大型应用拆分为独立的小模块,提供了更高的灵活性、可维护性和快速迭代能力。本文介绍了微前端架构的概念、核心优势及实施步骤,并探讨了其在复杂应用中的应用及实战技巧。
|
6天前
|
存储 监控 负载均衡
|
8天前
|
存储 SQL 分布式计算
湖仓一体架构深度解析:构建企业级数据管理与分析的新基石
【10月更文挑战第7天】湖仓一体架构深度解析:构建企业级数据管理与分析的新基石
12 1
|
3天前
|
运维 Kubernetes 监控
掌握Docker容器化技术:构建、部署与管理的高效实践
【10月更文挑战第14天】掌握Docker容器化技术:构建、部署与管理的高效实践
12 0
|
6天前
|
机器学习/深度学习 存储 自然语言处理
基础与构建:GraphRAG架构解析及其在知识图谱中的应用
【10月更文挑战第11天】随着数据的不断增长和复杂化,传统的信息检索和生成方法面临着越来越多的挑战。特别是在处理结构化和半结构化数据时,如何高效地提取、理解和生成内容变得尤为重要。近年来,一种名为Graph Retrieval-Augmented Generation (GraphRAG) 的新架构被提出,它结合了图神经网络(GNNs)和预训练语言模型,以提高多模态数据的理解和生成能力。本文将深入探讨GraphRAG的基础原理、架构设计,并通过实际代码示例展示其在知识图谱中的应用。
25 0
|
6天前
|
缓存 安全 测试技术
构建高效后端架构的关键技术与实践
【10月更文挑战第11天】 本文深入探讨了后端开发中的几个关键技术点,包括微服务架构、数据库优化、缓存机制、安全性保障以及自动化测试。通过这些技术的应用和最佳实践,可以帮助开发者构建出高效、稳定、安全的后端系统。
22 0