我在個(gè)人電腦使用Linux桌面已4年(工作中使用Linux的時(shí)間要長(zhǎng)的多),深深體會(huì)到了Linux桌面的好處. 從某種角度來(lái)看,Linux桌面要比Windows桌面好用得多.前提條件是, 1 使用者有一定的理性思維 2 堅(jiān)持適合自己的原則 3 方法和工具 我使用的Linux發(fā)行版是Arch Linux ,其特點(diǎn)(缺點(diǎn)?)是軟件更新快,最新的軟件包未必經(jīng)過(guò)長(zhǎng)時(shí)間的嚴(yán)謹(jǐn)測(cè)試.所以Arch Linux絕不是發(fā)行版中最不折騰人的,我能和它和諧,和其他發(fā)行版就不用說(shuō)了. 第一原則,不折騰 對(duì)我而言,使用軟件的目的是工作和娛樂(lè).軟件只是幫助我實(shí)現(xiàn)目的的手段而已,和實(shí)現(xiàn)目的無(wú)關(guān)的資源消耗越少越好. 堅(jiān)持該第一原則,日常操作就可以很有效率. 選擇軟件的標(biāo)準(zhǔn) 選軟件就是投資 我的標(biāo)準(zhǔn)是選軟件要成本小收益大.收益如前所述,就是工作和娛樂(lè).所以只需考慮削減成本了. 具體措施,就是只用少量軟件做盡可能多的事. Arch Linux的流行作風(fēng)是一日一更新.我使用的軟件數(shù)量少,要更新的也少. 那么我是否需要一日一更新呢? Arch Linux有這個(gè)選項(xiàng)并不等于我必須這么干.今天我剛升級(jí)完1.3版本,明天1.4又出來(lái)了,為什么我不多等一天,直接升級(jí)到1.4呢? 我的作法就是大多數(shù)軟件我短期內(nèi)不升級(jí).最常用的軟件我會(huì)根據(jù)需要理性升級(jí).例如,firefox的安全升級(jí)我總是及時(shí)跟進(jìn),Linux的kernel我一年才升級(jí)一次. 依據(jù)投資收益的原則,我偏愛(ài)命令行軟件,因?yàn)樗鼈儾灰蕾囉趫D形界面庫(kù),升級(jí)的壓力小很多.同類的命令行軟件,我會(huì)優(yōu)先考慮依賴的第三方庫(kù)比較小的.例如用C寫(xiě)的軟件優(yōu)于用python寫(xiě)的軟件. 我有個(gè)根據(jù)編寫(xiě)軟件的語(yǔ)言來(lái)判定軟件是否輕小的主觀標(biāo)準(zhǔn),c < perl < python, ruby, ….. < c++, java. 以下是我用的主力軟件,其中的編輯器,瀏覽器,Shell,桌面,都是功能強(qiáng)大,定制度高,可編程. 編輯器 我用Emacs,考慮到它可以做任何事,可以認(rèn)為它是輕量級(jí)的. Vim也用,萬(wàn)不得已用nano,結(jié)束了. 瀏覽器 沒(méi)多少選擇,firefox,如上所述,firefox是我更新頻繁的軟件. Shell 我用bash,在我的.bashrc中有如下一行, export HISTSIZE=200000 確保我輸入的所有命令都不會(huì)丟失,因?yàn)槲艺f(shuō)過(guò),我偏愛(ài)命令行軟件,但是要記住常用命令行會(huì)消耗我很多腦細(xì)胞,這是不符合投資收益原則的.所以我讓shell替我記住.我只要記住按Ctrl+R可搜索歷史就好了. 桌面 Gnome,KDE是絕對(duì)不會(huì)考慮的.我安裝了Xfce4以給我太太用.我使用更輕量級(jí)的musca,安裝包大小才100K. 其他 網(wǎng)絡(luò)管理我用Netcfg(命令行) 而不是wicd,因?yàn)閣icd的依賴多而且曾經(jīng)折騰過(guò)我,播放視頻我之用mplayer (命令行),等等. 軟件的使用也需維護(hù) 安裝軟件在包管理系統(tǒng)的幫助下很簡(jiǎn)單.麻煩的是最新軟件有時(shí)候不穩(wěn)定,這通常是因?yàn)檐浖呐渲梦募乱鸬? 將/etc目錄下的默認(rèn)配置文件備份 Linux的軟件默認(rèn)配置文件在/etc/目錄下. 我使用分布式版本控制軟件git 管理/etc目錄,分布式版本控制系統(tǒng)好處很多,最大好處就是數(shù)據(jù)到處有完整備份,非常安全.具體細(xì)節(jié)請(qǐng)參考wikipedia . 同類軟件mercurial,bzr也可,要考慮的因素是第三方服務(wù)器是否支持(對(duì)分布式版本控制軟件來(lái)說(shuō),第三方服務(wù)器不是必需的). 在Arch Linux上每次更新完系統(tǒng)或者安裝最新軟件包后,可以考慮手動(dòng)將/etc目錄下的文件用git備份(Debian可自動(dòng)備份). sudo git add /etc/ sudo git commit -am "backup" 一旦某個(gè)軟件工作不正常了,可以檢查其/etc下默認(rèn)配置文件的修改紀(jì)錄,將配置文件恢復(fù)到上一個(gè)正常工作的版本. sudo git log /etc/mysql/my.cnf #check history sudo git checkout commit_ref(version) /etc/mysql/my.cnf #restoren file /etc/目錄下的臨時(shí)文件不需要備份,以下是我的.gitignore *~ *.pacnew *.pacsave *.swp *.pacorig *.swp mtab 將用戶目錄下的用戶定制配置文件備份 我也是用git,配置文件備份到github 的服務(wù)器上.這里必須用第三方服務(wù)器同步配置,因?yàn)槲沂褂枚嗯_(tái)電腦. 具體操作可寫(xiě)成長(zhǎng)篇大論,這里不展開(kāi)了. 將軟件版本降級(jí) 最新版本的軟件可能不穩(wěn)定,這時(shí)降級(jí)是必要的. 請(qǐng)參考Archwiki ,實(shí)際上很簡(jiǎn)單,安裝名為downgrade的軟件,然后讓它干所有的體力活就行了. yaourt downgrade 云備份 電子圖書(shū),多媒體文件用專業(yè)的云備份服務(wù)更好,我推薦Dropbox . 順便說(shuō)一下,國(guó)內(nèi)的服務(wù)不要用,安全原因,不言自明. 備份操作系統(tǒng) 不用經(jīng)常作,又有云備份,又有分布式版本控制系統(tǒng),怕什么. 備份整個(gè)硬盤(pán)是用Clonezilla ,只是備份操作系統(tǒng)的話用以下命令, tar zcvpf mylinux.tgz --exclude=/proc/* --exclude=/lost+found --exclude='mylinux.tgz' --exclude=/mnt/* --exclude=/home/username/* --exclude=/sys/* / 我建議用前者,因?yàn)槭∈? 閱讀官方文檔 照著ArchWiki 安裝軟件,一般不會(huì)有問(wèn)題. 加入社區(qū) 緊急客戶支持還是用IRC 比較好,沒(méi)用過(guò)IRC的可以裝firefox插件Chatzilla 體驗(yàn)一下. 虛擬機(jī)的用處 我虛擬機(jī)軟件使用VirtualBox,虛擬機(jī)為Windows XP,該操作系統(tǒng)我會(huì)定期更新安全補(bǔ)丁.軟件只安裝了IE和firefox.該操作系統(tǒng)我只用來(lái)操作網(wǎng)絡(luò)銀行.每次操作完畢,我會(huì)重置虛擬機(jī)狀態(tài)到操作前的snapshot. 救急工具箱 即使采用了上述做法,一年中也會(huì)有一次倒霉.就是我要用的某個(gè)版本的某個(gè)軟件出問(wèn)題了.沒(méi)人能幫忙,不能降級(jí),改軟件配置也沒(méi)用,也沒(méi)有可用的錯(cuò)誤信息. 問(wèn)題看起來(lái)很難,事實(shí)上5分鐘就能搞定.這往往是因?yàn)槟耻浖枰牡谌綆?kù)的版本出問(wèn)題了. 比如說(shuō)firefox不能啟動(dòng),運(yùn)行如下命令調(diào)試, strace -o err.txt firefox 讀一下err.txt就可以知道是哪個(gè)庫(kù)出問(wèn)題了.相信我,這是不需要任何編程知識(shí)的,猜加google就可以了. 你知道哪個(gè)庫(kù)文件出問(wèn)題了(保險(xiǎn)起見(jiàn),ldd firefox確認(rèn)一下).比如/usr/lib/libpng.so.14找不到,簡(jiǎn)單的解決辦法是用另一個(gè)版本的庫(kù)文件代替. 如果/usr/lib/libpng.so.15是存在的,我們可以用該庫(kù)頂替libpng.so.14, sudo ln -s /usr/lib/libpng.so.15 /usr/lib/libpng.so.14 通常這樣就行了. 萬(wàn)一冒名頂替不行,我們就必須根據(jù)丟失的庫(kù)文件查找需要安裝的軟件包(pacman沒(méi)用的), pkgfile libpng pkgfile屬于軟件包pkgtools,所以你必須安裝pkgtools, yaourt -S pkgtools-git |
參與人數(shù) 1 | 積分 +1 | 收起 理由 |
---|---|---|
| + 1 |