麻瓜入坑Ubuntu指南(第1彈)

肥貓 發表於 四, 10/29/2020 - 03:24
  • 前言

這個題目說來奇怪,畢竟坊間已經有不少輔助麻瓜(非技術使用者)安裝和使用Linux,特別是Ubuntu的說明書籍,實在不需要我再寫一篇廢文。不過發現還是有很多問題,不是把說明書放在電腦旁供著就能解決。(*註:這裡的麻瓜,泛指多數非技術使用者,並沒有如哈利波特小說中的貶義。)

第一個問題在於使用者的心態,近日在校園觀察,發現許多人開始對Linux有興趣,但是總是不敢踏出第一步,導致最後說明書看完還是流於紙上談兵。但是如同小孩學走路,不管結果是成功還是失敗,這個第一步其實很重要,起碼你已經開始跨進Linux的世界,也終於開始向軟體大廠爭奪電腦軟體的使用權。我不想把L. Lessig的網路自由思想在這裡扯個沒完,但是如果消費者對電腦廠商預裝不想要的軟體(如Candy Crush或WPS Office),或者Windows三不五時更新後更改你的預設程式頗為反感(例如Groove音樂或Edge瀏覽器)。我的看法會稍微激進點,光是罵業者是沒用的,反正他們其實也不稀罕你用(況且你也乖乖聽話啦),應該直接以跳坑Linux來表達你的訴求。

第二個問題則是出在自由軟體社群,近來聽到「開源教」一詞令人莞爾,卻也某種程度上頗為諷刺。曾幾何時我們也開始像校園常見的基督徒傳教團,以神風特攻隊的飛行姿態,找尋落單的路人開始傳揚我們自由軟體的理念。好吧至少比起那些經常搔擾路人的傳教團,自由軟體社群是沒那麼糟糕,但是當我們能預期一群人入了坑可能會開始出現當機、檔案開不了等問題卻求助無門,延誤課業、工作,最後還被組員、老闆罵個半死時,我們到底是幫助他們,還是害了他們。

這種不確定感造成的決策惰性,其實在公共政策屢見不鮮。例如有次看《我們的島》大概提到,原本新竹縣想興建MBT(機械生物處理垃圾系統)解決垃圾問題;但是考慮後續衍生性燃料去化的不確定性,最終還是計劃改為興建傳統焚化爐,這當然引起居民的強烈反彈。我在這裡無意探討該事件中各主角的說詞是否具說服力,不過從技術官僚角度,不難想像基於規避責難(blame avoidance)的心理,自然會讓他們去選擇儘管知道不好,但至少有跡可循的方案,至於要花多少錢,居民承受空氣汙染或怎樣,只要不馬上出人命,那都是後面再來想的事。軟體也是這樣子,雖然我們常罵政府是Windows奴不知變通,但是卻也不難理解,如果一台電腦裝了Linux當機不知該怎麼修,可能會引起周邊人士的接連撻伐,一百台電腦當機會是多可怕的事,政府光是連中油、國發會、財政部(還有非六都地方政府)推ODF/LibreOffice都搞不定了,實在很難想像在Desktop跑Linux會變成什麼樣子。

當然自由軟體社群也知道要培育種子教師。不過整體而言,我們還是低估了麻瓜對於新軟體的恐懼和不確定感,或更精確地說是無法同理。一如科班出身的數學老師,很難理解為什麼一道如此簡單的習題,學生老是會算錯,但是他可能沒想過,你認為簡單的事情,對初學者可沒那麼簡單(你想代換成別科也行);好吧也許等到哪一天這些老師的小孩長大,發現教數學開始遇到瓶頸罵他怎麼那麼笨的時候,才會理解箇中道理吧。所以我認為想培育種子教師,至少要有幾個稍微懂電腦的麻瓜先跳下去,先學會游泳了才能當其他人的救生員。我雖然也是麻瓜,不過好歹高中在資訊社混過,加上有Franklin當靠山,所以在跳坑Linux的過程中尚稱順利,但是其他人呢?教麻瓜用電腦對於自由軟體社群來說,恐怕才是真正的火盃的考驗。有次上課看到一對情侶來學軟體操作(雙方應該都是麻瓜吧),當下心想比起對軟體介面的理解力、coding能力什麼的,或許愛情的力量與造就的團結才能成全一切吧。

