无忧启动论坛

标题: 原创:从RAMOS到EFIOS [打印本页]

作者: plutoshen    时间: 2024-8-18 09:47
标题: 原创:从RAMOS到EFIOS
本帖最后由 plutoshen 于 2024-8-22 14:12 编辑

为了让操作系统达到最高的运行速度,有人制作出了RAMOS系统,把整个系统加载到内存里运行。

现在我尝试把整个系统打包到EFI文件里面,直接UEFI模式启动,完全不依赖任何的启动加载工具。

只要你主板支持UEFI启动,把我提供的文件夹复制到普通优盘的FAT分区,既不需要你有硬盘,也不需要优盘上再有第二个文件,设置好从优盘优先启动,重启以后稍等一下即可直接进入系统。

从优盘启动会有一个加载的过程,时间取决于机器性能和优盘读取速度。
在这期间有可能是黑屏的,请耐心等待,最多几十秒就能看到启动成功

鉴于兼容性问题,请测试下面这贴的文件

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=441989&extra=

作者: my9823    时间: 2024-8-18 09:56
很好奇,怎么打包的?莫不是用grub2的memdisk,然后制作efi指定memdisk为打包的参数?
作者: plutoshen    时间: 2024-8-18 09:57
这次没人再问怎么启动了吧。
作者: plutoshen    时间: 2024-8-18 09:59
my9823 发表于 2024-8-18 09:56
很好奇,怎么打包的?莫不是用grub2的memdisk,然后制作efi指定memdisk为打包的参数?

我就是用的这个方法,感谢论坛里各位前辈的教程。
作者: kokozzz123    时间: 2024-8-18 10:02
请问这和全功能pe对比,优缺点是?
作者: wondaol    时间: 2024-8-18 10:04
很有想法
作者: plutoshen    时间: 2024-8-18 10:05
kokozzz123 发表于 2024-8-18 10:02
请问这和全功能pe对比,优缺点是?

这是同一系统的iso版本

http://bbs.wuyou.net/forum.php?m ... d=441855&extra=
作者: sulong    时间: 2024-8-18 10:36
有时间体验体验,支持了
作者: d9o    时间: 2024-8-18 10:37
期待把pe弄到efi,个人非常看好这个技术
作者: wsdyleon    时间: 2024-8-18 10:41
前来学习,这个日后需要维护是怎么操作?win的情况下
作者: plutoshen    时间: 2024-8-18 10:42
d9o 发表于 2024-8-18 10:37
期待把pe弄到efi,个人非常看好这个技术

这个我很早之前就做了,没有任何意义。打包Linux到
efi里才有难度。
作者: plutoshen    时间: 2024-8-18 10:43
wsdyleon 发表于 2024-8-18 10:41
前来学习,这个日后需要维护是怎么操作?win的情况下

解压之后修改,再重新打包啊。
作者: wintoflash    时间: 2024-8-18 10:56
其实可以不用grub2就做到这一点。
编译linux内核的时候有个编译选项就是把initrd集成进去。
可以看下OneFileLinux https://github.com/zhovner/OneFileLinux
作者: wsdyleon    时间: 2024-8-18 11:05
plutoshen 发表于 2024-8-18 10:43
解压之后修改,再重新打包啊。

我想知道win实际使用操作,例如我更新个软件,每次都要制作一个efios系统吗
作者: guong    时间: 2024-8-18 12:16
支持原创
作者: plutoshen    时间: 2024-8-18 12:44
wintoflash 发表于 2024-8-18 10:56
其实可以不用grub2就做到这一点。
编译linux内核的时候有个编译选项就是把initrd集成进去。
可以看下OneF ...

有时间研究一下,感觉每次修改都重新编译也太麻烦了。
作者: ice147bing    时间: 2024-8-18 13:06
有时间体验体验
作者: 2012zhiwen    时间: 2024-8-18 13:22
可否教学下win的ramos怎么作呢

作者: plutoshen    时间: 2024-8-18 14:36
wintoflash 发表于 2024-8-18 10:56
其实可以不用grub2就做到这一点。
编译linux内核的时候有个编译选项就是把initrd集成进去。
可以看下OneF ...

看了一下,这个项目有五六年没更新了,虚拟机环境差不多19G大小
我只能说这是一个半途而废的项目,当时可能还值得研究,现在已经没有实用价值了。
作者: fegr    时间: 2024-8-18 15:08
感谢分享
作者: yc2428    时间: 2024-8-18 15:46

谢谢分享
作者: 13325531750    时间: 2024-8-18 15:54
原创:从RAMOS到EFIOS
作者: wn168cn@163.com    时间: 2024-8-18 16:22
感谢分享
作者: 2012benyu    时间: 2024-8-18 16:37
不明觉厉
作者: plutoshen    时间: 2024-8-18 17:51
wsdyleon 发表于 2024-8-18 11:05
我想知道win实际使用操作,例如我更新个软件,每次都要制作一个efios系统吗

