2015-02-03 00:00:00
来 源
中存储网
Ubuntu
早上习惯在Ubuntu 11.04 下打开防火墙,竟然报错,看样子和8.04版本firestarter里面错误一样,还是配置文件取值的问题(奇怪为什么老有这个问题呀) 先秀一下我升级后的版本 www@linux:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubu

早上习惯在Ubuntu 11.04 下打开防火墙,竟然报错,看样子和8.04版本firestarter里面错误一样,还是配置相关文件取值的问题(奇怪为什么老有这个问题呀)

先秀一下我升级后的版本

www@linux:~$ lsb_release -a
No LSB modules are available.
Distributor ID:    Ubuntu
Description:    Ubuntu 11.04
Release:    11.04
Codename:    natty

还是老办法,修改firestarter的配置相关文件:/etc/firestarter/firestarter.sh ,错误的原因在于脚本没有取到参数值,原来取值的shell是

# External network interface data
IP=`LANG=C /sbin/ifconfig $IF | grep inet | cut -d : -f 2 | cut -d   -f 1`
MASK=`LANG=C /sbin/ifconfig $IF | grep Mas | cut -d : -f 4`
BCAST=`LANG=C /sbin/ifconfig $IF |grep Bcast: | cut -d : -f 3 | cut -d   -f 1`

错误就是在设置LANG=C上面,我测试了一下,这样会取到空值:

www@linux:~$ export LANG=C
www@linux:~$ /sbin/ifconfig wlan0
wlan0     Link encap:???  ???? 00:26:c7:76:2e:12
inet ??:192.168.1.100  ??:192.168.1.255  ??:255.255.255.0
inet6 ??: fe80::226:c7ff:fe76:2e12/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  ???:1
?????:89993 ??:0 ??:0 ??:0 ??:0
?????:83451 ??:0 ??:0 ??:0 ??:0
??:0 ??????:1000
????:68073259 (68.0 MB)  ????:13938821 (13.9 MB)

修正这个错误很简单,还是我刚才贴的8.04firestarter错误的链接,在脚本的第三行增加LANG=en_US,取消掉LANG=C,大致的内容是:

#!/bin/bash
#-----------( Firestarter Control Script )-----------#
 
#增加接下来这行
 
LANG=en_US
 
#中间
 
#内容
 
#省略
 
# External network interface data
IP=`/sbin/ifconfig $IF | grep inet | cut -d : -f 2 | cut -d   -f 1`
MASK=`/sbin/ifconfig $IF | grep Mas | cut -d : -f 4`
BCAST=`/sbin/ifconfig $IF |grep Bcast: | cut -d : -f 3 | cut -d   -f 1`
NET=$IP/$MASK

最后祝大家好运。

声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。