我無意取代這些說明書的內容,你若要用Ubuntu,建議還是要有一本工具書隨時備用。例如吳紹裳老師的《與Ubuntu共舞|中文環境調校x雲端共享x Libreoffice x 架站 x dropbox自己架》便是很好的入門書,簡單介紹了常見的apt安裝/PPA安裝/dpkg -i安裝/相依性套件出問題時的解法(sudo apt install -f),這本書大致就能解決初學者6成的問題。試想一套Windows外加Microsoft Office恐怕要約6000台幣;但是這些Ubuntu都已經免費給你了(至少功能類似),實在沒必要貪這幾百塊書錢的小便宜,況且若真的不想買,也可以用借的。

  • 使用Ubuntu所需的心理建設

使用Linux雖然沒有多數人想像的難,但是也沒有想像中的簡單。但是進入下一步討論之前,可能有些觀念或迷思必須先被破除。

(*註:因為我平常用的是Canonical原廠的Ubuntu,所以我對Linux的討論也以這個發行版本(distribution,或簡稱distro)為主;若是用其他桌面系統如KDE的,請參閱其他人的說明)

1.使用Linux是不是要很會coding?

若要更精確,其實應該問是不是要電腦很厲害才能用Linux?

原則上我的答案是否,至少目前在Ubuntu,圖形化介面已經能支應日常所需。且在多數情況下,至少Ubuntu的操作型態已經與Android手機趨於一致,如果你會用Android手機,用Ubuntu上網、寫簡單的課堂報告應該沒太大問題。

但是如果要用得更好,或者出問題時做些簡易排障,你必須熟悉終端機(類似Windows命令提示字元)的常用術語。例如sudo apt install (你想要安裝的套件)之類的,但不需要程式設計常見的if/else語法,或寫迴圈之類的。就像你和外國人買東西,通常只要簡單的英文和計算機,不需用到艱澀的學術英文或三角函數。

許多人聽到終端機或command line(命令列)馬上就嚇傻了,難道我要全部學會了,才能順利用Ubuntu嗎?不過問題應該反過來,你難道是學會Windows的所有功能,才開始使用Windows嗎?答案顯然是否定的,即使是用了幾年的老手,日常工作也只會用少數的那幾句而已。況且若真要談專業的系統管理,其實Windows也絲毫不簡單。其實多數人在用Windows的時候,也是從try and error開始學會的,學習Ubuntu當然也是如此。不過當你開始學會用command line的時候,或許會發現呼叫應用程式原來能如此簡單。

2. Linux介面和Windows是否差異很大?

我覺得Ubuntu介面和Windows似乎開始愈來愈像,甚至我認為是Windows最近開始模仿Linux的介面,如Windows 8/10的動態磚介面,很可能其實是從手機的介面傳過去的,具體原因我不是很清楚,但可能是和觸控螢幕的產業趨勢有關。所以習慣Windows XP/7介面的人,遇到Windows 10的時候可能會覺得格格不入。但是微軟似乎也沒有想重新設計Windows使用者介面的打算,態度似乎也是反正你久了就會習慣。所以問題反而倒過來,如果你不習慣Ubuntu的介面,或許在未來的Windows也不會好到哪裡去。

若你真正在意的是類似Windows的開始功能表,Kubuntu(以KDE作為桌面環境的Ubuntu發行版)或許比我用的原廠版本更適合你,我國工程師研發的ezgo作業系統,便是以Kubuntu為基底,以大量佈署在中小學為目標。從這樣看來,介面差異其實不是太大的問題。

另一個初學者常見的困擾,可能是Linux無法執行大多數Windows常用的軟體。對於特殊工程領域/設計/遊戲玩家來說,這確實可能是問題。不過這問題可分成兩個層面來討論,首先是這些軟體真的必須在你的電腦上執行嗎?例如社科院常用的SPSS,通常不可能自己買合法授權(因為非常貴),所以在政大我們是透過遠端連線學校的主機來操作(好在我們使用的VMWare Horizontal支援Ubuntu),此時SPSS是不是只能在Windows上跑,就不是那麼重要;不過說到跑統計,其實愈來愈多人是用R或Python來跑(這已經算趨勢),這時沒有SPSS其實也不是那麼要緊。

