hkkitlee 发表于 2019-8-21 14:28:30

本帖最后由 hkkitlee 于 2019-8-21 14:29 编辑

江南一根葱 发表于 2019-8-21 13:39
bios和efi去共用一个ipxe的jio本貌似有点杂乱,刚合并,我就在考虑分开。。

那就「感覺良好」就好了

我的出發點是:分開都是在寫一堆「差不多、重複」的代碼。必刪減降低體積與載入時間。
就是為了性能。

友联电脑 发表于 2019-8-21 17:30:34

江南一根葱 发表于 2019-8-21 13:39
bios和efi去共用一个ipxe的jio本貌似有点杂乱,刚合并,我就在考虑分开。。

合并,将uefi和legacy引导菜单放在一起,真的没有必要,分开处理即简单又清爽,何乐而不为。我选择是从dhcp就开始分开,清爽多了

友联电脑 发表于 2019-8-21 17:43:56

本帖最后由 友联电脑 于 2019-8-21 18:04 编辑

hkkitlee 发表于 2019-8-21 13:43
你誤會了。我是在說精簡iPXE的啟動腳本雙引導啟動;不是在說pxe server回報的架構可以雙啟動。

###i ...

fstab是空的,什么也没有。可以说下你的启动过程吗?特别是squashfs的取得方式,还有,如果启动后断开网络,系统可否正常运转,这很关键。

hkkitlee 发表于 2019-8-21 20:45:40

本帖最后由 hkkitlee 于 2019-8-21 21:15 编辑

友联电脑 发表于 2019-8-21 17:43
fstab是空的,什么也没有。可以说下你的启动过程吗?特别是squashfs的取得方式,还有,如果启动后断开 ...

fstab是空的?!?!我真的是無語了...
那你是怎麼設定使用overlay,難道是boot=overlay?這個核心參數好像不是表達這個意思...

系統都已在內存,當然可以斷網工作。
或者你參考我寫過的帖,我的啟動項目全都跨互聯網。全部都「不可能用網絡磁盤」。
腳本給了你,squashfs也是自己壓。也看不出你壓制方法有問題。

我的啟動:系統文件下載後就是獨立一部機器,與伺服再無關係;伺服下線、關機當然也可以。
與你最大分別應該是我沒有「再特別設定overlay」而已。

友联电脑 发表于 2019-8-21 21:15:35

本帖最后由 友联电脑 于 2019-8-21 21:29 编辑

hkkitlee 发表于 2019-8-21 20:45
fstab是空的?!?!我真的是無語了...
那你是怎麼設定使用overlay



{:1_186:}{:1_186:},可能超出你的想像了,fstab是空的,这有什么奇怪的,没有任何本地设备需要加载,为什么有要fstab,跨不跨互联网,这个真的没什么,我只是想看下,如果你要启动buster,或者说你给我一个能跨网启动的脚本,我只是想看一下而已,真没有其它的。你能写,我就能告诉你启动过程,要不你说下我个作法的启动过程。

我说下,这样启动的好处

1,squashfs文件随意链接和压制,无需进一步打包加工
2,内核及映像文件都是同一个,不管启动哪个版本的
3,终端启动完成,就可脱机运行,

当然,如果是一些小型Linux,本身就是映像版本,直接启动映像就Ok的,这些根本用不着这样,像deepin,fedora,centos,ubuntu等等上G的大小,必须有一个加载基础系统的过程,这就是我想知道的,这就是我这样用的地方,呵呵

hkkitlee 发表于 2019-8-21 21:24:27

本帖最后由 hkkitlee 于 2019-8-21 21:31 编辑

跨網不跨網,只在乎你腳本${boot-server}是個可解釋domain,跟本沒分什麼內外網。做好port forwarding 就可以。客戶機有要求,伺服器能在正確的通道上回應。沒有特別。

只是下載系統文件的「方法」能不能跨得出。如果是iscsi之類就跨不出喇!這是「使用什麼方式來下載」的協議問題。

我寫給你的腳本,就是從我的copy出來給你的。

hkkitlee 发表于 2019-8-21 21:24:31

本帖最后由 hkkitlee 于 2019-8-21 21:26 编辑

重覆刪除

友联电脑 发表于 2019-8-21 21:36:42

本帖最后由 友联电脑 于 2019-8-21 21:55 编辑

