无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
楼主: zhaohj
打印 上一主题 下一主题

GRUB4DOS更新建议、bug反馈专帖

    [复制链接]
2371#
发表于 2012-2-6 01:03:09 | 只看该作者
基于slitaz定制的版本,用LZMA高压缩。只需要40MB不到的空间就可以搞定一切了。

需要的内存比较大(512以上),可以选择使用。

slitaz_colinux.7z
回复

使用道具 举报

2372#
 楼主| 发表于 2012-2-6 08:55:02 | 只看该作者
slitaz_colinux的配置文件是否有问题?我用root用户名及密码登陆的
svn时出现
make时前面也出现很多错误,但结果好像正常。
中文环境改成如下正常:
root=/dev/null rw autologin kmap=us lang=zh-CN

-------------------
目前看,debian版速度最快,虽然大了点,但编译环境可以简单切换。另下载安装、更新也比较容易。

[ 本帖最后由 zhaohj 于 2012-2-6 09:23 编辑 ]

Snap1.jpg (17.74 KB, 下载次数: 160)

Snap1.jpg
回复

使用道具 举报

2373#
发表于 2012-2-6 09:13:46 | 只看该作者

回复 #2375 chenall 的帖子

有个奇怪的问题,我记得前天我用XP的笔记本,colinux_mini.7z 可以正常启动。
我今天用WIN7发现用快速启动.CMD,会一闪而过,发现是报缺少pid文件的错。

后来,我用老版本的colinux一些文件替换掉colinux_mini.7z 中的文件,正常启动了。
回复

使用道具 举报

2374#
发表于 2012-2-6 10:34:53 | 只看该作者

回复 #2376 zhaohj 的帖子

这个好像没有什么问题,反正在控制台中也不能使用中文。

编译速度应该差不多吧。启动速度slitaz最慢。

tinycore(GCC4.4版)和debian应该差不多。

我还是比较喜欢tinycore的软件包方式,添加修改软件很方便。但是tinycore不能用alt+Fn打开新的控制台(刚刚发现加参数multivt就可以了。)。

。。。。。。

好像都偏题了。。请版主把最近的几个讨论贴转移到一个新的贴子中。

[ 本帖最后由 chenall 于 2012-2-6 11:10 编辑 ]
回复

使用道具 举报

2375#
发表于 2012-2-6 10:36:38 | 只看该作者

回复 #2377 Plantsoot 的帖子

这个应该和内存有关系(启动最早60MB版的tinycore我就经常碰到启动失败,过一会再试就行了)
slitaz的内存需求更大。。

你可以在批处理中添加一个PAUSE命令看看。
回复

使用道具 举报

2376#
发表于 2012-2-7 16:00:13 | 只看该作者
网启 电脑成功
find 有(pd)
我的pe用到百草霜的fbinst要访问加载(ud)中pctool中的工具
执行 map --mem (pd) (ud)
出现错误
回复

使用道具 举报

2377#
发表于 2012-2-7 18:44:46 | 只看该作者
再发一个GRUB4DOS的编译环境,自认为完美版本使用gcc4.5

一切都是为了方便。嘿嘿。没什么问题的话就不再整编译环境了。

http://www.ctdisk.com/file/4529565

相关说明请关注我的搏客。
回复

使用道具 举报

2378#
发表于 2012-2-7 20:23:42 | 只看该作者
WIN7 下还是有问题:
  1. Cooperative Linux Daemon, 0.7.10
  2. Daemon compiled on Sun Aug  7 18:24:26 2011
  3. daemon: exit code 8b303403
  4. daemon: error driver version, please reinstall driver!
复制代码
把colinux-daemon.exe改为 0.8.0.1370 版本,改为兼容模式,到是能启动。


什么原因?
回复

使用道具 举报

2379#
发表于 2012-2-7 20:33:06 | 只看该作者

回复 #2382 Plantsoot 的帖子

驱动版本不对,可能是因为你安装了多个版本的colinux
可以先删除再安装
先用以下命令看一下版本信息
colinux-daemon.exe --status-driver
如果版本不对需要先删除。
colinux-daemon.exe  --remove-driver
回复

使用道具 举报

2380#
发表于 2012-2-8 09:11:04 | 只看该作者

回复 #2383 chenall 的帖子

多谢 chenall 兄的反复指导,这次可以了。
这个版本比较完美。
回复

使用道具 举报

2381#
发表于 2012-2-8 09:42:56 | 只看该作者

回复 #2383 chenall 的帖子

@chenall:
svn下载源代码怎么老是出现这个提示?
回复

使用道具 举报

2382#
发表于 2012-2-8 11:35:42 | 只看该作者

回复 #2385 zxw 的帖子

你的电脑应该不会装360或类似的软件吧。嘿嘿,如果有的话停用应该就行了。
回复

使用道具 举报

2383#
发表于 2012-2-8 11:51:55 | 只看该作者

回复 #2386 chenall 的帖子

嘿,杀软防火墙我什么都没装。
回复

使用道具 举报

2384#
发表于 2012-2-8 21:16:30 | 只看该作者

回复 #2387 zxw 的帖子

