首页 > 作文

波兰极客用一张软盘运行Linux系统:用的还是最新内核

更新时间:2023-04-05 04:26:34 阅读: 评论:0

用软盘启动linux系统曾经很“家常便饭”,当然那都是90-00年代的事了。

有年纪(bushi)的同学可能熟悉。

但现在,即使你还有一张能用的3.5英寸软盘,可1.44mb的容量远远装不下一个现代linux内核,更不用说还得加上所有支持软件了。

但奇人有招,波兰一位游戏开发小哥只用一张软盘就把现代linux操作系统嵌进去了!

盘上还有几百kib的剩余空间!而且用的都是最新“组件”,包括今年5.16号才发布的5.13.0-rc2版本的linux内核。

一张软盘装下现代linux系统

小哥把这个系统命名为floppinux,在它的官网上带大家走了整个过程,包括从下拉(pull down)、编译源代码到创建最终的磁盘映像的所有命令。

而之所以做这么一件事情,是因为小哥觉得自己用了好多年linux,也用过很多live-cd(能够在不安装到硬盘的前提下,体验linux操作系统的东西)。

但他对其背后的基本原理知之甚少,所以决定动手研究一下。

小哥的第一个目标是运行nomad diskmag程序。

diskmag这个远古东西不知道有人了解吗?

它的全称叫disk magazine,也就是磁盘杂志,是一种在上世纪80-90年代,以软盘形式发行的电子杂志。90年代后就被在线出版物所取代了。

小哥已经用bash脚本搞定了前端界面,就差封面、目录和cat每个文件的正文了。

为了运行他写的脚本,需要一个可用的linux 发行版,也就是一个可以在软盘上运行的系统。

动手!

因为在64位系统上编译32位代码有点棘手。为了更简单,小哥用他的32位cpu的旧笔记本来做这一切。

可以使用32位系统的virtualbox,如果要用64位,添加命令“arch=x86”,例如:make arch=x86 tinyconfig。

下毓拼音面就是把现代linux操作系统装进一张1.44mb软盘的大概过程:

1、创建并进入你想影响的意思要保存文件的目录

2、配置和构建定制内核

使用最新linux内核(版本5.13.0-rc2):

gitclone–depth=1https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

进行最小配置:maketinyconfig

添加额外配置:makemenuconfig

从菜单中选择以下选项:

将设置保存并退出,等待编译完成,最后内核将在arch/x86/boot/bzimage中构建,把它移到主目录。

3、 添加工具

如果没有工具,内核只会启动,无法执行任何操作。小哥使用busybox(最流行的轻量级工具之一),下载并解压:

wgethttps://busybox.net/downloads/busybox-1.33.1.tar.bz2

进入目录,进行启动配置:make allnoconfig

然后选择你想要的工具:make menuconfig

每个菜单项都显示各工具需占用多少kb,合理选择哦。

小哥的选择:

保存配置并退出,编译完成后_install目录下会创建一个包含所有文件的文件系统,把它移到主目录。

4、添加目录结构

有了内核和基本工具,仍然需要一些额外的目录结构:

cd../filesystem

mkdir-pv{dev,proc,etc/init.d,sys,tmp}

sudomknoddev/consolec51

sudomknoddev/nullc13

接下来创建几个配置文件,启动后显示欢迎消息:

cat>>welcome<<eof

somewelcometext…

eof

然后配置处理启动、退出和重启的inittab文件&实际的初始化脚本,并使初始化脚本可执行,并将所有文件的所有者设置为root。(限于篇幅命令已省略,具体可查看文末链接[1])

最后,将此目录压缩为一个文件。

可通过从主目录运行qemu(在gnu/linux 平台上广泛使用的模拟处理器)对以上所有内容进行测试。

5、下面就是把这一切放进软盘了

创建指向内核和文件系统的syslinux引导文件(boot file):

cat>>syslinux.cfg<<eof

defaultlinux

labellinux

say[bootingfloppin旅游管理专业uxversion0.1.0]

kernelbzimage

appendinitrd=rootfs.cpio.gz

eof

chmod+xsyslinux.cfg

创建空软盘映像:

ddif=/dev/zeroof=floppinux.imgbs=1kcount=1440

mkdosfsfloppinux.img

syslinux–installfloppinux.img

mount it !并将syslinux、内核和文件系统复制到软盘映像:

sudomount-oloopfloppinux.img/mnt

sudocpbzimage/mnt

sudocprootfs.cpio北岳恒山在哪个省.gz/mnt

sudocpsyslinux.cfg/mnt

sudoumount/mnt

完成!

现在你就有了自己的发行版映像floppinux.img,你可以烧录到软盘,然后在真正的硬件上启动它了!

启动耗时1分多

小哥花了不到3分钟烧录成功,然后开始了首次启动:点此视频

成功!大概只花了1分多钟。

啊,从屏幕上看了小哥似乎不年轻,头发也秃得让人落泪。

小哥(老哥)表示,在这种裸机的现代硬件上,唯一能阻止启动速度的就是软驱的实际速度。它们最大原始速度为125kb/s。实际上可能会更慢。

下面是软盘占有空间总结,可以看到还剩272kib。

网友热议:“92年的时候我可是需要两张5.25”的软盘”

硬件开源项目网站 hackaday对小哥的创造进行了报道,并点评道:

当然,为了将最新的linux内核和busybox构建到大约1mb的空间,必须做出一些让步,所以floppinux肯定不是任何人所说的日常驱动程序。一旦系统启动,除了编写一些shell脚本之外,就没有什么可做的了。

即使一岁半宝宝腹泻你没有软盘,也值得跟着他的教程,在qemu中启动映像,看看如何从零开始正式构建一个linux系统。这事不仅可以用来吹牛,这样一个最小安装的所有组件如何组合在一起的知识,对学习嵌入式linux设备也很有用。

而在hacker news 论坛上很多人纷纷对小哥竖起大拇指,有人表示最令他惊讶的就是用的最新版的linux内核和busybox。而且这对其他嵌入式系统也很有用。

有人说,92年的时候我可是需要两张5.25英寸的软盘来运行linux!

– the end –

本文发布于:2023-04-05 04:26:28,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/8518ef304ad67580fb0034f414f989b2.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:波兰极客用一张软盘运行Linux系统:用的还是最新内核.doc

本文 PDF 下载地址:波兰极客用一张软盘运行Linux系统:用的还是最新内核.pdf

标签:小哥   软盘   内核   映像
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图