无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 5444|回复: 39

能否把grub2的loopback命令移植到grub4dos?

[复制链接]
发表于 2021-11-27 15:56:18 来自手机 | 显示全部楼层 |阅读模式
本帖最后由 liuzhaoyzz 于 2023-5-12 03:43 编辑

有的linux发行版可以借助loopback命令启动,这种模式下跟grub4dos的map命令有一定区别,loopback能启动的,map不一定能启动,他们的工作机理似乎不同,同样的ventoy启动linux.iso/pe.iso的时候,底层也做了类似的iso虚拟仿真+碎片解析。

现在的grub4dos整体启动linux.iso,如果linux启动脚本在内核层支持挂载iso,就可以用特定的bootcode挂载linux.iso,从而继续启动;如果内核启动脚本没有设计挂载iso,map命令就不能整体启动linux.iso,只能用改造initrd的办法启动,或者用有一定风险的partnew方案启动,都不完美,linux发行版官方用isolinux/grub2作为引导器的要比grub4dos的多。

如果能把grub2的loopback命令移植到grub4dos,作为一个内部或者外部命令,有的linux.iso就可以整体启动了吧,理论上是否有可行性?大神们可有兴趣移植?
@2011yaya2007777,@wintoflash,@chenall......


发表于 2021-11-27 16:15:29 | 显示全部楼层
表示除了围观之外啥也干不了的撸过...
回复

使用道具 举报

发表于 2021-11-27 17:23:40 | 显示全部楼层
liu 版主,我从另一个角度考虑,就是 “为 yaya 减轻工作量” 这个角度,我不想让 yaya 做这个工作。

我不是开发者,我的话,对任何人,都没有任何约束力。我只是发表个人看法。

当然了,如果 yaya 能通过复制粘贴之类的办法,把 grub2 的 loopback 弄过来,这我赞成。

如果要花费较大的精力,那么我不赞成。

还有一点,对于增加这个功能是不利的,yaya 要明白。细说如下:

grldr 的体积大起来,如果超过某个限度,那就完蛋了。

启动屏幕的第一行显示 常规内存、扩展内存、高位内存,最后还有个 End: ....... 这个数值,就是用来参考的。如果它逐步变大,出现内存冲突的可能性就增加了。

我怀疑,目前的 grldr 在碎片处理上,可能就有问题了。究竟是不是内存冲突,那还不知道。

无论如何,如果把 loopback 的功能弄进来,增大了 End:..... 的值,那可能会引发一连串的问题,难以排解。

我甚至建议 yaya,把某些不需要或不重要的功能,再进一步删减,来减少 grldr 的体积。

体积小了安全,体积大了不安全。

比如,把 USB 功能去掉,或者变成外置命令。

如果 yaya 没时间处理,那就不动它。

点评

如果要花费太多精力,还是算了,我也就是信口说说。 用loopback模式启动的似乎也不太多。  详情 回复 发表于 2021-11-27 17:28
回复

使用道具 举报

 楼主| 发表于 2021-11-27 17:28:51 来自手机 | 显示全部楼层
不点 发表于 2021-11-27 17:23
liu 版主,我从另一个角度考虑,就是 “为 yaya 减轻工作量” 这个角度,我不想让 yaya 做这个工作。

我 ...

如果要花费太多精力,还是算了,我也就是信口说说。 用loopback模式启动的似乎也不太多。      

点评

liu 版主,你这句: linux发行版官方用 isolinux/grub2 作为引导器的要比 grub4dos 的多。 说得太客气了吧?照顾 grub4dos 开发者的脸面?嗯??据我所知,貌似目前的 linux 发行版无一采用 grub4dos 的。  详情 回复 发表于 2021-11-27 17:47
回复

使用道具 举报

发表于 2021-11-27 17:47:04 | 显示全部楼层
liuzhaoyzz 发表于 2021-11-27 17:28
如果要花费太多精力,还是算了,我也就是信口说说。 用loopback模式启动的似乎也不太多。

liu 版主,你这句:

linux发行版官方用 isolinux/grub2 作为引导器的要比 grub4dos 的多。

说得太客气了吧?照顾 grub4dos 开发者的脸面?嗯??据我所知,貌似目前的 linux 发行版无一采用 grub4dos 的。

