再论Redhat的不规范性——网络配置文件部分

今天bigfatcat问我

/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/networking/profiles/default/ifcfg-eth0
/etc/sysconfig/networking/devices/ifcfg-eth0

这三个文件,到底哪个是网络参数的配置文件。这可把我问住了。于是看了一下 /etc/init.d/network 脚本,发现是第一个。那另外两个是干什么的呢?

过了一会,还是bigfatcat,发消息说他们同事在ifcfg-lo:3文件里写下了如此参数:
DEVICE=lo:2
IPADDR=58.68.203.4

文件名,和该文件内的参数,都指示同一个意思,结果就造成了语义上的混乱。这个是不符合Unix哲学的正交规则的

由此看来,Redhat实在是太不规范了。希望大家以后不要用它。

This entry was posted in 默认分类 and tagged , , . Bookmark the permalink.

2 Responses to 再论Redhat的不规范性——网络配置文件部分

  1. JulyClyde says:

    前者在文档里其实是有说明的
    http://www.centos.org/docs/5/html/5.2/Deployment_Guide/s1-sysconfig-etcsysconf-dir.html

    可惜现在学习Redhat的人,大都是刚入门的新手,手头能找到的资料和人员也大都是Redhat的,而这些人往往忽视系统学习,造成正规的知识无法传播。唉……

  2. JulyClyde says:

    后来偶尔发现,如果在多个ifcfg中指定同一个DEVICE,确实可以把多个IP地址配置到这个接口上,但ifconfig只能发现一个。因为ifup脚本是调用ip addr命令来配置地址的,和ifconfig的方式不同

Leave a Reply

Your email address will not be published. Required fields are marked *