这个就原因未知了..你可以试试手工建立目录看看能不能成功比如
mkdir /mnt/cofs/test

另外还有一点,和你的windows的共享目录有关系,比如NTFS的权限设置.


小更新了一下..
http://www.ctdisk.com/file/4548645

[ 本帖最后由 chenall 于 2012-2-8 21:27 编辑 ]
回复

使用道具 举报

2385#
发表于 2012-2-9 00:31:17 | 只看该作者

回复 #2388 chenall 的帖子

今天反复测试。

发现源代码放在cofs中,编译过程太漫长。

源代码放在slatiz中,编译第一次用了50秒左右。
源代码放在cofs,也就是E:\colinux,编译了15分钟还没编译完,差距太大。

现在我采用的是slatiz编译,然后cp到E:\colinux,cp过程中有错误提示,好像是因为ntfs不支持链接啥的。
现在我是用7z直接压缩到E:\colinux。

明天试试最新版。
回复

使用道具 举报

2386#
发表于 2012-2-9 00:53:35 | 只看该作者

回复 #2389 Plantsoot 的帖子

cofs上编译速度慢是正常的,嘿嘿.
我自己编译测试版本是都是直接在cofs上编译.发布时才用虚拟硬盘或在内存盘中编译.

刚试了使用tinyslat测试时在cofs下直接编译完整版本.用了2分钟,还可以接受.用虚拟硬盘就快了50秒左右吧.


其实cofs是方便测试修改源码的,这也有技巧的..
首先因为是测试使用不需要完整编译,所以不要直接./build或make
我是用以下命令编译的
第一次用以下两句
./configure --enable-preset-menu=preset_menu.lst
make

以后修改了源码后直接用
make
编译速度飞快.因为没有改动过的源码不需要再次编译.

编译完之后自己从stage2目录里面复制grldr和grub.exe出来就行了.(当然了你可以自己再写一个脚本自动编译并复制文件出来)

我比较懒,直接用软链接搞定一切(好像WIN7以上才有支持),XP不行.


另外刚刚发现git新的版本在cofs上使用有问题,所以我又更新了一下.把git换成1.6的版本,这次应该一切正常了.

新的下载地址:
http://www.ctdisk.com/file/4551969

[ 本帖最后由 chenall 于 2012-2-9 00:55 编辑 ]
回复

使用道具 举报

2387#
 楼主| 发表于 2012-2-9 09:25:25 | 只看该作者
能否改成启动后自动进入“超级用户”,即自动运行sudo su
回复

使用道具 举报

2388#
发表于 2012-2-9 09:46:09 | 只看该作者

回复 #2388 chenall 的帖子

抱歉,我将cofs设置成tinyslat所在的分区,就出现这个问题。设置到其它分区问题得到解决。

另有一个疑问:
分别用以下两种方法编译:
(1)./configure --enable-preset-menu=preset_menu.lst
make
(2)./build
用(1)编译出来的grldr大小为262k,而用(2)编译出来的grldr大小为268k。
二者大小相差6K之多,小测貌似均正常。
回复

使用道具 举报

2389#
发表于 2012-2-9 13:23:15 | 只看该作者

回复 #2392 zxw 的帖子

方法1:
./configure --enable-preset-menu=preset_menu.lst
make
文件: E:\colinux\grub4dos_src\stage2\grldr
大小: 268087 字节  (262K)
修改时间: 2012年2月9日, 13:01:09
MD5: 1D449B221297847A19912FF6BBC76301
SHA1: C5472181AA3EB669DA17A031E18408D602E9E474
CRC32: 142E91B2

方法2:删除E:\colinux\grub4dos_src后
cd /mnt/cofs
svn co http://grub4dos-chenall.googlecode.com/svn/trunk grub4dos_src
cd grub4dos_src
./build
文件: E:\colinux\grub4dos_src\grub4dos-temp\stage2\grldr
大小: 268087 字节
修改时间: 2012年2月9日, 13:19:56
MD5: 1D449B221297847A19912FF6BBC76301
SHA1: C5472181AA3EB669DA17A031E18408D602E9E474
CRC32: 142E91B2

我一共测试了4次,编译出来的grldr完全一样,md5都是一样的。
回复

使用道具 举报

2390#
发表于 2012-2-9 15:01:34 | 只看该作者

回复 #2392 zxw 的帖子

Q: 抱歉,我将cofs设置成tinyslat所在的分区,就出现这个问题。设置到其它分区问题得到解决。
这不是问题的关键,当然了能用就好,有兴趣可以继续找出问题的原因.

Q:另有一个疑问:
如果你的命令没有错,这是不可能的.
楼上,Plantsoot 已经证明过了,是完全一样的.
回复

使用道具 举报

2391#
发表于 2012-2-10 00:50:55 | 只看该作者

回复 #2394 chenall 的帖子

C大  ls命令是否有点问题

回复

使用道具 举报

2392#
发表于 2012-2-10 01:12:17 | 只看该作者

回复 #2395 sratlf 的帖子

原因应该是WINDOWS目录下文件太多了,缓冲区放不下所有的内容,后面的被丢弃了……目前的缓冲区只有3KB左右的样子。