又如繪圖軟體,像是Maya、AutoCAD之類的,雖然業界可能反對,但是難道真的要用這類很貴又吃資源的軟體,東西才做得出來嗎?對於一般使用者來說,鑑於軟體成本的高昂,或許開源軟體才是更實惠的選擇,就像我十多年前吵著要買Adobe CS4我爸不肯,然後我就常鬧脾氣。雖然念大學時,我還是買了CS6 Master Collection的學生版授權,但是從事後的角度來看,你是真的「需要」這套軟體,還是只是「想要佔有」這套軟體,然後覺得自己很厲害?(當然現在CC改月租制之後,你也幾乎不可能「佔有」了)。到後來真正需要用到的,其實也就Acrobat而已(好啦我確實用Premiere剪過幾次片,但也就那幾次)。甚至用了Ubuntu之後,很多PDF的事情用Linux的PDF-Shuffler就能解決了,更別提剪片、影像編輯、製作向量圖等工作。

另一種類似的情況則常見於通訊軟體。例如Zoom剛出現的時候,我就納悶為什麼他要強制使用者裝一個客戶端(Client)端軟體,才能進入裡面的聊天介面;當時我的原教會為了防疫,將小組活動全面改為線上的時候,我就反對使用Zoom,這也是考慮有些不太會用電腦的人,會在登入聊天室出現很多問題,所以我就力排眾議,將小組聚會轉移到JitSi Meet上(因為JitSi一來開源,且可以在瀏覽器上執行)。結果過了不到一個月Zoom就出事了,當時我也沒想到中國間諜之類的,只是覺得他在開放性和安全性很有問題(因為安裝客戶端,就形同給予軟體某些權限變更電腦設定,這對使用者來說其實非常危險)。LINE其實也有類似問題,因為LINE本身沒有為Linux設計的客戶端程式,但是可以透過安裝Chrome的外掛套件來解套。不過對於不能在瀏覽器使用,非要你安裝在電腦上不可的通訊軟體,我大多敬而遠之,理由也和Zoom的狀況非常類似。

第二個角度,則可能和使用電腦的哲學會比較有關係。一如教理財的書會問你,這東西你是「需要」買,還是「想要」買?安裝軟體其實也是如此。雖然不否認電腦能做的事情變多了,也帶來莫大的便利;但是當電腦變得愈來愈複雜的時候,我們是不是也浪費許多時間和金錢,在一些華而無實的功能上,至少不是單純地叫電腦做完重要的事情,這問題從注意力經濟興起之後變得更加明顯,更別提系統功能愈來愈複雜後,安全漏洞當然也變多了。有時候基於安全的考慮,我甚至可能考慮刻意安裝一個,最好多數軟體都不能跑的Linux系統,電腦和軟體看不懂,至少軟體也比較難在上面作怪(不過實情是,Linux的系統複雜性絕對不亞於Windows)。

3. Linux可能和現存硬體不相容?

我必須先坦承這個問題其實屢見不鮮,特別在筆記型電腦。一部份和驅動程式有關,若廠商只考慮Windows使用者的需求,當然使用Ubuntu就會處處碰壁。這問題其實可以從兩個角度討論。

第一個是現實的角度,畢竟如果像印表機不能用,這台電腦就等於報廢了。所以最好的解決辦法,是你在採購硬體時就要打聽清楚,這台裝置是否能支援Linux的需求。例如我聽說Dell在美國,就有賣專門設計用來裝Ubuntu的筆電,裡面可能甚至沒有裝Windows。但是台灣的筆電似乎都以Windows為主,除少數特殊廠商之外幾乎沒有專門設計給Ubuntu的筆電。

不過一般人剛使用Ubuntu的時候,基本上還是需要兩個系統間互換(況且如果有些特殊軟體Windows才有時),所以我也不建議馬上越級打怪。比較好的方法是你在SSD上舊有的Windows不要動,你在傳統硬碟切一個約400GB的磁區給Ubuntu安裝用。這時你在買新電腦時,就要事先考慮主機板的相容性問題,我聽到市面常見的ASUS和Acer相容性似乎不太好;但是同屬台廠的技嘉(Gigabyte),個人使用經驗不錯,甚至我連鍵盤滑鼠都沒動,就能無縫接軌。

