LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2431|回复: 25

请教高人解释一下gentoo手册中配置网卡的这几步到底是为什么?

[复制链接]
发表于 2007-8-21 19:28:52 | 显示全部楼层 |阅读模式
当年装gentoo时,照着手册配网卡,先链接,再设置net文件,但是回头想想发现有点不对,于是开始在网上搜索linux网卡的配置方法说明,发现每个版本的linux的网卡配置方法并不一样,gentoo也是独一份,而我现在遇到一些使用问题,更让我对gentoo配置网卡的做法产生了一些疑问,特此请教:

按照官方安装文档,不管你有几个网卡,哦,错了,应该说了不管有几个网络连接界面-iface(ppp拨号产生的也算),你都得这么设置

举例
首先,产生一个链接

ln -s net.lo net.eth1

这样/etc/init.d/的下面就出现了net.eth1的启动脚本

然后在/etc/con.f/net里设置关于这个界面的配置,包括IP网关等,

最后,如果你要让它开机就能启动,你还必须

rc-upade add net.eth1 default

我现在不理解的地方在于第一步,第一步,为什么要这么干,这么干到底是做什么的?难道说回环界面lo的启动脚本可以复制一个给eth1,ppp0等直接使用吗?

我之所以如此问是我发现了一些奇怪的问题,那就是我的机器按照上面这一套做下来后,如果把网卡加入了开机启动,那么,哪怕你以后运行了
rc-update del net.eth1 default
把它从默认启动里删除,它仍然能开机启动,而且,从启动时滚动的命令行显示的信息可以很明显的看到eth1是紧跟着lo启动的,等他启动后,后面才开始出现default里的启动项目,这让我大惑不解,开始怀疑gentoo的开机启动模式的设计……

另外,最近发现了第二个问题,我设置了ppp0这个拨号上网的界面并且开机自启动后,ssh被卡住了,每次启动时,总会提示shh必须等待ppp0启动完后才能启动,然后即使ppp0启动完毕连上网,ssh服务也没能启动起来,远程登录无效,必须手动启动

这让我进一步怀疑ln -s net.lo net.xxx这个命令到底做了什么,请高人指点……
发表于 2007-8-21 19:32:41 | 显示全部楼层
Post by abcbuzhiming

我之所以如此问是我发现了一些奇怪的问题,那就是我的机器按照上面这一套做下来后,如果把网卡加入了开机启动,那么,哪怕你以后运行了
rc-update del net.eth1 default
把它从默认启动里删除,它仍然能开机启动,而且,从启动时滚动的命令行显示的信息可以很明显的看到eth1是紧跟着lo启动的,等他启动后,后面才开始出现default里的启动项目,这让我大惑不解,开始怀疑gentoo的开机启动模式的设计……


我和zhoukb也为此郁闷过,有高手出来解释一下就再好不过了
回复 支持 反对

使用道具 举报

发表于 2007-8-21 19:40:07 | 显示全部楼层
/sbin/rc 文件是系统启动的shell脚本,不满意可以改,启动不了不要找我,哈哈~~~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-21 19:56:10 | 显示全部楼层
Post by 抽烟斗的狗
/sbin/rc 文件是系统启动的shell脚本,不满意可以改,启动不了不要找我,哈哈~~~


这个解释很奇怪吧,网卡启动的脚本明明依赖的是init.d下的net.xxx,只是这个net.xxx被添加到了/etc/runlevels/default下面去了而已,当default下面已经没有这个脚本以后,脚本仍然能自动启动,这实在让人费解,gentoo的启动模式到底是怎么回事……
回复 支持 反对

使用道具 举报

发表于 2007-8-21 21:02:54 | 显示全部楼层
rc-upade add net.eth1 default
这个命令已经把网卡的启动加进系统的runlevels,runlevels是gentoo启动时的控制,也就是随系统的安排在启动时启动,而init.d是系统已经启动后的控制,你可以在启动后来关闭和启动网卡:
/etc/init.d/net.eth0 stop
/etc/init.d/net.eth0 start
是两个阶段的控制,我的理解,哈哈~~~~
为何不能删除runlevels的设定,我不会,没需要如此做过.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-21 21:39:36 | 显示全部楼层
Post by 抽烟斗的狗
rc-upade add net.eth1 default
这个命令已经把网卡的启动加进系统的runlevels,runlevels是gentoo启动时的控制,也就是随系统的安排在启动时启动,而init.d是系统已经启动后的控制,你可以在启动后来关闭和启动网卡:
/etc/init.d/net.eth0 stop
/etc/init.d/net.eth0 start
是两个阶段的控制,我的理解,哈哈~~~~
为何不能删除runlevels的设定,我不会,没需要如此做过.


