加入收藏 | 设为首页 | 会员中心 | 我要投稿 孝感站长网 (https://www.0712zz.com.cn/)- 运营、云管理、管理运维、云计算、大数据!
当前位置: 首页 > 站长资讯 > 动态 > 正文

创建基于树莓派的家庭实验室

发布时间:2021-02-22 16:44:34 所属栏目:动态 来源:互联网
导读:你需要的所有信息都可在上面的输出中获得。第 3 行表示扇区大小(包括逻辑和物理的):512 字节 / 512 字节。 设备列表显示的是原始磁盘镜像中的分区。第一个, Fedora-Server-armhfp-X-y.z-sda.raw1 毫无疑问是引导程序分区,因为它是第一个,很小(仅仅 76

你需要的所有信息都可在上面的输出中获得。第 3 行表示扇区大小(包括逻辑和物理的):512 字节 / 512 字节。

设备列表显示的是原始磁盘镜像中的分区。第一个,Fedora-Server-armhfp-X-y.z-sda.raw1 毫无疑问是引导程序分区,因为它是第一个,很小(仅仅 76MB),而且类型被标识为 c,即 W95 FAT32(LBA),这是一个从 SD 卡启动的 FAT32 分区。

第二个分区也不是非常大,只有 488MB。这个分区是一个 Linux 原生类型分区(Id 83),它可能是包含内核

直接在磁盘镜像中作业

在磁盘镜像被解压缩和被挂载到宿主机上的一个位置后,就可以修改镜像以符合你的需求。在我看来,对镜像进行更改的最简单的方法是使用 chroot 来将你会话的工作根目录更改为挂载镜像的工作根目录。不过,有点棘手。

在你改变了根目录后,你的会话将使用新的根目录下的二进制文件。除非你是在一个 ARM 系统做这些所有的操作,否则解压缩后的磁盘镜像的架构将与你正在使用的宿主机系统不同。即使在 chroot 环境中,宿主机系统也无法使用一个不同架构的二进制文件。至少,不能在本机使用。

幸运的是,这里有一个解决方案:qemu-user-static。来自 明:

“[qemu-user-static] 提供了用户模式的仿真二进制文件,是静态构建的。在这个模式中,QEMU 可以在一个 CPU 上启动为另一个 CPU 编译的 Linux 进程 …… 如果安装了 binfmt-support 软件包,qemu-user-static 软件包会注册提供的仿真器可以处理的二进制文件格式,以便其能够直接运行其他架构的二进制文件。”

这正是你需要在 chroot 环境中非本地架构中工作所需的。如果宿主机系统是 Fedora,使用 DNF 来安装 qemu-user-static 软件包,并重新启动 systemd-binfmt.service:inux 启动分区。

第三个分区可能是你需要的东西:它有 2.3GB 大小,所以在它其中应该有发行版的主要部分,并且它是一个 Linux 原生分区类型,这也是在预料之中的。这个分区应该包含了你需要修改的分区和数据。

第三个分区从扇区 1163264 开始(在 fdisk 的输出中被显示为 Start 列),所以你的挂载偏移量是 595591168,计算方法是将扇区大小(512)乘以起始扇区(1163264)(即 512 * 1163264)。这意味着你需要以偏移量 595591168 挂载该文件,才能挂载到正确位置。

装备了这些信息,现在你可以将第三个分区挂载到你的家目录中了:



 

(编辑:孝感站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读