liu 版主,我们画个图,更直观:

linux  --------> grub2,  syslinux(包括 isolinux ,memdisk 等), 完全没 grub4dos 的事。

Windows -----> 微软自己的引导,grub4dos(bios+uefi),别的引导器也有很多.....

两个阵线,比较清晰,互不影响,也好像互不往来(抱歉说得有点难听了)。

该弄啥,就弄啥。强扭的瓜果不甜。

点评

不是说客气话,论坛里那么多linux发行版,linux.iso虽然官网用的大多是isolinux/grub2,但是民间大家很多还是用g4d来启动的啊。  详情 回复 发表于 2021-11-27 18:33
回复

使用道具 举报

发表于 2021-11-27 17:47:31 来自手机 | 显示全部楼层
我对linux的启动机理没有完全搞懂。处理uefi版本时就没有搞定,搁置起来,还是w大打了补丁。grldr里的usb驱动是使用汇编语言,不超过2k,启动旧电脑还是有用的。要减少体积的话,是否可以砍掉一些不经常使用的文件系统?

点评

保留 UD/FAT/exFAT/NTFS/ISO9660/UDF/EXT2 就可以了。 如果还是觉得空间紧张,甚至可以删除 EXT2。 我记得几年前的时候发现grldr.mbr遇到EXT分区就会死机。反正目前 UEFI 启动为主,linux kernel 和 initrd 都放在  详情 回复 发表于 2021-11-27 18:11
提醒得对!有 n 多文件系统,躺在那里睡大觉,说得难听点,是占着茅坑。  详情 回复 发表于 2021-11-27 17:56
回复

使用道具 举报

发表于 2021-11-27 17:56:16 | 显示全部楼层
2011yaya2007777 发表于 2021-11-27 17:47
我对linux的启动机理没有完全搞懂。处理uefi版本时就没有搞定,搁置起来,还是w大打了补丁。grldr里的usb驱 ...

提醒得对!有 n 多文件系统,躺在那里睡大觉,说得难听点,是占着茅坑。
回复

使用道具 举报

发表于 2021-11-27 18:05:23 | 显示全部楼层
高层对话,颇感风度。
回复

使用道具 举报

发表于 2021-11-27 18:11:17 | 显示全部楼层
2011yaya2007777 发表于 2021-11-27 17:47
我对linux的启动机理没有完全搞懂。处理uefi版本时就没有搞定,搁置起来,还是w大打了补丁。grldr里的usb驱 ...

保留 UD/FAT/exFAT/NTFS/ISO9660/UDF/EXT2 就可以了。
如果还是觉得空间紧张,甚至可以删除 EXT2。
我记得几年前的时候发现grldr.mbr遇到EXT分区就会死机。反正目前 UEFI 启动为主,linux kernel 和 initrd 都放在 FAT 分区里面。

点评

目前的 grldr.mbr 在 ext2 上面不会出问题了。yaya 专门为此重写了代码。 ext2 要是干掉了,那就基本上等于说不支持 Linux 了。  详情 回复 发表于 2021-11-28 06:15
回复

使用道具 举报

发表于 2021-11-27 18:14:12 | 显示全部楼层
这种模式下跟grub4dos的map命令有一定区别,loopback能启动的,map不一定能启动

grub2:
  1. loopback loop /xxx.iso
  2. linux (loop)/xxx/vmlinuz iso_path=/xxx.iso
  3. initrd (loop)/xxx/initrd.xz
复制代码

grub4dos:
  1. map /xxx.iso (0xff)
  2. map --hook
  3. kernel (0xff)/xxx/vmlinuz iso_path=/xxx.iso
  4. initrd (0xff)/xxx/initrd.xz
复制代码

有什么区别?

点评

你说的这种,指的是发行版里面,启动脚本里面考虑了iso挂载的情况。比如debian,ubuntu这样子的发行版,用了findiso,iso_scanfile这样的参数,有的iso内部似乎没有考虑,只有loopback.cfg这样子的,似乎只能用grub2  详情 回复 发表于 2021-11-27 18:26
回复

使用道具 举报

 楼主| 发表于 2021-11-27 18:26:57 来自手机 | 显示全部楼层
本帖最后由 liuzhaoyzz 于 2021-11-27 18:33 编辑
wintoflash 发表于 2021-11-27 18:14
grub2:

grub4dos:


你说的这种,指的是发行版里面,启动脚本里面考虑了iso挂载的情况。比如debian,ubuntu这样子的发行版,用了findiso, iso-scan/filename这样的参数,有的iso内部systemd/init启动脚本似乎没有考虑,只有loopback.cfg这样子的,似乎只能用grub2,不能用g4d了,不过不是很多了。     

点评

所以这和loopback功能有什么关系? 你想要的其实是在grub4dos下执行grub2脚本。这是没意义的。  详情 回复 发表于 2021-11-27 19:54
回复

使用道具 举报

 楼主| 发表于 2021-11-27 18:33:02 来自手机 | 显示全部楼层
不点 发表于 2021-11-27 17:47
liu 版主,你这句:

linux发行版官方用 isolinux/grub2 作为引导器的要比 grub4dos 的多。

不是说客气话,论坛里那么多linux发行版,linux.iso虽然官网用的大多是isolinux/grub2,但是民间大家很多还是用g4d来启动的啊。      
回复

使用道具 举报

发表于 2021-11-27 19:24:32 | 显示全部楼层
grub4 是第三方吧,
   
操作系统有专用引导器,不过 linux开源, bcd更是闭合了,进去出不来

再一个是 ,体积小,随然 现在不在乎 400KB,还是 几MB,但潜意识,一样的话,还是选 小的。

微软史 影响大众方面,比linux 要深


回复

使用道具 举报

发表于 2021-11-27 19:54:14 | 显示全部楼层
liuzhaoyzz 发表于 2021-11-27 18:26
你说的这种,指的是发行版里面,启动脚本里面考虑了iso挂载的情况。比如debian,ubuntu这样子的发行版 ...
只有loopback.cfg这样子的

所以这和loopback功能有什么关系?
你想要的其实是在grub4dos下执行grub2脚本。这是没意义的。

点评

你这段话说的有道理,似乎根本不是移植loopback功能的事情,退一步说即使移植loopback到g4d成功了,g4d又怎么能够识别iso里面的/boot/grub/loopback.cfg文件并加载启动?这些菜单文件都是grub2体系的,这似乎是个悖  详情 回复 发表于 2021-12-18 11:09
回复

使用道具 举报

 楼主| 发表于 2021-11-27 21:47:25 | 显示全部楼层
哦,那就算了吧。
回复

使用道具 举报

发表于 2021-11-28 06:15:03 | 显示全部楼层
wintoflash 发表于 2021-11-27 18:11
保留 UD/FAT/exFAT/NTFS/ISO9660/UDF/EXT2 就可以了。
如果还是觉得空间紧张,甚至可以删除 EXT2。
我 ...

目前的 grldr.mbr 在 ext2 上面不会出问题了。yaya 专门为此重写了代码。

ext2 要是干掉了,那就基本上等于说不支持 Linux 了。
回复

使用道具 举报

发表于 2021-11-28 06:39:06 来自手机 | 显示全部楼层
应当支持。现在清理僵尸,只是属于优化方案,而不是因为文件尺寸过大出现问题,不得不为之。

点评

是的,目前还没有证据表明,已经出现内存冲突了。清理僵尸以后,会让代码更安全,让代码的保险系数提高。 同时也要注意,尽量不要再增加功能代码了。注意体积问题确实是个事。 UEFI 的情况我不接触,可能不存  详情 回复 发表于 2021-11-28 07:45
回复

使用道具 举报

发表于 2021-11-28 07:45:25 | 显示全部楼层
2011yaya2007777 发表于 2021-11-28 06:39
应当支持。现在清理僵尸,只是属于优化方案,而不是因为文件尺寸过大出现问题,不得不为之。

是的,目前还没有证据表明,已经出现内存冲突了。清理僵尸以后,会让代码更安全,让代码的保险系数提高。

同时也要注意,尽量不要再增加功能代码了。注意体积问题确实是个事。

UEFI 的情况我不接触,可能不存在此类问题。旧的 bios 之下,grub4dos 的设计,是按节约内存来设计的。所以,内存问题就比较敏感了。

回复

使用道具 举报

发表于 2021-12-16 14:36:21 | 显示全部楼层
自从电脑硬盘换成3T后,就使用了gpt,然后启动管理器就从G4D改为grub2了,好久没有再用g4d。但我一直觉得g4d很多方便都比grub2要好些。如果g4d在不影响使用的情况下,加入类似loopback的功能似乎不错、。

点评

(10#)http://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=427967&pid=4430688&fromuid=487838 什么事情是loopback可以做,但是map做不到的?  详情 回复 发表于 2021-12-16 14:51
回复

使用道具 举报

发表于 2021-12-16 14:51:40 | 显示全部楼层
ql1307096 发表于 2021-12-16 14:36
自从电脑硬盘换成3T后,就使用了gpt,然后启动管理器就从G4D改为grub2了,好久没有再用g4d。但我一直觉得g4 ...

(10#)http://bbs.wuyou.net/forum.php?m ... &fromuid=487838
什么事情是loopback可以做,但是map做不到的?

点评

举个例子,veket/puppy linux,可以用grub2+loopback方案整体启动veket/puppy.iso,但是g4d/g4e的map功能就是不行,因为sysremd/init脚本上没有解析外部iso的cheatcode启动参数。所以启动veket/puppy我都是推荐用gru  详情 回复 发表于 2021-12-17 11:58
回复

使用道具 举报

发表于 2021-12-16 15:06:27 | 显示全部楼层
这是在搭鹊桥?其实已经有分水岭了,各走各路、各通各桥更能适应新技术的推广。或许今后G4D和Linux都用不到了,也未必可知。
回复

使用道具 举报

发表于 2021-12-16 15:29:04 | 显示全部楼层
g4e  未来 10 年   不是 问题,  硬件存量大, x86 没那么容易 末落的

现在 10年前的 g4d  还在 用

用map 和 loopback  提取文件 是 一样的,实在不行,把光盘内的 kernel  提取到硬盘 ,让它以为是 从硬盘启动 内核 , 查找 iso 继续 安装
回复

使用道具 举报

发表于 2021-12-17 09:31:58 | 显示全部楼层
提醒得对!有 n 多文件系统,躺在那里睡大觉,说得难听点,是占着茅坑。

清理僵尸以后,grldr 减少了 13Kb。

点评

想顺便问下,grub4dos如果增加外部命令,对于grldr的大小应该没有什么影响吧?我的意思是说,如果loopback移植起来简单的话,移植到g4d作为外部命令,不会挤占grldr的有限空间,外部命令也不会对于grldr的稳定性产  详情 回复 发表于 2021-12-18 10:36
回复

使用道具 举报

 楼主| 发表于 2021-12-17 11:58:50 来自手机 | 显示全部楼层
本帖最后由 liuzhaoyzz 于 2023-5-12 03:47 编辑
wintoflash 发表于 2021-12-16 14:51
(10#)http://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=427967&pid=4430688&fromuid=487 ...


举个例子,veket/puppy linux,可以用grub2+loopback方案整体启动veket/puppy.iso,但是g4d/g4e的map功能就是不行,因为systemd/init脚本上没有解析外部iso传递到linux kernel的bootcode启动参数。所以启动veket/puppy我都是推荐用grub2,解开veket/puppy.iso或者不解开,grub2都能够胜任,g4d就不行,这是g4d功能上的缺失。g4d+partnew方案整体启动iso局限性较大,而且这个方案有一定的风险。

grub2在BIOS方面启动兼容性方面感觉比不上g4d,但是用bootmgr/g4d作为第一启动,用grub2-bios作为中转感觉还可以,我喜欢把grub2-bios作为第二引导。

如果一个linux发行版,想要支持loopback启动,感觉不是太复杂。但是要一个linux发行版支持g4d的map,那就需要改造systemd/init脚本,这些东西,懂的人怕是不多。像是ventoy就用了patch initrd的方案吧,还有你的grubfilemanager是不是也用了,我不清楚呢。patch initrd方案,是一整套启动解决方案,不能独立。      

点评

具体是怎么启动veket/puppy iso的?  详情 回复 发表于 2021-12-17 12:15
回复

使用道具 举报

发表于 2021-12-17 12:15:03 | 显示全部楼层
liuzhaoyzz 发表于 2021-12-17 11:58
举个例子,veket/puppy linux,可以用grub2+loopback方案整体启动veket/puppy.iso,但是g4d/g4e的map功 ...

具体是怎么启动veket/puppy iso的?

点评

我是手机回帖,晚点贴个  详情 回复 发表于 2021-12-17 12:17
回复

使用道具 举报

 楼主| 发表于 2021-12-17 12:17:21 来自手机 | 显示全部楼层
本帖最后由 liuzhaoyzz 于 2021-12-17 14:41 编辑
wintoflash 发表于 2021-12-17 12:15
具体是怎么启动veket/puppy iso的?

我是手机回帖,在高铁上呢,晚点贴个
veket.v22.a微软edge浏览器
https://cloud.189.cn/web/share?code=fq2INnAFjINn

insmod gfxterm
insmod terminal
insmod loopback

menuentry "/linux/veket/v22a.1215/veket_22.a.iso-loopback.cfg" "/linux/veket/v22a.1215/veket_22.a.iso" {
terminal_output console
search --no-floppy --set --file $2
export iso_path=$2;loopback -d loop;loopback loop $2
set root=loop
configfile (loop)/boot/grub/loopback.cfg
}

menuentry "/linux/veket/v22a.1215/veket_22.a.iso-partnew[not_recommend]" "/linux/veket/v22a.1215/veket_22.a.iso" {
set gfxpayload=keep
search --no-floppy --set --file $2;regexp --set=x '(.*),' "$root";loopback loop $2
partnew -t 0x00 -f $2 ($x) 4
linux (loop)/vmlinuz PSUBDIR=/ pmedia=cd pfix=fsck
initrd (loop)/initrd.gz
}

v20下载地址:https://cloud.189.cn/web/share?code=bM3QNnAry26r
menuentry "/linux/veket/v20-v20211201/veket_20/vmlinuz" "/linux/veket/v20-v20211201/veket_20/vmlinuz" {
search --no-floppy --set --file $2
linux $2 PSUBDIR=/linux/veket/v20-v20211201/veket_20
initrd /linux/veket/v20-v20211201/veket_20/initrd.gz
}

menuentry "/linux/veket/v20-v20211201/veket_20/vmlinuz[no_save_file]" "/linux/veket/v20-v20211201/veket_20/vmlinuz" {
search --no-floppy --set --file $2
linux $2 pfix=ram savefile=none PSUBDIR=/linux/veket/v20-v20211201/veket_20
initrd /linux/veket/v20-v20211201/veket_20/initrd.gz
}

puppy下载地址:清华大学开源软件镜像站 | Tsinghua Open Source Mirror https://mirrors.tuna.tsinghua.edu.cn/https://mirrors.tuna.tsinghua.edu.cn/puppy/puppy-fossa/
fossapup64-9.5.iso
MD5:6a45e7a305b7d3172ebd9eab5ca460e4  fossapup64-9.5.iso

menuentry "/linux/puppy/fossapup64-9.5.iso-loopback.cfg" "/linux/puppy/fossapup64-9.5.iso" {
terminal_output console
search --no-floppy --set --file $2
export iso_path=$2;loopback -d loop;loopback loop $2
set root=loop
configfile (loop)/boot/grub/loopback.cfg
}





点评

你贴的这些例子并不能说明grub4dos下loopback的必要性。 (1) 和 (5): 打开iso看看loopback.cfg文件,看看kernel命令行是怎么写的,抄过来就能用。再说了,这和loopback一毛钱关系也没有,你仔细想想。 (2): 在gr  详情 回复 发表于 2021-12-18 08:25
回复

使用道具 举报

发表于 2021-12-18 08:25:06 | 显示全部楼层
本帖最后由 wintoflash 于 2021-12-18 08:33 编辑
liuzhaoyzz 发表于 2021-12-17 12:17
我是手机回帖,在高铁上呢,晚点贴个
veket.v22.a微软edge浏览器
https://cloud.189.cn/web/share?code ...

你贴的这些例子并不能说明grub4dos下loopback的必要性。

(1) 和 (5): 打开iso看看loopback.cfg文件,看看kernel命令行是怎么写的,抄过来就能用。再说了,执行loopback.cfg与loopback功能本身并没有关系。grub2 map之后一样能执行loopback.cfg。
(2): 在grub4dos下用partnew和map,完全一样。
(3) 和(4): 根本没有用到loopback,在grub4dos下一样能启动。

点评

现在是想用grub4dos的loopback来整体启动linux.iso啊,grub4dos map之后,怎么调用/boot/grub/loopback.cfg?不行吧?  详情 回复 发表于 2021-12-18 10:29
我说的主要是(1)和(5)的场景,其他的是顺别贴出来的,抱歉误导了。 光盘里面,\boot\grub2\loopback.cfg内容如下: loadfont /boot/grub/font.pf2 color_normal=cyan/black #menu_color_highlight=black/l  详情 回复 发表于 2021-12-18 10:04
回复

使用道具 举报

发表于 2021-12-18 09:36:32 | 显示全部楼层
我觉得loop驱动的好处是不是基本可以忽略iso文件碎片的问题?
常看到讨论map iso因为碎片不成功的问题,而全载入内存可能某些机器又受不了

点评

碎片问题也是一个好处,grub2的碎片解析,感觉上来说,要比g4d的碎片解析稳定,而且可解析的碎片没有上限,似乎只有解析时间问题,解析速度感觉很快。  详情 回复 发表于 2021-12-18 10:06
回复

使用道具 举报

 楼主| 发表于 2021-12-18 10:04:22 | 显示全部楼层
本帖最后由 liuzhaoyzz 于 2021-12-18 10:45 编辑
wintoflash 发表于 2021-12-18 08:25
你贴的这些例子并不能说明grub4dos下loopback的必要性。

(1) 和 (5): 打开iso看看loopback.cfg文件, ...


我说的主要是(1)和(5)的场景,其他的是顺别贴出来的,抱歉误导了。

光盘里面,\boot\grub2\loopback.cfg内容如下:

loadfont /boot/grub/font.pf2

color_normal=cyan/black
#menu_color_highlight=black/light-gray
menu_color_highlight=yellow/red
menu_color_normal=light-gray/black

menuentry "veket 22" {
    linux /vmlinuz pfix=fsck pmedia=cd find_iso=${iso_path}
    initrd /initrd.gz
}

menuentry "veket 22 - Copy SFS files to RAM" {
    linux /vmlinuz pfix=copy,fsck pmedia=cd find_iso=${iso_path}
    initrd /initrd.gz
}

menuentry "veket 22 - Don't copy SFS files to RAM" {
    linux /vmlinuz pfix=nocopy,fsck pmedia=cd find_iso=${iso_path}
    initrd /initrd.gz
}

menuentry "veket 22 - RAM only" {
    linux /vmlinuz pfix=ram,fsck pmedia=cd find_iso=${iso_path}
    initrd /initrd.gz
}

menuentry "veket 22 - No X" {
    linux /vmlinuz pfix=nox,fsck pmedia=cd find_iso=${iso_path}
    initrd /initrd.gz
}

menuentry "veket 22 - No KMS (Kernel modesetting)" {
    linux /vmlinuz nomodeset pfix=fsck pmedia=cd find_iso=${iso_path}
    initrd /initrd.gz
}

menuentry "veket 22 - Ram Disk SHell" {
    linux /vmlinuz pfix=rdsh pmedia=cd find_iso=${iso_path}
    initrd /initrd.gz
}

menuentry "Shutdown" {
        halt
}

menuentry "Reboot" {
        reboot
}

find_iso=${iso_path}这个参数是假的,根本没什么用,因为systemd/init里面没有对这个find_iso进行解析并挂载,他似乎是用来适配grub2的loopback方案的。好像是,我测试过,因此直接map是不行的。所以有想把grub2的loopback移植到grub4dos环境的奇怪想法。
我马上要出去下。

回复

使用道具 举报

 楼主| 发表于 2021-12-18 10:06:57 | 显示全部楼层
2011grassll 发表于 2021-12-18 09:36
我觉得loop驱动的好处是不是基本可以忽略iso文件碎片的问题?
常看到讨论map iso因为碎片不成功的问题,而 ...

碎片问题也是一个好处,grub2的碎片解析,感觉上来说,要比g4d的碎片解析稳定,而且可解析的碎片没有上限,似乎只有解析时间问题,解析速度感觉很快。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-4-16 22:16

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表