一般比較常用的外接裝置是印表機。我家裡那台用了8年的HP LaserJet,雖然不支援雙面列印(不過家用印表機,雙面列印的效果還遠不如去影印店),但是至少基本的列印功能是有的。也許未來這問題可以修好,但至少對我日常工作影響不大。況且如果你家裡/辦公室就沒有印表機,就根本不用煩惱這件事。

如果是自己組裝的桌機,因為可能根本就沒有原廠預裝的Windows授權,所以我就會索性灌全Ubuntu的系統。不過我都會建議初學者,不論是筆電或桌機,先在稍有年紀的電腦上進行,甚至要淘汰的電腦更好(但前提是硬體沒壞),建議的機齡約3-7年左右。用舊電腦做即使失敗了(重要資料仍必須事前異地備份),至少造成的破壞比較好收拾,你也比較不會痛。等到你熟悉狀況後,再考慮在新機器上做同樣的事,至少我覺得這樣比較保險。不過以Ubuntu的現狀,目前即使有Steam,多數遊戲也不能在Ubuntu上跑,用舊電腦的硬體其實就已經很夠用,新的硬體為發揮最大效益,我建議還是用Windows(特別是打遊戲或多媒體的時候)。

所以這也來到第二個角度,即使你說Ubuntu的驅動程式跑得很不好,但是難道在Windows上,你的軟硬體效能就能百分百被利用嗎?或許真會比Ubuntu好一點,但是除非你軟硬體都像Apple一樣原廠做,否則我猜也沒有大家想的那麼好。當然我不否認這是Ubuntu未來要推廣至多媒體應用時,必須慎重處理的問題,不過單就以辦公的角度,卻也似乎沒那麼迫切。

就以短期目標而言,我傾向把Ubuntu當作是回春舊電腦的工具,至少在進入垃圾場之前,將其最大剩餘價值利用殆盡。我剛念大學時買的電腦,在我碩一升碩二暑假時灌Ubuntu(機齡6年),硬是被我再用了2年,直到主機板不行了才放棄。這純屬從環保和經濟效益的角度出發(但試想中國廣東沿海有多少這種資訊垃圾,那是很可怕的事情),如果有電競玩家換下來的電腦想給我,我會非常感謝XD。

4. 軟體與產生的檔案不相容

這基本上是轉換作業系統時,第一個也是最嚴重的問題。例如在寫課堂報告,遇到的問題便常是,人家用Word我用LibreOffice那該怎麼辦?

