歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux教程

Ubuntu 11.04 下 Firestarter 無法啟動解決辦法

早上習慣在Ubuntu 11.04 下打開防火牆,竟然報錯,看樣子和8.04版本firestarter裡面錯誤一樣,還是配置文件取值的問題(奇怪為什麼老有這個問題呀)

先秀一下我升級後的版本 

www.linuxidc.com@linuxidc:~$ 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.linuxidc.om@linuxidc:~$ export LANG=C
www.linuxidc.om@linuxidc:~$ /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

最後祝大家好運 

Copyright © Linux教程網 All Rights Reserved