下个版本也许会考虑修改一下开放一些限制。

缓冲区目前限制是0xC00也就是3KB,有兴趣可以自己先改改看。

在文件cmdline.c中run_line函数。注释掉以下语句就没有限制了
        if (hook_buff >= PRINTF_BUFFER + 0xC00)
        {
                        hook_buff = PRINTF_BUFFER + 0xC00;
        }
但是需要注意的是以下两个定义,可能需要适当的修改(如果不是在一行中连续使用大量的重定向不改也没有什么问题 )。
#define PRINTF_BUFFER ((unsigned char *)SYSTEM_RESERVED_MEMORY + 0x11000)
#define CMD_BUFFER ((char *)SYSTEM_RESERVED_MEMORY + 0x10000)

[ 本帖最后由 chenall 于 2012-2-10 01:16 编辑 ]
回复

使用道具 举报

2393#
 楼主| 发表于 2012-2-10 10:41:18 | 只看该作者
cat 修改后又出问题啦
-----------------------
ChangeLog_chenall.txt
2012-02-01
5./stage2/cmdline.c
  fixed skip_to issue. e.g. cat --locate="abc \"def" (md)0x300+1.

[ 本帖最后由 zhaohj 于 2012-2-10 11:42 编辑 ]

Snap1.jpg (11.27 KB, 下载次数: 162)

Snap1.jpg
回复

使用道具 举报

2394#
发表于 2012-2-10 13:40:51 | 只看该作者

回复 #2397 zhaohj 的帖子

试了一下终于明白了,因为"的关系。\x22等于"
导致出错,下午再改改。
回复

使用道具 举报

2395#
发表于 2012-2-10 16:51:17 | 只看该作者

回复 #2394 chenall 的帖子

>>>Q: 抱歉,我将cofs设置成tinyslat所在的分区,就出现这个问题。设置到其它分区问题得到解决。
>>>这不是问题的关键,当然了能用就好,有兴趣可以继续找出问题的原因.

将尽我所能试试查找原因。

>>>Q:另有一个疑问:
>>>如果你的命令没有错,这是不可能的.
>>>楼上,Plantsoot 已经证明过了,是完全一样的.

今天再次测试,证明我错了。可能是手误?抱歉。
回复

使用道具 举报

2396#
 楼主| 发表于 2012-2-13 12:11:12 | 只看该作者
以下P处理,在2012-01-17之前的g4d版本中运行正常,以后的版本都不正常,只能输出到屏幕,很奇怪。
!BAT
debug off
echo PCI$ > (md)0x200+10
WENV for /f "eol=; tokens=1-2 delims==;" %i in ( /srs/srsid/srsid.txt ) do (set a=$u,%i ; check "$${a:0:4}"=="PCI\" ]]& set b=%j ]]] echo -n $ ]]] echo $${a}=$${b}) >> (md)0x200+10
------------------
我只想查明原因是什么引起的,C大看看是否是bug。

改成下面任何版本又都正常:
!BAT
debug off
echo PCI$ > (md)0x200+10
WENV for /f "eol=; tokens=1-2 delims==;" %i in ( /srs/srsid/srsid.txt ) do (set a=$u,%i ; set b=$u,%j ; check $${a:0:4}<>PCI\ continue ; echo -n $ ; echo $${a}=$${b}) >> (md)0x200+10

[ 本帖最后由 zhaohj 于 2012-2-13 12:14 编辑 ]

SRSID.rar

4.26 KB, 下载次数: 27, 下载积分: 无忧币 -2

回复

使用道具 举报

2397#
发表于 2012-2-13 14:45:06 | 只看该作者
@chenall

c大  下面批处理2012-01-17及之前的正常  之后的执行报错  没找到原因  能否看下

批处理名为UP

  1. !BAT
  2. :up_check
  3. set up=%up:~,-1%
  4. call Fn.15 "%up%" "" && call Fn.15 "%up:~-1%" ")" && if not "%up:~-1%"=="/" goto :up_check ! echo 2
  5. exit
复制代码


如果up指定的路径含空格的话  如set up=(hd0,0)/documenu\ and\ settings/  执行UP就报错  是Error.30 Invalid argument

指定的路径不含空格就没事
回复

使用道具 举报

2398#
发表于 2012-2-13 15:07:24 | 只看该作者

回复 #2400 zhaohj 的帖子

应该是因为"PCI\"的原因。新的版本有对这个进行修改,会导致\"后面的“被转义。

我想想看有没有什么好的办法。。。否则只能暂时回到旧的版本。
回复

使用道具 举报

2399#
发表于 2012-2-13 15:08:57 | 只看该作者

回复 #2401 sratlf 的帖子

可能和上面的有关系,稍后我重新编译一个版本试下。
回复

使用道具 举报

2400#
发表于 2012-2-13 15:24:50 | 只看该作者
先试试这个,恢复到以前的模式不处理""里面的\。

如果需要在""里面使用"自己使用转义符\x22

grub4dos-0.4.5c-2012-02-13.7z

248.64 KB, 下载次数: 51, 下载积分: 无忧币 -2

回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-29 18:03

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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