2009-01-24

「手把手」安裝、設定與使用IEs4Linux、FreeGrab、SmartGet-Wine三部曲

轉換到Ubuntu有個蠻大的問題,就是要用FreeGrabSmartGet下載檔案比較麻煩點,還沒學會用VirtualBox裝Windows前,我都開兩台電腦,一台跑Ubuntu一台跑Windows,後來覺得這樣太浪費電了,學著在VirtualBox把Windows裝起來,這樣下載就較為方便。

2010.08.08 更新
  1. 更新IEs4linux安裝方法,請到老牌的安裝Internet Explorer工具IEs4linux敗部復活 [9.04,9.10,10.04]觀看,安裝完成在繼續回到此篇觀看SmartGet與FreeGrab使用方法。
  2. 網友回應,下載連結與解壓縮檔不符,目前已經修正。


可是用久了就覺得要下載得開VirtualBox下的Windows,單單待機就要耗掉CPU22%左右,加上用SmartGet開五線下載,總共耗掉約CPU44%。

雖說,在Ubuntu上使用SmartGet下載在某種特定情形下,CPU暴衝會秏掉50~100%資源、畫面會短暫停止﹙滑鼠點沒反應﹚兩到三分鍾,但我有找出來如何必免這情形,還有兩個下載軟體的圖示會有點不正常﹙不影響使用﹚,如你確定要這樣下載的話,請學我自我催眠「可以下載就好^ ^」,除非軟體重寫變跨平台,我們只能說能用就好囉。


要在Ubuntu上使用FreeGrab、SmartGet需要安裝Wine及IEs4Linux,如你還沒安裝請參考Wine首部曲安裝和Wine二部曲去除亂碼。

什麼是IEs4Linux?
IEs4Linux是一個讓您可以更簡單地在 Linux 上執行 微軟網路探險家(IE) (或是任何可以執行 Wine 的作業系統平台) 無需繁複的滑鼠點選,沒有無聊的安裝程序,也沒有複雜的 Wine 設定。只有一個簡單的腳本檔(script)您可以一次取得三個版本的IE來測試你的網站。同時這個 script 是自由軟體並且是開放原始碼的。
資料來源:IEs4Linux官網

安裝IEs4Linux

Step1下載程式並解壓縮到家目錄下,並且跳到安裝資料夾
wget http://www.tatanka.com.br/ies4linux/downloads/ies4linux-latest.tar.gz && tar zxvf ies4linux-latest.tar.gz -C ~/ && cd ies4linux-*

Step2安裝前需要修改兩處檔案,先修改messages.txt
gedit lib/messages.txt

Ctrl+I輸入19跳到整行以zh tw zhTW TW取代存檔

Step3再修改functions.sh
gedit lib/functions.sh

Ctrl+I輸入98跳到,整行以pid=$(LC_ALL=C LANG=C wget -q -b -t 1 -T 5 -U "$useragent" -o /dev/null $URL $WGETFLAGS -O "$file" | sed -e 's/[^0-9]//g')取代存檔

Step4開始安裝囉
./ies4linux

看到IEs4Linux 2 只在新版 (0.9.x) 的 Wine 上測試過。您正在執行舊版的 Wine。建議您更新到最新版 (前往: winehq.com)。別理他,我們比0.9版還新



安裝時你可能會遇到解壓縮CAB檔發生錯誤,這有可能是檔案的CRC錯誤,或者是下載時有漏掉檔案,我把安裝的檔案打包,你可以直接使用在安裝就不會發生這問題,當初,我也是下載好多次才成功,再嚐試時又發生這問題,多花了三小時左右才解決。


Step5使用我下載好的安裝檔,可以避免發生這問題,裡面的安裝檔案只有IE6中文版哦。
下載檔案到家目錄下面,然後在解壓縮在安裝。
tar xjvf ~/ie6.tar.bz2 -C ~/ &&  cd ~/ies4linux* && ./ies4linux --no-gui



這次使用./ies4linux --no-gui沒圖形介面安裝,他預設是安裝IE6與Flash9所以不用其它參數設定,更多參數請用./ies4linux -h查詢。

設定IEs4Linux