所有步骤都有自动脚本,点一下就重新打包了。
作者: shinykers    时间: 2024-8-18 18:00
这个的意义是啥呢?
作者: likeyouli    时间: 2024-8-18 18:50
奇怪了,我怎么又没有启动成功 ?  楼上朋友有测试启动成功的吗 ?
  我因为电脑上esp分区只有300M, 所以不能放到这个分区里通过增加uefi启动序列启动,
  我用了两种方式,一是通过grumfm引导这个efi文件,失败;
                            二是放到u盘,通过ventoy引导这个efi,也同样失败。
     两种方式最后都是引导到grub命令行界面,见图

..jpg (113.96 KB, 下载次数: 4)

..jpg

作者: wintoflash    时间: 2024-8-18 19:30
本帖最后由 wintoflash 于 2024-8-18 19:31 编辑
plutoshen 发表于 2024-8-18 14:36
看了一下,这个项目有五六年没更新了,虚拟机环境差不多19G大小
我只能说这是一个半途而废的项 ...

这本身就是Linux内核官方支持的选项,编译的时候打开开关指定initrd路径就行了,也没有必要天天更新。
这样搞的话,Linux内核也是支持BIOS启动的(当然太大了的话不容易启动)。你那样搞只能用于UEFI启动了。
作者: 2011wolfsina    时间: 2024-8-18 20:25
万径人踪灭,这个名字有点熟?
作者: my9823    时间: 2024-8-18 20:40
看到wintoflash老大的回复,百度了下,在金步国的文档里看到,编译内核有个选项确实能把initrafs内进内核里。


作者: jone    时间: 2024-8-18 20:47

作者: jone    时间: 2024-8-18 20:48

作者: ok98    时间: 2024-8-18 20:53
ramos vhd方便哈
作者: plutoshen    时间: 2024-8-18 21:04
wintoflash 发表于 2024-8-18 19:30
这本身就是Linux内核官方支持的选项,编译的时候打开开关指定initrd路径就行了,也没有必要天天更新。
...

虽然我会编译,但是直接把几百兆的文件一起编译是不是太费时间了?相比之下,还是用grub2做比较简单。至于支持bios启动,那就更没有必要了,如果那样做这个就没有意义了,而且我的笔记本根本没有BIOS启动的功能。
作者: friend8179    时间: 2024-8-18 21:09
配合最近微软fat支持到2t,无敌
作者: plutoshen    时间: 2024-8-18 21:11
likeyouli 发表于 2024-8-18 18:50
奇怪了,我怎么又没有启动成功 ?  楼上朋友有测试启动成功的吗 ?
  我因为电脑上esp分区只有300M, 所以 ...

我试过,唯一有效的启动方式就是通过硬件启动bootx64.efi而不使用任何工具,grubfm和ventoy都不行,因为这个efi文件太大。
作者: likeyouli    时间: 2024-8-18 21:12
d9o 发表于 2024-8-18 10:37
期待把pe弄到efi,个人非常看好这个技术

我看您很支持这个帖子,,请教您是否测试了? 在实体机能成功启动吗? 把这个467MB的bootx64.efi 放到fat分区(或esp分区)然后增加uefi启动序列 启动的,还是通过什么方式启动的 ?
作者: likeyouli    时间: 2024-8-18 21:16
plutoshen 发表于 2024-8-18 21:11
我试过,唯一有效的启动方式就是通过硬件启动bootx64.efi而不使用任何工具,grubfm和ventoy都不行,因为 ...

唉,,我的esp分区太小了才300MB, 不知道如何扩容啊 ?
   难道我必须在硬盘上再新格式化一个fat分区 ?   可我电脑上硬盘分区实在有点多了....
作者: plutoshen    时间: 2024-8-18 21:20
likeyouli 发表于 2024-8-18 21:16
唉,,我的esp分区太小了才300MB, 不知道如何扩容啊 ?
   难道我必须在硬盘上再新格式化一个fat分区 ? ...

解压到普通fat格式的优盘就行,我反复测试过,如果再不行只能是硬件不同了。
作者: wintoflash    时间: 2024-8-18 21:41
plutoshen 发表于 2024-8-18 21:04
虽然我会编译,但是直接把几百兆的文件一起编译是不是太费时间了?相比之下,还是用grub2做比较简单。至 ...
虽然我会编译,但是直接把几百兆的文件一起编译是不是太费时间了?

正常情况下不会天天更新内核。只修改initrd的话,执行的是增量编译,很快的。

用grub2 memdisk套娃,还有一个问题就是造成了内存双次占用。对于很多实体机,这可能会导致启动失败。
作者: plutoshen    时间: 2024-8-18 21:58
wintoflash 发表于 2024-8-18 21:41
正常情况下不会天天更新内核。只修改initrd的话,执行的是增量编译,很快的。

用grub2 memdisk套娃 ...

我只发现一个问题,如果内存盘大于某个数值会启动失败,已经尽量减小体积了,在两台实体机上都能启动,一台华为笔记本,一台联想台式机。
作者: plutoshen    时间: 2024-8-18 22:05
likeyouli 发表于 2024-8-18 21:16
唉,,我的esp分区太小了才300MB, 不知道如何扩容啊 ?
   难道我必须在硬盘上再新格式化一个fat分区 ? ...

你试试这个,winpefi

https://wwod.lanzout.com/i5LbK27s5f5i
作者: likeyouli    时间: 2024-8-18 22:17
plutoshen 发表于 2024-8-18 22:05
你试试这个,winpefi

https://wwod.lanzout.com/i5LbK27s5f5i

你这个92.1M 的efi是什么东西 ?  pe都没有这么小的吧,,   刚又扩容了一下我的esp分区,然后把你的467MB的efi放到esp分区里,新建了uefi启动,结果还是失败,还是回到grub命令界面

..png (634.24 KB, 下载次数: 2)

..png

1.jpg (185.92 KB, 下载次数: 1)

1.jpg

作者: plutoshen    时间: 2024-8-18 22:20
likeyouli 发表于 2024-8-18 22:17
你这个92.1M 的efi是什么东西 ?  pe都没有这么小的吧,,   刚又扩容了一下我的esp分区,然后把你的467M ...

92M的是winpe版本,我试过可以用grubfm启动。
作者: likeyouli    时间: 2024-8-18 22:30
本帖最后由 likeyouli 于 2024-8-18 22:32 编辑
plutoshen 发表于 2024-8-18 22:20
92M的是winpe版本,我试过可以用grubfm启动。

我也可以用grubfm引导启动,  你这个efi格式的pe,也是像2楼说的,用grub2的memdisk打包的 ?

pe.jpg (93.76 KB, 下载次数: 0)

pe.jpg

作者: plutoshen    时间: 2024-8-19 05:14
likeyouli 发表于 2024-8-18 22:30
我也可以用grubfm引导启动,  你这个efi格式的pe,也是像2楼说的,用grub2的memdisk打包的 ?

是的,同样的方式打包,只不过没优化,可能兼容性更好。
作者: 渝垫老    时间: 2024-8-19 06:26
感谢大佬分享
作者: sairen139    时间: 2024-8-19 06:36
如果硬盘里分出一个fat分区,然后把这个efios放硬盘此分区,怎么设置能够启动它?不想要另外用个U盘
作者: sairen139    时间: 2024-8-19 06:37
请教如果硬盘里分出一个fat分区,然后把这个efios放硬盘此分区,怎么设置能够启动它?不想要另外用个U盘
作者: likeyouli    时间: 2024-8-19 08:01
本帖最后由 likeyouli 于 2024-8-19 08:11 编辑
sairen139 发表于 2024-8-19 06:37
请教如果硬盘里分出一个fat分区,然后把这个efios放硬盘此分区,怎么设置能够启动它?不想要另外用个U盘

啊, 我看花眼了吗 ?sairen139大佬发的贴子我专门搜索过,关于ramos的很多看不懂、也不敢问,没想到我也有为您解答的时候:
    用bootice或xorboot,点击uefi、修改启动序列,即看到有与Windows Boot Manager并列的很多uefi启动序列(也就是bcdedit /enum firmware看到的启动固件),新增一个就行。如果是在正常系统下(非pe)操作,可能会看不到esp分区,直接按Windows Boot Manager启动设置的方式新建一个就行,启动文件换成您这个efi文件路径位置就行,因为Windows Boot Manager也是启动的esp分区的efi文件。       有点小请求,您那些关于ramos看不懂的帖子,我也能向您请教一下吗,,嘿嘿,...
      又回看了一下,你电脑肯定有esp分区啊,所以不用再新建fat分区了,直接放到esp分区就行,esp分区如果容量不够,pe下用diskgenius扩容一下,找一个离esp最近的分区,头部空出点空间,然后esp扩容,虽有提示数据会损害,不用担心我刚试了啥事没有。上边操作就是基于放到esp分区。

作者: d9o    时间: 2024-8-19 08:37
复制efi进fat32格式U盘启动测试

fatdog启动失败


efipe启动成功



测试硬件如下












