发现新的BUG,也许可以解释为什么安装完系统后主机名全是MagicLinux
MGC2.1经常在显卡驱动安装或其它情况使hostname设置从用户设置的主机名改回MagicLinux。原因在于MI没有在/etc/sysconfig/network写入用户定义,我在post_install.sh里定义如下:
#fix hostname
hostinfo=`sed -e 's/127.0.0.1//g;s/localhost//g;s/.localdomain //g;s/\s//g' /etc/hosts`
sed -i "s/MagicLinux/$hostinfo/g" /etc/sysconfig/network
hostname $hostinfo
这几句是sed编辑语句,用于将/etc/sysconfig/network的主机名从MagicLinux修改为/etc/hosts相同,并且在系统初装后是有效的。
[ 本帖最后由 haulm 于 2007-11-20 21:08 编辑 ] :?: :?: :?: :?: :?: :?: :?:
上面的文字是中文吗?
:shock: :shock: :shock: :shock: :shock: :shock: :shock: ??? 以前一直以为是 /etc/rc.d/rc.sysinit 这个文件中的代码导致的,但似乎又不是.....
显卡驱动的安装会导致/etc/sysconfig/network的hostname设置从用户设置的主机名改回MagicLinux。
我并没有装过驱动,但同样有这个问题.......:shock: 找了半天,最后发现仍然是MI的错误,而之所以重启后系统的主机名会改回去,那是因为自己写的sed脚本在修改/etc/sysconf/network时在等号和主机名前面多了tab空白符。 解决办法也就是修改hostinfo=`sed -e 's/127.0.0.1//g;s/localhost//g;s/.localdomain //g;s/ //g' /etc/hosts`为
hostinfo=`sed -e 's/127.0.0.1//g;s/localhost//g;s/.localdomain //g;s/\s//g' /etc/hosts`
\s代表所有的空白,包括空格和tab,若表达空格只要输入空格,\t表示tab空白。 原帖由 haulm 于 2007-9-23 19:43 发表 http://www.linuxfans.org/bbs/images/common/back.gif
找了半天,最后发现仍然是MI的错误,而之所以重启后系统的主机名会改回去,那是因为自己写的sed脚本在修改/etc/sysconf/network时在等号和主机名前面多了tab空白符。
Haulm, 你试试在 post_install.sh 中去掉重新设置 hostname 的脚本,
然后在安装完毕提示启动之前,切换到终端,mount 一下分区,看看
相关文件的设置是否正确。
因为 MI 对这部分的处理是非常简单的,我测试了一下,生成的结果也是正确的。
况且,你的脚本里也是引用 /etc/hosts 的值,而这个文件就是 MI 生成的。 /etc/sysconf/network的值不对,而且很诡异。暂时不想重装系统,所以就不测试了,但我能猜测到你那样的测试是正确的,问题可能出在于重启后第一次启动MagicLinux,如果不是MI的毛病会是哪些东西的毛病呢?
/etc/sysconfig/network-scripts/ifcfg-eth0这个文件我在MI进行了修改,可惜在初次启动系统宽带设置向导运行前,这个文件又被系统改了个默认值,理由是进入系统后发现了备份文件,内容是我用MI进行设置的,而新的设置文件是宽带设置向导写入的,如果拒绝宽带设置向导设置会设置成一个默认值。
[ 本帖最后由 haulm 于 2007-9-24 12:13 编辑 ] 发现这个毛病还是存在,顶下,还望尽快解决。 应该是网络设置部分的问题,和MI可能无关。
页:
[1]