[轉貼] 學習Linux的七點忠告
發表於 : 2005-09-17, 14:43
最近在網路上看到了
雖然不是新文章
但其中談到不少正確的觀念
原文出處
htp://www.blueidea.com/computer/system/2003/289.asp
htp://km.tceb.edu.tw/doall/viewtopic.php?p=2954&sid=d24d80cfb2bd995ec3c0bf276a5fdd5e
---
1、不要“玩 Linux”
很多人用 Linux 的時候會感覺很迷茫,該用哪個發行呢?是不是我少裝了什麼?怎麼升級這麼快啊!怎麼這麼不穩定!每當遇到新的軟體他就想試用,每當新的版本出現,他就更新,然後用滑鼠在新的功能表裡選擇來沒見過的程式來用用。
其實你是為了Linux而使用Linux,而沒有找到正確的理由來利用 Linux。你首先要明確用電腦的目的,你用它是為了解決你的實際問題,而不是為了學習安裝作業系統,不是為了測試哪個版本好用,不是為了“趕上潮流”,更不是因為你硬碟太大了,你想多占點空間。
如果你啟動了電腦之後不知道應該幹什麼,那麼最好先不要用電腦,因為你可能有更重要的事情需要做。
2、不用挑剔發行版本
很多人剛開始用 Linux 的時候,總是在懷疑別的發行版本是否比自己正在用的這個好,總是懷疑自己以後時候會失去支持,不得不換用別的發行。所以很多人今天是 Redhat,明天又換成了 debian, 一會兒又是 gentoo, …… 甚至有的人在一台機器上裝了兩個版本的 Linux,然後比較哪一個好。
其實你完全沒有必要這樣做,任何發行,只要你熟悉了,你在上面的工作方式幾乎是不會受到任何影響的。你常常聽說 Debian 的更新比 Redhat 快,包比 Redhat 多,但是你可以比 Debian 更新還要快,直接到你需要的程式的主站點下載源碼來編譯就是了。
Debian, TurboLinux, SuSE, Redhat, Gentoo, ... 任何一個版本都是不錯的。
(大雄:我學FreeBSD或linux的心態及做法也是如此,如果沒有想通這些道理,就會如同有一些人會覺得學RedHat與Mandrake或Freebsd好像是彼此不同os,而覺得每個都要學是很困難的一件事;其實想「通」了就好了)
3、不要當“傳教士”
很多人在討論區不斷的引起 "Linux vs. Windows" 之類的討論,甚至爭的面紅耳赤,這是沒有必要的。因為各人的需要不同,生活的環境不同,你不可能得到一個定論。我們需要尊重別人的選擇,這是你在進行任何對工具的討論前需要提醒自己的事情。面對一些容易引起爭論的東西:Word 和 TeX;Emacs 和 VIM;MAXIMA,Mathematica 和 Maple;Gnome,FVWM 和 KDE;Mutt 和 Pine …… 一定要冷靜。
你需要關心的不是你的工具是什麼,而是你用它做了什麼。精通 Linux 並不說明任何問題,因為它只是一個工具而已。如果你用 Windows 能很好的完成你的任務,那你就沒有必要費時間去熟悉 Linux。直到有一天你發現一項任務只有 Linux 才能完成的時候再換也不遲,因為你身邊的 Linux 的愛好者一定會很樂意的幫助你。
並不是喜歡一種東西就必須反對其他的。世界需要多樣性,人們都需要FUN。用自己的興趣去壓制別人的,就會毀掉所有的興趣。個人喜歡什麼就用什麼,完全沒必要為這個爭論。
不要做“傳教士”!你說我現在就是在“傳教”?冤枉啊~
(大雄:這也是我常常省思自己的地方,有些人為linux或open source在狂熱,我有時好像也是?!但我卻也是windows的忠實使用者,還好捫心自問,我個人不是個「壓制別人」推廣者,觀念頗能契合!!)
4、直接從源碼安裝程式
很多人放著最新的源碼不用,等著有人幫他做出 rpm, deb, 才能安裝。我說你為什麼不用原始碼編譯,這樣版本比 rpm 高的多,有很多新功能,而沒有煩人的依賴關係。可是他說:“要是我用原始碼編譯安裝,解除安裝的時候就不方便了,會留下很多垃圾。”
為什麼程式還沒有安裝你就想到解除安裝?難道你不知道這個程式是用來做什麼的?你應該改變到處找程式來試用的作法,而應該先瞭解一下到底那些程式有同樣的功能,聽聽別人的意見,看看它們各有什麼長處和短處,然後挑一個最適合你的程式來用。
從原始碼編譯安裝程式,不但比你裝rpm更適合自己的機器設置,而且它們一般會裝到 /usr/local 目錄,這樣你以後如果換硬碟重裝系統,也可以把以前 /usr/local 下的程式原封不動拷貝過去用。我的 /usr/local 下有 2G 之多的程式,你想要是我有一台新機器要重新安裝,然後配置,得花費多少時間?實際上我曾經通過網路把它們傳到一台新機器上,然後就出去吃晚飯,回來時我就得到了另一台一摸一樣的 Linux 機器。
確實要解除安裝 make install 的程式怎麼辦呢?答案是直接刪掉。別以為直接刪掉程式會留下垃圾,引起“系統不穩定”。(btw: 這是誰教你的啊?呵呵。) make install 無非就是把可執行程式放在 /usr/local/bin, 把某些函數庫放在 /usr/local/lib,把資料檔案放在 /usr/local/share 下一個它自己的目錄,你把這些東西都刪掉就行了,不會留下垃圾,即使真的留下一點檔沒有刪掉也占不了多少空間,更不可能引起系統不穩定。UNIX 就是這麼簡單。
但是有幾個程式不建議從原始碼安裝,它們是 Mozilla, Open Office, ... 它們編譯時會佔用你幾個G的空間和好幾個小時的時間,這種花費我覺得是不值得的,因為你不能從編譯得到更多好處,不如直接安裝編譯好的版本。
(大雄:這也就是為什麼我編寫或授課時常使用tarball安裝的原因,雖然我當初不是很清楚移除時會不會像rpm一樣乾淨?但talball的裝法卻可以保持一定的彈性及安全性;他的說法驗證我一些的做法)
5、不要盲目升級
不知道這是心理作用還是什麼,有的人看到比較大的版本號碼,就會很想換成那個。很多人的 Redhat 本來配置的很舒服了,可是一旦 Redhat 發行新的版本,他們就會儘快下載過來,然後選擇升級安裝。結果很多時候把自己原來修改得很好的配置檔(設定檔)給清掉了。新的軟體又帶來了新的問題,比如有一次我的 rxvt 升級到 2.7.8 就跟 miniChinput 衝突了,升級到 Redhat 8.0,發現 xmms 居然預設不能放mp3了,XFree86 的 xtt 模組在 I810 上有新的 bug,會導致 Mozilla 突然退出。
如果你已經配置好了一切,千萬別再整體升級了,這會浪費你很多很多時間的,不值得。如果需要的話,你可以只把某些部件升級,比如內核,glibc, gcc, XFree86,...
使用 UNIX 的經典程式
好的程式一般都是可以很方便的在很多種 UNIX 上移植的,bash, VIM, Emacs, Mutt, FVWM, xterm, 都是這樣。如果你用這些程式,你就可以在 Sun, HP, ... 等工作站上也裝上,這樣你在各種機型上的工作環境就幾乎完全一樣了!你不需要在 Sun 上面用 CDE,在PC上又換成 KDE,在它們上面都裝一個 FVWM,使用相同的配置檔,就能得到一致的介面。
這些程式大部分都是久經考驗的,是經過很多人多年開發的結果。它們功能完善,各種情況都考慮周全,絕對是你的好助手。
6、不要配置你不需要的東西
如果你只想做一個像我這樣的普通用戶,主要目的是用 Linux 來完成自己的科研任務和日常工作,那就可以不用系統管理員或者網路管理員的標準來要求自己,因為當一個系統和網路管理員確實很辛苦。普通用戶學習那些不經常用到的複雜的維護系統的工具,其實是浪費時間,學了不用是會很快忘記的!
我不是一個合格的網路管理員,我的伺服器都只設置了我自己需要的功能,設置好 ssh, ftp 已經足夠了,那樣可以省去我很多麻煩。我從來不過度考慮“安全”,因為 Linux 預設已經很安全了。我沒有磁帶機,就不用管 tar 的那些稀奇古怪的參數了,czf, xzf, ztf 已經可以滿足我所有的需要。sed, awk, ... 我也只會幾種常用的命令行。
7、不用忙著看kernel原始碼
除非你想研究作業系統,否則還是先把怎麼使用 Linux 掌握好再說吧。我以前看了那麼多kernel原始碼代碼,寫了驅動程式,結果最後發現我還是一隻很多事情不能用 Linux 解決的菜鳥吸取我的教訓吧,你應該首先掌握 shell,Xwindow 的使用和原理,它們可不比kernel簡單。
雖然不是新文章
但其中談到不少正確的觀念
原文出處
htp://www.blueidea.com/computer/system/2003/289.asp
htp://km.tceb.edu.tw/doall/viewtopic.php?p=2954&sid=d24d80cfb2bd995ec3c0bf276a5fdd5e
---
1、不要“玩 Linux”
很多人用 Linux 的時候會感覺很迷茫,該用哪個發行呢?是不是我少裝了什麼?怎麼升級這麼快啊!怎麼這麼不穩定!每當遇到新的軟體他就想試用,每當新的版本出現,他就更新,然後用滑鼠在新的功能表裡選擇來沒見過的程式來用用。
其實你是為了Linux而使用Linux,而沒有找到正確的理由來利用 Linux。你首先要明確用電腦的目的,你用它是為了解決你的實際問題,而不是為了學習安裝作業系統,不是為了測試哪個版本好用,不是為了“趕上潮流”,更不是因為你硬碟太大了,你想多占點空間。
如果你啟動了電腦之後不知道應該幹什麼,那麼最好先不要用電腦,因為你可能有更重要的事情需要做。
2、不用挑剔發行版本
很多人剛開始用 Linux 的時候,總是在懷疑別的發行版本是否比自己正在用的這個好,總是懷疑自己以後時候會失去支持,不得不換用別的發行。所以很多人今天是 Redhat,明天又換成了 debian, 一會兒又是 gentoo, …… 甚至有的人在一台機器上裝了兩個版本的 Linux,然後比較哪一個好。
其實你完全沒有必要這樣做,任何發行,只要你熟悉了,你在上面的工作方式幾乎是不會受到任何影響的。你常常聽說 Debian 的更新比 Redhat 快,包比 Redhat 多,但是你可以比 Debian 更新還要快,直接到你需要的程式的主站點下載源碼來編譯就是了。
Debian, TurboLinux, SuSE, Redhat, Gentoo, ... 任何一個版本都是不錯的。
(大雄:我學FreeBSD或linux的心態及做法也是如此,如果沒有想通這些道理,就會如同有一些人會覺得學RedHat與Mandrake或Freebsd好像是彼此不同os,而覺得每個都要學是很困難的一件事;其實想「通」了就好了)
3、不要當“傳教士”
很多人在討論區不斷的引起 "Linux vs. Windows" 之類的討論,甚至爭的面紅耳赤,這是沒有必要的。因為各人的需要不同,生活的環境不同,你不可能得到一個定論。我們需要尊重別人的選擇,這是你在進行任何對工具的討論前需要提醒自己的事情。面對一些容易引起爭論的東西:Word 和 TeX;Emacs 和 VIM;MAXIMA,Mathematica 和 Maple;Gnome,FVWM 和 KDE;Mutt 和 Pine …… 一定要冷靜。
你需要關心的不是你的工具是什麼,而是你用它做了什麼。精通 Linux 並不說明任何問題,因為它只是一個工具而已。如果你用 Windows 能很好的完成你的任務,那你就沒有必要費時間去熟悉 Linux。直到有一天你發現一項任務只有 Linux 才能完成的時候再換也不遲,因為你身邊的 Linux 的愛好者一定會很樂意的幫助你。
並不是喜歡一種東西就必須反對其他的。世界需要多樣性,人們都需要FUN。用自己的興趣去壓制別人的,就會毀掉所有的興趣。個人喜歡什麼就用什麼,完全沒必要為這個爭論。
不要做“傳教士”!你說我現在就是在“傳教”?冤枉啊~
(大雄:這也是我常常省思自己的地方,有些人為linux或open source在狂熱,我有時好像也是?!但我卻也是windows的忠實使用者,還好捫心自問,我個人不是個「壓制別人」推廣者,觀念頗能契合!!)
4、直接從源碼安裝程式
很多人放著最新的源碼不用,等著有人幫他做出 rpm, deb, 才能安裝。我說你為什麼不用原始碼編譯,這樣版本比 rpm 高的多,有很多新功能,而沒有煩人的依賴關係。可是他說:“要是我用原始碼編譯安裝,解除安裝的時候就不方便了,會留下很多垃圾。”
為什麼程式還沒有安裝你就想到解除安裝?難道你不知道這個程式是用來做什麼的?你應該改變到處找程式來試用的作法,而應該先瞭解一下到底那些程式有同樣的功能,聽聽別人的意見,看看它們各有什麼長處和短處,然後挑一個最適合你的程式來用。
從原始碼編譯安裝程式,不但比你裝rpm更適合自己的機器設置,而且它們一般會裝到 /usr/local 目錄,這樣你以後如果換硬碟重裝系統,也可以把以前 /usr/local 下的程式原封不動拷貝過去用。我的 /usr/local 下有 2G 之多的程式,你想要是我有一台新機器要重新安裝,然後配置,得花費多少時間?實際上我曾經通過網路把它們傳到一台新機器上,然後就出去吃晚飯,回來時我就得到了另一台一摸一樣的 Linux 機器。
確實要解除安裝 make install 的程式怎麼辦呢?答案是直接刪掉。別以為直接刪掉程式會留下垃圾,引起“系統不穩定”。(btw: 這是誰教你的啊?呵呵。) make install 無非就是把可執行程式放在 /usr/local/bin, 把某些函數庫放在 /usr/local/lib,把資料檔案放在 /usr/local/share 下一個它自己的目錄,你把這些東西都刪掉就行了,不會留下垃圾,即使真的留下一點檔沒有刪掉也占不了多少空間,更不可能引起系統不穩定。UNIX 就是這麼簡單。
但是有幾個程式不建議從原始碼安裝,它們是 Mozilla, Open Office, ... 它們編譯時會佔用你幾個G的空間和好幾個小時的時間,這種花費我覺得是不值得的,因為你不能從編譯得到更多好處,不如直接安裝編譯好的版本。
(大雄:這也就是為什麼我編寫或授課時常使用tarball安裝的原因,雖然我當初不是很清楚移除時會不會像rpm一樣乾淨?但talball的裝法卻可以保持一定的彈性及安全性;他的說法驗證我一些的做法)
5、不要盲目升級
不知道這是心理作用還是什麼,有的人看到比較大的版本號碼,就會很想換成那個。很多人的 Redhat 本來配置的很舒服了,可是一旦 Redhat 發行新的版本,他們就會儘快下載過來,然後選擇升級安裝。結果很多時候把自己原來修改得很好的配置檔(設定檔)給清掉了。新的軟體又帶來了新的問題,比如有一次我的 rxvt 升級到 2.7.8 就跟 miniChinput 衝突了,升級到 Redhat 8.0,發現 xmms 居然預設不能放mp3了,XFree86 的 xtt 模組在 I810 上有新的 bug,會導致 Mozilla 突然退出。
如果你已經配置好了一切,千萬別再整體升級了,這會浪費你很多很多時間的,不值得。如果需要的話,你可以只把某些部件升級,比如內核,glibc, gcc, XFree86,...
使用 UNIX 的經典程式
好的程式一般都是可以很方便的在很多種 UNIX 上移植的,bash, VIM, Emacs, Mutt, FVWM, xterm, 都是這樣。如果你用這些程式,你就可以在 Sun, HP, ... 等工作站上也裝上,這樣你在各種機型上的工作環境就幾乎完全一樣了!你不需要在 Sun 上面用 CDE,在PC上又換成 KDE,在它們上面都裝一個 FVWM,使用相同的配置檔,就能得到一致的介面。
這些程式大部分都是久經考驗的,是經過很多人多年開發的結果。它們功能完善,各種情況都考慮周全,絕對是你的好助手。
6、不要配置你不需要的東西
如果你只想做一個像我這樣的普通用戶,主要目的是用 Linux 來完成自己的科研任務和日常工作,那就可以不用系統管理員或者網路管理員的標準來要求自己,因為當一個系統和網路管理員確實很辛苦。普通用戶學習那些不經常用到的複雜的維護系統的工具,其實是浪費時間,學了不用是會很快忘記的!
我不是一個合格的網路管理員,我的伺服器都只設置了我自己需要的功能,設置好 ssh, ftp 已經足夠了,那樣可以省去我很多麻煩。我從來不過度考慮“安全”,因為 Linux 預設已經很安全了。我沒有磁帶機,就不用管 tar 的那些稀奇古怪的參數了,czf, xzf, ztf 已經可以滿足我所有的需要。sed, awk, ... 我也只會幾種常用的命令行。
7、不用忙著看kernel原始碼
除非你想研究作業系統,否則還是先把怎麼使用 Linux 掌握好再說吧。我以前看了那麼多kernel原始碼代碼,寫了驅動程式,結果最後發現我還是一隻很多事情不能用 Linux 解決的菜鳥吸取我的教訓吧,你應該首先掌握 shell,Xwindow 的使用和原理,它們可不比kernel簡單。