作者: sairen139    时间: 2024-8-19 08:43
likeyouli 发表于 2024-8-19 08:01
啊, 我看花眼了吗 ?sairen139大佬发的贴子我专门搜索过,关于ramos的很多看不懂、也不敢问,没想到我也 ...

感谢讲解。如果有ramos方面不太明白的可以和我探讨,因为ramos好久没有折腾了所以无忧也来的少了
作者: plutoshen    时间: 2024-8-19 08:52
likeyouli 发表于 2024-8-19 08:01
啊, 我看花眼了吗 ?sairen139大佬发的贴子我专门搜索过,关于ramos的很多看不懂、也不敢问,没想到我也 ...

添加启动项直接用efibootmgr命令就行了,有空我写一下。
作者: y4h3z4    时间: 2024-8-19 09:02
我把文件名改为fatdog.efi了,单独放在一个fat32分区,用xorboot启动这个efi文件不成功。
作者: likeyouli    时间: 2024-8-19 10:22
wintoflash 发表于 2024-8-18 21:41
正常情况下不会天天更新内核。只修改initrd的话,执行的是增量编译,很快的。

用grub2 memdisk套娃 ...

不幸被winfoflash大佬言中了,已经好多启动失败的了,,不,好像还没看到启动成功的,除了楼主本人。
         但楼主同样方式打包的pe可以启动成功,真是奇怪。请教大佬:pe如何打包成efi格式?打包成efi会不会减小文件大小?  我感觉打包成efi的好处:一个wim格式的pe如果不借助第三方引导工具,直接用windows boot manager引导,需要用到boot.sdi文件,引导设置略显麻烦;但如果是efi格式的pe,直接丢到esp分区,新建uefi启动序列即可,即不需要第三方文件,引导设置步骤也简单些。

   
作者: plutoshen    时间: 2024-8-19 10:29
likeyouli 发表于 2024-8-19 10:22
不幸被winfoflash大佬言中了,已经好多启动失败的了,,不,好像还没看到启动成功的,除了楼主本人。
   ...

正在各种实验中,暂时先不发教程。
作者: 夏阳    时间: 2024-8-19 10:34
感谢分享
作者: d9o    时间: 2024-8-19 10:57
期待楼主的实验结果,学习是一个好玩的过程。
作者: plutoshen    时间: 2024-8-19 11:02
本帖最后由 plutoshen 于 2024-8-19 11:04 编辑
d9o 发表于 2024-8-19 10:57
期待楼主的实验结果,学习是一个好玩的过程。

WINPEFI增加一个300M版本,使用不同的打包方式,方便的话请测试。
作者: d9o    时间: 2024-8-19 11:29
plutoshen 发表于 2024-8-19 11:02
WINPEFI增加一个300M版本,使用不同的打包方式,方便的话请测试。

实际启动成功

64G U盘格式化单一fat32分区,复制efi进去启动

选择启动盘后等待了十多秒,应该是在加载系统,90多M那个体积较小,没有感觉到加载延迟


正常启动PE





作者: plutoshen    时间: 2024-8-19 11:37
d9o 发表于 2024-8-19 11:29
实际启动成功

64G U盘格式化单一fat32分区,复制efi进去启动

多谢测试。
作者: yzqmxh    时间: 2024-8-19 13:22
谢谢分享
作者: 天涯海角1216    时间: 2024-8-21 08:23
得添加启动项吧?
放在电脑上怎么启动电脑系统?
作者: zengfeng1105    时间: 2024-8-21 16:41
有没有一种可能,老电脑太慢了,连SATA都只有2代,没办法才用ramos,新电脑支持efi,但已经可以用固态硬盘解决了,一块拆机120G才20块左右。
作者: 熊哥    时间: 2024-8-21 17:33
感谢分享
作者: plutoshen    时间: 2024-8-22 14:06
天涯海角1216 发表于 2024-8-21 08:23
得添加启动项吧?
放在电脑上怎么启动电脑系统?

测试最好是放优盘上,如果启动没问题,可以扩大esp分区以后放里面,然后添加启动项,注意不要通过其它启动工具启动,避免冲突。
作者: plutoshen    时间: 2024-8-22 14:08
zengfeng1105 发表于 2024-8-21 16:41
有没有一种可能,老电脑太慢了,连SATA都只有2代,没办法才用ramos,新电脑支持efi,但已经可以用固态硬盘 ...

我不信你的固态硬盘速度比内存还快。
作者: 2010twinsram    时间: 2024-8-22 14:30
文件装在U盘里,启动完成后可以移除U盘吗?
作者: plutoshen    时间: 2024-8-22 14:44
2010twinsram 发表于 2024-8-22 14:30
文件装在U盘里,启动完成后可以移除U盘吗?

当然可以,所有一切都在内存里。
作者: ynb168c    时间: 2024-8-22 14:51

多谢提供分享!




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3