hkkitlee 发表于 2019-8-21 21:24
跨網不跨網,只在乎你腳本${boot-server}是個可解釋domain,跟本沒分內外網。做好port forwarding 就可以了 ...

看样子,你还是不明白我在说什么。简单点讲,如果你要网启buster,服务器上要被用到的有哪些文件,不管是解包,还是不解包的,是直接加载iso文件,还是squashfs,通过何种方式在何时加载,这就是我想分析的启动过程

如nfs方式,一般是内核和映像启动后,通过nfs挂载squashfs,然后再组成联合文件系统,此时当nfs数据中断,系统就会随之死机,而且客户端一多,给服务器的io造成不小的压力,不过这样启动是最快的。
其次是iso整盘加载,这样如果基础系统稍有修改,就得重新压制iso,启动时候,也会处于长时间的等待状态,加载完成后,像本机挂了光驱一样,也可脱机运行 
再次是将基础文件,直接打包到映像文件,以形成一次加载,直接启动的效果,不存在启动过程是需继续加载数据,此法也可脱机运行
以上两种可脱机运行的方法,都存在切换的麻烦

最后在启动的过程中通过http加载基础映像系统,组成联合文件系统,就是目前我尝试使用的方案,即可脱机,又可方便调整客户端系统,只要改下脚本的参数即可,方便多了

这些就是启动各种linux的方法大全,谢谢

hkkitlee 发表于 2019-8-21 22:19:11

友联电脑 发表于 2019-8-21 21:15
,可能超出你的想像了,fstab是空的,这有什么奇怪的,没有任何本地设备需要加载, ...

我理解的基礎加載:

你加載的3個文件,vmlinuz , initrd , squashfs

第一是加載核心,第二是下載initrd並解壓縮到內存。
initrd的角色是以「臨時的根目錄」的方式在內存給核心運作。當時連硬碟也「不能掛載」。
這是因為當時的核心只有很小量的驅動程式。其餘的驅動[如:sata/scsi/網卡等]是以存在initrd。

當核心加載了initrd的所需驅動後,核心會主動「卸載」initrd並釋放本來使用的內存空間。
再憑已加載的驅動:

Live :經加載的網卡下載squashfs,解壓到內存並以「overlay方式作為可讀寫根目錄」。
Installed:經加載的硬碟讀取分區表。

以上兩個已設好根目錄的系統完成後。就是尋找第一支「用戶級別的程式」,即sysV / systemd。
這兩個初始化完成後。就是見到的xorg / terminal。


最詳細可參考kernel.org或其他發行文件。

hkkitlee 发表于 2019-8-21 22:33:42

友联电脑 发表于 2019-8-21 21:36
看样子,你还是不明白我在说什么。简单点讲,如果你要网启buster,服务器上要被用到的有哪些文件,不管 ...

我剛寫了的過份「基礎」,以為是你需要了解的「基礎加載」

我理解你所需要的啟動方式,是一個「可離線,可讀寫的根目錄」而已。
根目錄中只需預安裝你需要的docker,虛擬化;再壓成squashfs就可以啟動。

江南一根葱 发表于 2019-8-21 22:34:42

高手们有没现成解压可用的包地址给研究下{:1_186:}

友联电脑 发表于 2019-8-21 22:46:30

hkkitlee 发表于 2019-8-21 22:19
我理解的基礎加載:

你加載的3個文件,vmlinuz , initrd , squashfs


Live :經加載的網卡下載squashfs,解壓到內存並以「overlay方式作為可讀寫根目錄」。
Installed:經加載的硬碟讀取分區表。

这才是问题的关键,Live :經加載的網卡下載squashfs ,这个是如何载加的,是复制到内存,还是通NFS挂载,这才是关键中的关键,理论那些东西 都不需要赘言,

hkkitlee 发表于 2019-8-21 22:56:23

友联电脑 发表于 2019-8-21 22:46
Live :經加載的網卡下載squashfs,解壓到內存並以「overlay方式作為可讀寫根目錄」。
Installed:經加載 ...

如何加載?!?!我腳本都寫了給你,腳本就清楚說明了如何加載了......

既然是赘言,那我就不多說了,祝你早出成品。

hkkitlee 发表于 2019-8-21 22:56:35

