2010-02-09

「手把手」調教 Ubuntu 9.10  圖型介面 ADSL 不行撥號嗎?

使用了 Ubuntu 9.10 以來,覺得對初學者造成最大的困擾就是,圖形介面的 ADSL 撥號無法使用,教初學者情何以堪,網路上的處理方法對初學者來講,我想就像是天書一樣吧。

雖然,我寫的 perfect_NetworkManager 腳本,也需要一點點指令,但只有解壓縮跟使用腳本的指令,相對來講簡化了許多。

壓縮檔裡我放入需安裝的 DEB 檔,不管是 I386 或 AMD64 都有,兩個版本我都分別測試過了,如有問題在部落格回應吧。


無法連上網路者
Step1、首先請 按此下載ADSL.tar 下載後,請放到你的存裝置,如 USB硬碟/CDRW/DVDRW 等等,我以檔案燒入CDRW為例。接著開啟 Ubuntu ,進入後在面版上的位置按左鍵→電腦在CD/DVD之後點兩下



Step2、在壓縮檔點兩下解開最近使用的下方就是家目錄,hepha為我登入的ID,→解開



Step3、接著按面版上的應用程式附屬應用程式終端機



Step4、進入家目錄下的 ADSL 目錄,每輸入一個指令按 Enter 才會執行。
cd ~/ADSL

Step5、執行腳本囉
./perfect_NetworkManager -i


以下就是安裝過程囉




可以連上網路者
如果你已經可以連上網路,想用圖型介面撥號也是可以的哦,操作比較簡短,一樣開啟終端機。

Step1、copy & pass 到終端機,安裝過程同上。
wget -c http://dl.dropbox.com/u/313781/ubuntu/ADSL.tar -P ~
tar xvf ~/ADSL.tar
cd ~/ADSL
./perfect_NetworkManager -i



更新圖型介面撥號程式
加入ppa來源這樣有新版的才能更新。
sudo add-apt-repository ppa:network-manager/trunk
sudo apt-get update
sudo apt-get upgrade




後記
我用圖型介面撥號程式,是從9.10開始使用的,之前都是用 DHCP 上網在數據機直接設定硬撥,網路線插上去都不用設定,就可以上網囉,真正接觸圖型介面,是為了處理這個 Bug,一直搞不太定,可以上網還是不太滿意,最主要就是家中有 Windows,你會連不到對方的電腦,因為你沒有 本機IP,不信的話你可以在終端機 ping 對方的 IP,或者你按位置網路,會出現錯誤。

ping不到
ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.


無法掛載位置

在圖型介面,這點我不管怎麼設,還是一樣不行使用,只好找資料使用指令方式設定了。
指令是sudo ifconfig eth0:0 IP netmask 網路遮罩 up,這裡我以IP 192.168.1.100、網路遮罩 255.255.255.0為範例。

使用這個指令會虛擬一張網卡,並設定需要的資料,這樣一連就可以連到對方的電腦了。
sudo ifconfig eth0:0 192.168.1.100 netmask 255.255.255.0 up

ping 有反應了
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=1.90 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=0.335 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=0.233 ms


找的到對方的電腦囉


如果你上網時中斷重新撥號或重新開機時,每次都要設定一次 IP﹙這點真的沒折﹚,有個比較簡便的方法,寫個 Shell Script 來使用會比較方便。

echo "#!/bin/bash
cat <<EOF
設定 IP 與 遮罩
EOF
sudo ifconfig eth0:0 192.168.1.100 netmask 255.255.255.0 up">~/rip
chmod +x ~/rip
sudo mv ~/rip /usr/bin/


要使用就在終端機打rip即可
rip
設定 IP 與 遮罩


本來預計寫到但有一個問題在我全新安裝,並升級之後就自己好了,那就不用寫了,原本是要關 IPv6 現在不關網路連線也不會緩慢了,我也可以放心去玩10.04了,有好幾次 Ubuntu 被我玩壞還是又裝回9.10,不把這問題搞定總覺得有件事沒做好。




perfect_NetworkManager 原始碼參考用
#!/bin/bash
# by hepha
# http://playubuntu.blogspot.com/
# GPL or CC-BY-NA-SA
# 版號1 (2010-2-2)
OSVER=`lsb_release -cs`
echo welcome to perfect_NetworkManager
echo "你的版本是 $OSVER "
En=/etc/network
EN=/etc/NetworkManager
Bp=backup
if [ $OSVER != karmic ] ; then
 echo "非 ubuntu karmic版本不適用"
 exit
fi
if [ `getconf LONG_BIT` = "32" ] ; then
 Machine="i386"
fi
if [ `getconf LONG_BIT` = "64" ] ; then
 Machine="amd64"
fi
B_nm (){
echo "備份 nm-system-settings.conf 到 `pwd`/$Bp"
cp $EN/nm-system-settings.conf $Bp/nm-system-settings.conf
}
B_in(){
echo "備份 interfaces 到 `pwd`/$Bp"
cp $En/interfaces $Bp/interfaces
}
INSTALL (){
mkdir -p $Bp
test -e $Bp/nm-system-settings.conf || B_nm
test -e $Bp/interfaces || B_in
echo "你要安裝 network-manager 嗎?"
read -p "開始安裝﹙Y/N﹚:" -n1 yn
echo
if [[ $yn = y && $yn = y ]];then
 echo "請輸入你的管理員密碼"
 sudo dpkg -i libnm-glib2_0.8~rc3-0ubuntu1~nmt1~karmic_$Machine.deb libnm-util1_0.8~rc3-0ubuntu1~nmt1~karmic_$Machine.deb modemmanager_0.3-2~nmt1~karmic_$Machine.deb network-manager_0.8~rc3-0ubuntu1~nmt1~karmic_$Machine.deb
 echo
 echo "設定 $En/interfaces $EN/nm-system-settings.conf"
 echo -e 'auto lo\niface lo inet loopback' | sudo tee $En/interfaces
 sudo sed -i 's/managed=false/managed=true/g' $EN/nm-system-settings.conf
 echo
 echo "重新啟動 network-manager"
 sudo service network-manager restart
 echo
 echo
 echo "你已經可以在右上方的面版設定 Adsl 撥號,設定完成即可上網"
 echo -e "在連線圖示上按右鍵\t*編輯連線*\t*DSL*\t*加入*"
 echo -e "請填入\t*使用者名稱*\t*密碼*\t並勾取*自動連線*\t*所有使用者皆可使用*"
 echo
 echo -e "請切換至\t*IPv4設定*\t*只用﹙PPPoE﹚自動位址\t*請填入DNS伺服器位置*"
 echo -e "如不知道可以用 google 的 DNS :8.8.8.8 8.8.4.4"
 echo -e "設定好後請按套用並在圖示上\t*按左鍵*\t*DSL連線*\t即可上網。"
 echo
 echo "祝你使用愉快 Bye ^^"
 echo
 else
 echo
 echo "離開本程式"
fi
}
RESTORT (){
cp $Bp/interfaces $En/
cp $Bp/nm-system-settings.conf $EN/
}
#選單
case "$1" in
 -i)
  INSTALL
  ;;
 -r)
 RESTORT
 ;;
esac

參考資料:
ubuntu 9.10無法ADSL撥號以及Network Manager顯示設備未託管的解決辦法
Ubuntu 9.10 固定ip 一直無法設定成功