從技術的角度,Microsoft Word和LibreOffice之間的格式不相容,是個囚徒困境賽局(Prisoner's Dilemma game, PD Game),我也不期望Microsoft會積極處理生成的ODF不合乎技術規範的問題,那無異於拿石頭砸自己的腳。所以要評論國發會的ODF政策,就是至少在法制上建立一套技術規範,若有人拒收ODF你至少可以拿來跟他argue。我當然知道這種技術規範,通常是徒法不足以自行,不過至少還比較是你有沒有要將支票兌現的問題。

我的論文老闆因為懂資訊(他碩士就是念資管),也知道國發會的ODF政策(甚至我首次調查ODF推行狀況的報告,就是我拜託他幫忙的),所以很能理解我這種基本教義派的行徑,也接受我傳odt給他。但多數人恐怕沒那麼幸運。不過從伸張權利的角度(中國人就直接叫維權),權利通常不是憑空掉下來的,所以這種差異的衝突也在所難免。不過就我了解,課堂報告的多人協作一般還是用Google Docs,且通常教授看的也是PDF,此時你有沒有桌機版的Microsoft Office似乎就不是那麼重要。所以我碩班寫的課堂報告,除少數需多人協作的情況外,多半還是以LibreOffice和ODF發出。

不過日後還是會遇到一個問題,那就是投稿期刊或研討會。這個問題我也不是沒想過,但是我確實還沒想到很好的處理方式。但我還是說,雖然很多人譏諷國發會的ODF政策是紙老虎,但是真要卯起來做,後果可能大不同。不過因為台灣受美國的地緣政治影響太深,若微軟也加入貿易談判,也像農產品一樣遊說採購軟體,台灣政府恐怕也很難抵得住。不過那是另一回事。不過至少在多數學術場合,我不認為這是太大的問題。

所以讀者不難發現,其實問題的關鍵不是軟體,而是最後軟體發出的「格式」。這也是為何後來政府在做開放資料的時候,大量釋出JSON、CSV等格式,因為這些格式能在多數的軟體上正確讀取與應用,當你特別是用R或Python做資料分析的時候。且由於Linux的軟體作者多半是各自為政的狀態,產出的檔案更需要遵循共同的遊戲規則,才能在不同軟體上正常應用。只是我不諱言Linux在多媒體應用時,軟體之間的協作會是必須優先改進的痛點。(例如可以參考Adobe Dynamic Link將製片軟體Premiere和音效軟體Audition做非常好的串接)

5. Linux是不是比較不安全

關於Linux和Windows誰比較安全的問題,其實是吵了至少10年的大論戰,我無意回顧這個吵了多年仍無明確結論的東西。不過從非技術使用者的角度,Ubuntu好歹也是一家有門面的公司在維護(他的老闆外傳是第一個上太空的非洲人),想要質疑當然是可以,我甚至很歡迎,只是又有多少用處?難道在錯誤的電腦使用習慣下,Windows加上防毒軟體,中毒的機率就真的會比較低嗎?

不過有個問題是值得注意的,那就是PPA或apt install模式取得的軟體,因為他不一定是開發者自己建立的資料庫(Repository),所以確實可能有潛藏惡意軟體的風險。當然你若要把這風險繼續往上延伸,你也可以說因為任何人都可以改Linux的原始碼(就像維基百科一樣),所以Linux隨時都有被植入惡意軟體的風險。對此問題我不置任何可否,但是我只能說即使你改採閉源軟體,只要不是上帝親筆來寫程式,你就無法百分百迴避這個風險。若從簡單的民主政治的理論來說,想把出錯的機率降到最低,就是這場域上必須有一定的有能力的工程師投入,隨時揪出漏洞,這基本上就是陪審團定理想表達的內容。

所以在軟體上,我原則還是建議使用開發者較密集的軟體,例如LibreOffice, Krita, GIMP, Inkscape,至少出問題時修復的速度和機會比較大。若你是工作或寫作業,使用LibreOffice(或類似軟體)的時候,請儘量使用安定版(Stable Release)或長期支援版(Long Term Release, LTR),這類版本多設計給企業大量佈署,軟體穩定度也比較高(但是相對會少一些酷炫的功能)。

不過反過來說,難道多人用的軟體就比較安全嗎?我想Facebook發生劍橋分析醜聞之後,你就知道這其實也只是個迷思,我到現在也還是很難想像,5000萬人中鏢是怎樣的情景,5000萬人將近一個法國的人口,甚至可能超過疫情爆發前湖北省的人口。不過這是另一回事。況且你怎麼不說在中國最多人使用的通訊軟體是WeChat,地圖則是百度?當然我這些論述並不能用來保證,Linux就一定比較安全。但是與其繼續論戰,應該正本清源從基礎資安常識,例如零信任思維(即假定所有軟體或架構都可能是危險的,而事前做好預防)開始做起。

  • 小結

洋洋灑灑寫了一堆,但我認為這些是初學者在跳坑入Linux之前,必須先做好的知識與心理建設。作為推廣社群的一份子,我們當然希望在出問題的時候,能適時跳出來幫忙初學者;但是更多時候,初學者必須也有獨立解決問題的能力,這也是在電腦世界(即便是Windows系統)要能長久且健康地存活,必須有的基本功。而在新型態資安事件層出不窮的今日,這話似乎也異常更有道理。

當初學者成功跨出第一步,一如進入全新的Windows桌面,要開始安裝常用軟體或環境。我預計下一次也會簡單介紹,在Ubuntu建議的作法,還有一些簡易的障礙排除。