你似乎没有弄明白我的意思,rc-upade add net.eth1 default这个命令等于说把net.eth1这个启动脚本调入了runlevels,由系统在启动时调用并启动,这好比我在windows下的开始——启动里增加了一个程序的快捷方式,然后奇怪的就在这里,凭什么当我把这个快捷方式从runlevel里删除以后,这个快捷方式所指向的设备或者程序,仍然能随着系统启动,这很可怕的,这意味这gentoo的启动模式对我来说不透明,试想一下如果你把QQ的快捷方式从windows的开始——程序——启动里删除后,再次启动后你的机器仍然自动蹦出一个QQ的登陆框,一般人看到这会怎么想?——“该死的,我的机器是不是中毒了”……老实说我第一次发现这个问题时就产生了同样的怀疑,为什么我已经把这设备从runlevels里删除了,它仍然能在系统启动时自动运行,至于后面的什么
/etc/init.d/net.eth0 stop
/etc/init.d/net.eth0 start
的不是我们讨论的范畴,我们现在讨论的焦点就一个——gentoo的启动程序设备加载机制是怎么回事?要么,这个网卡只要设置好链接和net文件里的设置,实际上不需要rc-upade add net.eth1 default就能够自己启动(其实我考虑过这种可能,因为在设置好eth1的IP,mask,route参数以后,等于eth1这个界面已经被我定了,这有点类似windows XP下的给网卡指定IP这个设置,被指定了IP的联网界面开机时会自动起效并完成网络连接),rc-upade add net.eth1 default这个命令是在你没有给定联网界面时的强行启动方式……要么就是gentoo启动时加载的方式仍然有秘密。

顺便说一下,我这个人有系统洁癖,我不能容忍系统背着我干任何我不明白的事情,曾经有个叫dhcpcd的程序,因为他会莫名其妙的,在我根本没在net文件里设置任何网卡用dhcp得到IP的情况下,如果我的一块网卡没IP时,启动系统居然能看见它自己启动起来给我那个没IP的网卡分配IP……当我看到这一情况又搞不清楚这dhcpcd为何会自己启动的情况下(连windows都可以禁用dhcp client服务,你个小样居然敢不经我允许启动),我立马把这程序踢出了我的系统,如果我找不到资料能解释gentoo会自动启动我网卡的合理解释,那我最后只能把他踢出我的电脑了……
回复 支持 反对

使用道具 举报

发表于 2007-8-21 21:54:31 | 显示全部楼层
Post by 杨珂
我和zhoukb也为此郁闷过,有高手出来解释一下就再好不过了

感觉是udev的功劳,不知是否对否?
现在我已将  /etc/init.d/net.eth*全部删除,用networkmanger来管理,具体可参考这篇文章http://gentoo-wiki.com/NetworkManager
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-21 22:07:05 | 显示全部楼层
Post by zhoukb
感觉是udev的功劳,不知是否对否?
现在我已将  /etc/init.d/net.eth*全部删除,用networkmanger来管理,具体可参考这篇文章http://gentoo-wiki.com/NetworkManager


貌似我并没有启动udev,
不过有一点你倒是说对了,就是如果删除了etc/init.d/net.eth*,那么eth*就真的无法自动启动了……

我觉得最重要的是搞清楚gentoo的这种启动机制到底怎么工作的,否则有一天被黑客利用了怎么办?
回复 支持 反对

使用道具 举报

发表于 2007-8-21 22:08:56 | 显示全部楼层
Post by zhoukb
感觉是udev的功劳,不知是否对否?
现在我已将  /etc/init.d/net.eth*全部删除,用networkmanger来管理,具体可参考这篇文章http://gentoo-wiki.com/NetworkManager


又从你这学到东西了
才搬了个家 网络有点问题 一空就试试 ;)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-21 22:17:18 | 显示全部楼层
行了,回到正题上来吧,为什么这个东西会自动启动,至于什么第三方程序以后再说吧
回复 支持 反对

使用道具 举报

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

本版积分规则

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