雖說IEs4Linux需要Wine才能使用,但兩者間設定檔不能通用,要獨立設定才行,所以連去除中文亂碼也要重做一次,另外他的儲存槽設定不能使用,只能手動設定,以下逐步講解如何設定。

Step1參照前篇Wine二部曲設定字型,其中字型需連結到ies4linux。
ln -s ~/.fonts/droid/DroidSansFallback.ttf ~/.ies4linux/ie6/drive_c/windows/Fonts/

匯入修改字型的登錄檔路徑也改為ies4linux,用env WINEPREFIX=可以設定ies4linux所在位置。
env WINEPREFIX=~/.ies4linux/ie6 regedit

Step2設定前先下載我打包好的裡面包含FreeGrab、SmartGet程式和Shell與Icon還有一個dll檔,解壓縮後會放到~/FreeSmg,等會用到Shell與Icon就去那裡找。
wget http://hepha.love.googlepages.com/FreeSmg.tar.bz2 -O FreeSmg.tar.bz2 && tar xjvf FreeSmg.tar.bz2 -C ~/

Step3為FreeGrab建立捷徑,首先開啟Nautilus選至~/FreeSmg,在free這個Shell按著左鍵不放拉到上方面板。


彈出一個對話框,名稱隨便填→按左邊的小圖示


瀏覽填入:~/FreeSmg/free.ico→確定確定


Step4接著為SmartGet建立捷徑,首先開啟Nautilus選至~/FreeSmg,在smg這個Shell按著左鍵不放拉到上方面板,彈出一個對話框,名稱隨便填→按左邊的小圖示→在瀏覽填入:~/FreeSmg/smg.ico→確定確定

至此兩個捷徑都設好了,可以按按看程式能不能執行,你會發覺只有FreeGrab能執行SmartGet執行不了,我們就是為了SmartGet而安裝ies4linux,往下繼續做設定就能讓他動囉。


Step5如前所言它的儲存槽設定壞了不能用,我們只好手動設定連結囉像Windows一般預設都安裝在C糟,Wine也是一樣不過他多了個Z槽連結到根目錄,那我們剩下用d槽~y槽了。


以我為例子~/download設為d:﹙d槽﹚、/media/download/設為e:﹙e槽﹚,那就這樣設定。
ln -s ~/download/ ~/.ies4linux/ie6/dosdevices/d:
ln -s /media/download/ ~/.ies4linux/ie6/dosdevices/e:

看看有沒有設定好
ls ~/.ies4linux/ie6/dosdevices/


ls ~/.ies4linux/ie6/dosdevices/
lrwxrwxrwx 1 hepha hepha 10 2009-01-23 20:53 c: -> ../drive_c
lrwxrwxrwx 1 hepha hepha 21 2009-01-24 05:50 d: -> /home/hepha/download/
lrwxrwxrwx 1 hepha hepha 16 2009-01-24 05:50 e: -> /media/download/
lrwxrwxrwx 1 hepha hepha 1 2009-01-23 20:53 z: -> /

Step6最後只要設定讓SmartGet在Windows 2000版本使用,就可以開始下載囉。
env WINEPREFIX=~/.ies4linux/ie6/ winecfg

增加程式設定
不要調預設設定開啟程式會變非常慢。


選擇~/FreeSmg/SmartGet下的SMG.exe檔開啟


Windows版本調成Windows 2000確定




SmartGet使用小補帖
如你有時要執行時會開不了,可能是rpcrt4.dll被更新到,我有準備給你們替換,只要覆蓋就去即可。
cp ~/FreeSmg/rpcrt4.dll ~/.ies4linux/ie6/drive_c/windows/system32/rpcrt4.dll

下載時最小化視窗可避免CUP暴衝秏掉太多資源切記


我有最小化視窗哦,只是抓圖給你們看證明可以下載。


在下載時不要修改設定,畫面會短暫停止﹙滑鼠點沒反應﹚兩到三分鍾,要修改前請在右上方的小圖示按右鍵→全部停止後在修改。

關閉SmartGet時會出現錯誤對話框,此屬正常現象。另外,要關機、重開機、重登時請先關閉SmartGet,不然他有時會記錄到你下載的資料。

參考資料:

[教學] 安裝 Wine 跟 IEs4Linux

ubuntu使用SMG(smartget)的方法