友联电脑 发表于 2019-8-21 22:46
Live :經加載的網卡下載squashfs,解壓到內存並以「overlay方式作為可讀寫根目錄」。
Installed:經加載 ...

如何加載?!?!我腳本都寫了給你,腳本就清楚說明了如何加載了......

既然是赘言,那我就不多說了,祝你早出成品。

hkkitlee 发表于 2019-8-21 22:56:35

本帖最后由 hkkitlee 于 2019-8-22 06:51 编辑

友联电脑 发表于 2019-8-21 22:46
Live :經加載的網卡下載squashfs,解壓到內存並以「overlay方式作為可讀寫根目錄」。
Installed:經加載 ...

如何加載?!?!我腳本都寫了給你,腳本就清楚說明了如何加載了......

既然都是赘言,那我就不多說了,祝你早出成品。

友联电脑 发表于 2019-8-21 22:58:46

hkkitlee 发表于 2019-8-21 22:33
我剛寫了的過份「基礎」,以為是你需要了解的「基礎加載」

我理解你所需要的啟動方式,是一個「可離線 ...

我剛寫了的過份「基礎」,以為是你需要了解的「基礎加載」

我理解你所需要的啟動方式,是一個「可離線,可讀寫的根目錄」而已。还一点,方便切换


根目錄中只需預安裝你需要的docker,虛擬化;再壓成squashfs就可以啟動。

关于docker,虚拟化等,并不是你想像中的那么简单,区区安装一下就可以,说的也太轻巧了,实践过你就知道 了有哪些难处,比如,物理网卡,终端不同,网卡的命名就不同,{:1_186:}{:1_186:},虚拟化管理也是一个问题,如何能简洁又有效的管理

友联电脑 发表于 2019-8-21 23:10:29

hkkitlee 发表于 2019-8-21 22:56
如何加載?!?!我腳本都寫了給你,腳本就清楚說明了如何加載了......

既然是赘言,那我就不多說了, ...

也许吧,你的方法也许我还没有参透,并不在我已知范围之内,我只有去多看,多读,多想内核映像的各种脚本并再写点,好好学习,天天向上!!!

友联电脑 发表于 2019-8-21 23:17:35

江南一根葱 发表于 2019-8-21 22:34
高手们有没现成解压可用的包地址给研究下

有兴趣一起讨论,改天有空,我发过问启动过程及相关资源上来,还有一些问题有待解决中

友联电脑 发表于 2019-8-22 15:19:31

本帖最后由 友联电脑 于 2019-8-22 15:20 编辑

江南一根葱 发表于 2019-8-21 22:34
高手们有没现成解压可用的包地址给研究下

贴子已更新,上面有你想要的,脚本就是关键启动过程

江南一根葱 发表于 2019-8-22 17:59:09

友联电脑 发表于 2019-8-22 15:19
贴子已更新,上面有你想要的,脚本就是关键启动过程

多谢多谢,我研究研究,

友联电脑 发表于 2019-8-22 21:02:13

江南一根葱 发表于 2019-8-22 17:59
多谢多谢,我研究研究,

不谢,启动参数是制定的,未经测试,不是也不能乱写的

江南一根葱 发表于 2019-8-23 12:56:19

友联电脑 发表于 2019-8-22 21:02
不谢,启动参数是制定的,未经测试,不是也不能乱写的

{:1_186:}还没试过,不过作为新手,可能我还会不知道这脚本加在哪

友联电脑 发表于 2019-8-24 10:27:09

江南一根葱 发表于 2019-8-23 12:56
还没试过,不过作为新手,可能我还会不知道这脚本加在哪

说的实在,这个脚本放在内核映像的脚本目录,或者生成映像工具的脚本目录下

进士小站 发表于 2019-8-24 10:57:42

linux 系统偶尔玩玩{:1_194:}

ls68057121 发表于 2019-8-28 17:36:48

哈哈。云里雾里

友联电脑 发表于 2019-8-29 00:05:48

ls68057121 发表于 2019-8-28 17:36
哈哈。云里雾里

外网直接启动,够直观的
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=416077&extra=page%3D1&mobile=2

wf90725 发表于 2020-2-15 21:21:22

厉害

cbl 发表于 2020-2-29 18:57:01

{:1_186:}
页: 1 [2]
查看完整版本: Debian Linux buster overlay无盘桌面实践