沒那么神秘:Linux下生存實錄(6) |
發(fā)布時間: 2012/9/8 15:13:08 |
三、上網(wǎng)沖浪 問:宅男最怕失去啥?答:網(wǎng)絡(luò)(誰說蒼老師?@_@!)。網(wǎng)絡(luò)在給我們帶來無限樂趣的同時,也在不斷地改變著人類生活方式。 1、無線上網(wǎng)。目前無線上網(wǎng)形式包括:adsl+無線路由器方式、wlan方式、3g上網(wǎng)卡方式。第一種是大家平時最常見的方式,找運(yùn)營商開通寬度,自己買個無線路由器,將寬度帳號和密碼設(shè)置進(jìn)路由器,加電即用,該方式上網(wǎng)速度快,但受空間限制較大,一旦超過路由器信號覆蓋就無法上網(wǎng)了;第二種方式需要先聯(lián)系電信運(yùn)營商開通wlan業(yè)務(wù),聯(lián)網(wǎng)后在運(yùn)營商提供的頁面輸入帳號和密碼即可上網(wǎng),這種方式上網(wǎng)速度還是不錯,但,費(fèi)用高(按流量收費(fèi))、擇區(qū)域(只有在熱點(diǎn)附近才能使用wlan業(yè)務(wù),通常小城市熱點(diǎn)非常少,即便大城市也往往只有機(jī)場、星巴克等場所才有);第三種方式,3g上網(wǎng)卡方式,網(wǎng)速基本可接受(可在線觀看非高清視頻),包月費(fèi)用約100rmb,將上網(wǎng)卡插入電腦,隨時隨地即可高速上網(wǎng),這里為大家詳細(xì)介紹下這種方式。3g上網(wǎng)卡有兩個概念普及下,a)當(dāng)前中移動、中電信、中聯(lián)通等三家運(yùn)營商均有提供各自3g上網(wǎng)卡,分別采用td、cdma2000、wcdma等三種網(wǎng)絡(luò)制式,網(wǎng)速、費(fèi)用、穩(wěn)定性各不相同;b)華為、中興兩家是主流的卡設(shè)備提供商。運(yùn)營商、設(shè)備請按個人情況選擇,我用的是華為中移動g3上網(wǎng)卡,下文將以此為例進(jìn)行介紹。 華為g3上網(wǎng)卡官方僅發(fā)布了windows驅(qū)動,linux下咋辦?前面介紹升級內(nèi)核時我提過,windows與linux對驅(qū)動的管理模式差異,windows需用戶針對各個硬件單獨(dú)下載、安裝驅(qū)動,而linux在內(nèi)核中已經(jīng)集成了(絕大部分)硬件設(shè)備驅(qū)動程序,包括,這里說的華為中移動g3上網(wǎng)卡驅(qū)動。 大致原理如下:linux能識別g3上網(wǎng)卡,但默認(rèn)將其視為usb存儲設(shè)備,我們需要告訴系統(tǒng)(QQ:小默862693539)說"它是一個網(wǎng)絡(luò)撥號moden,不是u盤",一旦系統(tǒng)(QQ:小默862693539)接受了該設(shè)備模式轉(zhuǎn)換請求,后續(xù)只需用某種撥號程序執(zhí)行撥號操作即可。 先準(zhǔn)備兩個命令行程序:usb_modeswitch、wvdial,直接從軟件倉庫中安裝。另外,必須先關(guān)閉系統(tǒng)(QQ:小默862693539)自帶的網(wǎng)絡(luò)管理程序,在opensuse中,你可以這樣:yast->network devices->network settings->globa options->network setup methods->traditional method with ifup (instead of network manager) 以下操作均在命令行中執(zhí)行,全流程步驟如下: 1)獲取g3上網(wǎng)卡usb信息。執(zhí)行:
系統(tǒng)(QQ:小默862693539)顯示類似如下
記錄下你對應(yīng)12d1:1da1位置的信息; 2)g3上網(wǎng)卡模式轉(zhuǎn)換。 a)指定要進(jìn)行模式轉(zhuǎn)換的設(shè)備。用如下信息換/etc/usb_modeswitch.conf內(nèi)容:
b)進(jìn)行模式轉(zhuǎn)換操作。執(zhí)行:
顯示如下信息
注,這一步執(zhí)行過程可能僵死,重新插入上網(wǎng)卡重新執(zhí)行該步驟; c)確認(rèn)轉(zhuǎn)換完成。執(zhí)行第一步命令顯示如下信息
如果先前的1da1變?yōu)?d09那么恭喜你,關(guān)鍵一步已經(jīng)成功了; d)查看設(shè)備信息。執(zhí)行:
輸出信息為
那就轉(zhuǎn)換成功了; 3)撥號上網(wǎng)。 a)生成g3上網(wǎng)卡撥號配置文件。執(zhí)行:
輸出
b)修改撥號配置文件。將/etc/wvdial.conf文件內(nèi)容替換為
c)執(zhí)行撥號聯(lián)網(wǎng)。執(zhí)行:
輸出
4)其他說明。 a)如果是第一次使用3G上網(wǎng)卡,那么需要依次執(zhí)行以上每步,后續(xù)只需執(zhí)行wvdial命令即可撥號聯(lián)網(wǎng)(有時3G信號不穩(wěn)定,需要重復(fù)多次執(zhí)行wvdial命令); b)系統(tǒng)(QQ:小默862693539)自帶的網(wǎng)絡(luò)管理程序NetworkManager與wvdial命令有沖突,如果通過無線路由器上網(wǎng),請手工運(yùn)行NetworkManager命令,如果使用g3上網(wǎng)卡,需要先殺掉NetworkManager相關(guān)進(jìn)程(包括NetworkManager、dhclient、dhcpcd),再執(zhí)行wvdial撥號。下圖演示了如何殺NetworkManager相關(guān)進(jìn)程: (殺NetworkManager) 2、網(wǎng)頁瀏覽。瀏覽器是互聯(lián)網(wǎng)入口,各大互聯(lián)網(wǎng)公司必爭之地。firefox,源至linux下的著名瀏覽器,憑借其高安全性和可擴(kuò)充性贏得大量忠實用戶。
(firefox)
a)下載管理-download statusbar; b)鏈接拖拽-quickdrag; c)鼠標(biāo)手勢-all-in-one gestures; d)雙擊關(guān)閉tab-close tab by double click; e)側(cè)邊顯示-all-in-one sidebar; f)網(wǎng)頁代理-phzilla; g)vi模式-pentadactyl; 3、資源下載。作為一個linux狂熱用戶,也不得不承認(rèn),要讓電腦完全滿足我日常需求,或多或少還是要借助windows。有些linuxer認(rèn)為引入windows程序會玷污linux的純潔性,寧愿放棄某些應(yīng)用,也不愿和windows沾邊。個人認(rèn)為,任何事情不要走極端,我們玩linux,是為了享受它帶來的開放、自由、創(chuàng)新,但同時,也不要人為丟棄windows提供的特有服務(wù),畢竟,我們使用電腦是為了解決實際問題,而不是向誰證明“我是一名純正的linuxer”,否則只會顧此失彼。當(dāng)然,如果有功能類似的軟件,肯定會優(yōu)先選用linux版本,這點(diǎn)無須質(zhì)疑。 我們需要借助windows,這倒不是linux系統(tǒng)(QQ:小默862693539)本身不夠完善,而是某些應(yīng)用軟件開發(fā)商只發(fā)布了windows版本,且那些軟件又掌握著其所在領(lǐng)域的壟斷權(quán)(兩個特征:采用私有協(xié)議、用戶規(guī)模大),以至于第三方即便有心也無力在linux下開發(fā)類似軟件。對我而言,有幾類應(yīng)用讓我離不開windows:網(wǎng)上購物和資源下載。先說說下載,網(wǎng)購后文有提及。 在冏朝,說起下載,一定會想到迅雷,離線下載、高速通道、多協(xié)議支持等等特性是其他任何下載軟件無法提供的,特別是對冷門資源的下載非常有效。遺憾的是,迅雷僅提供windows版本,在linux下你是無法(直接)使用迅雷的。 有什么辦法能解決“linux下如何使用windows程序”的問題?目前有兩類解決方式:轉(zhuǎn)換層方式和虛擬機(jī)方式。在介紹這兩類方式前,先了解下為什么會存在這樣的移植性問題。之所以windows程序不能在linux下運(yùn)行,主要因為操作系統(tǒng)(QQ:小默862693539)api不同所致,類似迅雷這類應(yīng)用程序,由于對性能要求高、功能要求嚴(yán),導(dǎo)致開發(fā)時必須與操作系統(tǒng)(QQ:小默862693539)非常緊密聯(lián)系,采用了大量系統(tǒng)(QQ:小默862693539)提供的獨(dú)有api,最終成為windows上的“原生應(yīng)用程序”,一旦“原生應(yīng)用程序”找不對應(yīng)的操作系統(tǒng)(QQ:小默862693539)就找不到api,當(dāng)然也就無法正常運(yùn)行了。好了,根結(jié)就在api上。 我們說的第一類解決方式,是在linux中部署一套為windows api轉(zhuǎn)換層,我們讓應(yīng)用程序在轉(zhuǎn)換層中運(yùn)行,應(yīng)用程序繼續(xù)調(diào)用windows提供的api,轉(zhuǎn)換層接收到api請求后將具體執(zhí)行操作傳遞給linux系統(tǒng)(QQ:小默862693539),linux執(zhí)行完后返回的轉(zhuǎn)換層,轉(zhuǎn)換層將請求執(zhí)行結(jié)果反饋給windows應(yīng)用程序,完成一次api請求,這樣重復(fù)往返多次不同api調(diào)用,最終模擬完成整個應(yīng)用程序執(zhí)行過程。這種方式雖然可行,但也不完美:a)操作系統(tǒng)(QQ:小默862693539)本身幾乎就是由大量api組合而成,如果實現(xiàn)了所有windows api那就實現(xiàn)了windows系統(tǒng)(QQ:小默862693539),從工作量和復(fù)雜度上來說,這不是哪個開源社區(qū)能夠負(fù)擔(dān)得起的,所以,目前做得最好的轉(zhuǎn)換層(wine,收費(fèi)版本CrossOver)也僅實現(xiàn)了部分api,這意味著,不是所有windows程序都可以在轉(zhuǎn)換層中運(yùn)行,這是一個問題;b)既然是模擬api,那么從執(zhí)行效率(實時性)、執(zhí)行結(jié)果(正確性)上看,肯定與直接在windows中執(zhí)行存在明顯差距,時常會出現(xiàn)程序異常退出、運(yùn)行緩慢等等問題,這對實時性要求較高的應(yīng)用(在線3d游戲)來說,是用戶無法接受的。正因為此,不推薦該方式。 第二類解決方式是安裝虛擬機(jī),在虛擬機(jī)中安裝一個windows操作系統(tǒng)(QQ:小默862693539),這就像和你直接安裝的windows一樣,這樣就有了一整套完整的windows api,所有應(yīng)用程序均可正常運(yùn)行。virtualbox就是一款著名的虛擬機(jī)。
a)內(nèi)核管理。virtualbox對內(nèi)核版本非常敏感,一旦有內(nèi)核升級,必須對virtualbox核心模塊進(jìn)行重新編譯。別擔(dān)心,不需要你具備程序員的能力,virtualbox會自動執(zhí)行,你,負(fù)責(zé)為它準(zhǔn)備相關(guān)編譯工具--gcc、make、 kernel-dev。第一個是編譯器,第二個是代碼管理工具,第三個是編譯內(nèi)核需要的頭文件,這三個工具均可通過軟件倉庫安裝。一旦準(zhǔn)備好相關(guān)工具,用root權(quán)限執(zhí)行"/etc/init.d/vboxdrv setup"命令即可; b)顯卡與usb管理。要讓virtualbox中的windows支持3d顯卡加速、識別usb等等增強(qiáng)功能,必須安裝在windows中安裝virtualbox自帶的增強(qiáng)包。增強(qiáng)包只能在windows的安全模式下才能安裝完整,windows虛擬機(jī)啟動時按f8進(jìn)入安全模式,進(jìn)入virtualbox菜單devices->install guest additions進(jìn)行增強(qiáng)包的安裝; c)網(wǎng)卡管理。通常主操作系統(tǒng)(QQ:小默862693539)(linux)配有無線網(wǎng)卡、有線網(wǎng)卡、3g上網(wǎng)卡,必須先映射到客操作系統(tǒng)(QQ:小默862693539)(windows)后,在windows系統(tǒng)(QQ:小默862693539)中才能正常上網(wǎng)。進(jìn)入setting->network,將adapter1采用nat方式映射,將adapter2采用bridged adapter方式映射到eth0(有線網(wǎng)卡設(shè)備編號)、將adapter3采用bridged adapter方式映射到wlan0(無線網(wǎng)卡設(shè)備編號),進(jìn)入windows,在"更改適配器設(shè)置"中將看到這三個網(wǎng)卡映射,依次將adapter1命名為"3g直連"、adapter2為"有線橋接"、adapter3為"無線橋接",這樣,啟停不同網(wǎng)卡實現(xiàn)不同上網(wǎng)方式的切換。在windows虛擬機(jī)中看到的三張網(wǎng)卡如下(是的,下圖反映了我正在用3G上網(wǎng)): (映射到windows虛擬機(jī)中的網(wǎng)卡)
4、網(wǎng)上購物。網(wǎng)上購物涉及兩類操作,網(wǎng)銀支付和在線交流,前者就是各大銀行的在線支付程序,后者指的是淘寶旺旺軟件,典型的兩類windows原生應(yīng)用,請參考上例在windows虛擬機(jī)中安裝對應(yīng)軟件即可。唯一需要注意的u盾的識別,插入u盾后,先到virtualbox中setting->usb,勾選enable usb controller,再到windows虛擬機(jī)中devices->usb devices列表中選中對應(yīng)u盾,這樣,windows就能正確識別u盾了。其他usb設(shè)備的識別與之類似; 羅嗦兩句網(wǎng)銀支付。目前看來,朝內(nèi)絕大部分銀行僅支持win+ie平臺在線支付,完全忽視非windows用戶的存在,強(qiáng)烈譴責(zé)"為保障您的資金安全,我行建議您在windows操作系統(tǒng)(QQ:小默862693539)中完成交易",舉著安全大旗招搖過市(windows安全?你銀行服務(wù)器莫非裝的是windows server 2K3?),相反,國外各大銀行遵循標(biāo)準(zhǔn)化,支持在各類操作系統(tǒng)(QQ:小默862693539)、各自瀏覽器上進(jìn)行網(wǎng)上交易,如,美國花旗、匯豐,更有甚者(德國的銀行業(yè)),銀行外對開放API,允許用戶自行開發(fā)交易程序,怎么沒見這些銀行發(fā)生安全事故!當(dāng)然,不是所有朝內(nèi)銀行都是"如此重視安全",浦發(fā)銀行是少數(shù)幾家支持跨平臺交易的銀行,大家風(fēng)范,值得推薦(不過營業(yè)網(wǎng)點(diǎn)有限,二三線城市較少)。http://www.openbanks.info/是一個專注于探討網(wǎng)銀跨平臺主題的網(wǎng)站,有興趣可以逛逛。 5、即時通訊。常用的im工具包括飛信、qq、msn,這三個im都有對應(yīng)的linux版本,但,不論是官方發(fā)布的還是第三方通過逆向工程實現(xiàn)的,從功能完整性、運(yùn)行穩(wěn)定性、界面友好性來看,均與windows原生版本存在巨大差距,實際使用效果并不理想。如果的確要用,建議參照上例,在windows虛擬機(jī)中安裝運(yùn)行。 或許是冏朝的linux用戶量過少(linux在全球桌面領(lǐng)域占有率僅為2%,且主要分布在萬惡的歐美等資本主義國家),國內(nèi)軟件開發(fā)商基本采用忽略態(tài)度,即便發(fā)布了linux版的程序,要么長年不更新(qq for linux從2009年1月發(fā)布后從未更新過,http://im.qq.com/qq/linux/download.shtml)、要么不對外發(fā)布(aliwangwang for linux,僅用于淘寶公司內(nèi)部測試,http://ge.tt/8sppgia),在此呼吁各大開發(fā)商,請對linux予以正確的認(rèn)識和重視,尊重我們選擇操作系統(tǒng)(QQ:小默862693539)的權(quán)利。 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |