Arm-Linux根文件系统网络配置小结

原创作品,转载时请务必以超链接形式标明文章原始出处:http://blog.csdn.net/gqb666/article/details/8802184,作者:gqb666

   本文分三点来记录嵌入式Linux根文件的一些网络配置技巧:

1、对开发板配置静态IP:

  将根文件系统/etc/network/interface文件中

auto eth0
iface eth0 inet dhcp
        pre-up /bin/grep -v -e "ip=[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+" /proc/cmdline > /dev/null

eth0的DHCP配置修改为static ip方式

auto eth0
iface eth0 inet static
    address 192.168.1.100
    netmask 255.255.255.0
    network 192.168.1.0
    gateway 192.168.1.1 

即可以静态IP方式启动。

2、复制文件系统网卡名eth0变化的解决方法:(同样适合虚拟机文件拷贝)

   根文件系统每复制一次,网卡名字后缀就要加1,比如复制两次根文件系统eth0就会变成eth2。其原因是Linux为防止网络内有相同的MAC地址而采用一种自动探测机制,同时也会改为网卡名字。其解决方法:

修改/etc/udev/rules.d/70-persisten-net.rules文件

#PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="……", ……, KERNEL=="eth*", NAME="eth0"
#PCI device 0x1022:0x2000 (vmxnet)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="……", ……, KERNEL=="eth*", NAME="eth1"
#PCI device 0x1022:0x2000 (vmxnet)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="……", ……, KERNEL=="eth*", NAME="eth2"

将SUBSYSTEM开头的所有3行都注释掉即可。

#PCI device 0x1022:0x2000 (pcnet32)
#SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="……", ……, KERNEL=="eth*", NAME="eth0"
#PCI device 0x1022:0x2000 (vmxnet)
#SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="……", ……, KERNEL=="eth*", NAME="eth1"
#PCI device 0x1022:0x2000 (vmxnet)
#SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="……", ……, KERNEL=="eth*", NAME="eth2"

重新启动系统网卡名又会变成eth0了。


3、为根文件系统设置DNS服务器:
只需要在 /etc/resolv.conf 文件中加入一行(原来默认为空)
nameserver DNS 服务器地址

举例:

nameserver 202.106.196.115

启动/重启/停止网络命令:
/etc/init.d/networking start | restart | stop
重启网络即可从开发板通过telnet或浏览器上网了。



你可能感兴趣的:(文件系统,嵌入式Linux)