随笔 - 746  文章 - 0  评论 - 39  阅读 - 79万

杂谈:我是怎么去定制ubuntu-live-cd的?

如题。

我为什么要定制?

首先就是原始的livecd不适合我,他觉得自己普适了,也满足他自己的意图了,可用户(我)的呢?

体积偏大!

还进入安装界面!

启动过程满满的各种服务、消息,欺负用户(我)不懂是吧?!

还有,我就想当做vm环境中的急救live盘,你给我整这么多没用的干嘛!!!

...

 

定制的基调?

肯定得有宿主环境,目前肯定是linux,而且,最好就是livecd本身!

最小化的工具包,livecd自身满足才好  :-)

基于livecd本身,如果重头构建,sB才这样!

尽量保持原汁原味,能不动就不动,能少修改就少修改,能改一处就不改多出。

最小size!最小size!最小size! (能做到最小size,才能说明你做到极致了)

 

定制的技术研究方向or指南?

initrd 内存盘是一切的开始,往往这只是开始,你不需要定制什么,只是看看他最初干了什么。几乎所有的initrd不会做什么特别特殊的动作,这是行规!看他的目的是看它最后会挂载那个目录为realroot——真实的root根目录——以及调用哪个init而已。

接上一步,你找到realroot以及真实的init吗,对于livecd,或者说对于ubuntu及其衍生物,都是casper。

然后,后续就是研究casper了! 不同的livecd,casper的实现结构可能不同、组织方式也不同。但万变不离其宗(变多了,会被骂,而且官方也不一定搞得定),casper要提供一个完整的可以作为根/的环境并且提供可以执行的init环境。完整的根/环境显而易见,完整的init环境,随版本(【派系和时间】)的不同而不同。对于ubuntu livecd,只是从20.04后才提供livecd方式,那只有systemd了。而且...... 所有这几年的各种linux发行版,都是systemd!

systemd!

systemd!

sysemd!

有了以上知识,后续就基本上就是,获取这个root(根)环境,chroot进去,定制呗!

 

todo,或说难点?

想让自己定制的livecd或者说所有的livecd具有普世行,关键的问题是解决驱动加载问题 ..............

通常的initrd仅仅带有基本的设备驱动——最最关键的是网卡及存储(硬盘、软盘、usb盘)的驱动——、及基本的文件系统驱动——ext3、ext4——!

todo ...

 

posted on   jinzhenshui  阅读(658)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
历史上的今天:
2018-05-24 续:纠正:ubuntu【7.04】可以安装,而且完美的安装 ! for《Oracle-10.2.0.1,打补丁10.2.0.5:在 debian 版本4【不含4】以上,及 ubuntu 7.04【不含7.04】以上都可以安装!》
2018-05-24 Oracle-10.2.0.1,打补丁10.2.0.5:在 debian 版本4【不含4】以上,及 ubuntu 7.04【不含7.04】以上都可以安装!
2010-05-24 Sqlserver:添加 “windows用户组”到sqlserver的格式要求

点击右上角即可分享
微信分享提示