Windows 到 Linux 之旅:第 1 部分. Linux 思想(轉)

post0發表於2007-08-09
Windows 到 Linux 之旅:第 1 部分. Linux 思想(轉)[@more@]

不同之處與相似之處

級別:初級

Chris Walden (cmwalden-at-us.ibm.com)

電子商務架構師, IBM Developer Relations

2004 年 1 月

IBM 電子商務架構師 Chris Walden 將透過他在 developerWorks 上發表的九篇系列文章來指導您如何在 Linux 環境中運用您的 Windows 操作技巧。我們首先來認識 Linux 和 Windows 之間的不同之處與相似之處,並學會不要總是透過重新引導系統來解決問題。

您已經開始從 Windows 轉向 Linux,這可能是您自己的決定,也可能是“不得已而為之”。無論出於何種原因,您原來非常熟悉的工作方式和工具可能都將變得完全不同。不但如此,您可能還需要培訓別人如何去輕鬆地管理 Linux。管理絕不是循規蹈矩,成功地管理計算環境是一項創造性的工作。實現這一轉變就如同一個熟練的油畫家轉而去從事雕塑一樣。

開放的標準使得 Linux 也要遵循 Windows 管理的基本模式,這對使用者來說的確是好訊息。雖然兩者的一些術語並不相同,工具也有一些區別,但是根本的原理是一樣的。更好的訊息是,當您習慣 Linux 的工作方式後,您將具有更大的工具集來控制和維護您的環境。Linux 的強大之處在於它的穩定性和靈活性。一旦您領悟了 Linux 的思想,您將可以完成更多的任務,使更多的任務自動化,更多地以遠端方式完成任務。

Linux 與 Windows 有一些類似

在討論 Linux 與 Windows 有多大不同之前,讓我們先來看看這兩者有哪些相似之處。

使用者和組

Linux 和 Windows 都是多使用者作業系統。都可以由許多不同的使用者來使用,為每個使用者提供單獨的環境和資源。基於使用者身份來控制安全性。都可以以組成員的方式來控制資源的訪問許可權,這樣在使用者數目較大時可以不必為每一個帳號設定許可權。

使用者和組可以集中管理,讓多個伺服器共享相同的使用者和身份驗證資料。

檔案系統

Linux 和 Windows 都支援多種檔案系統。檔案資源可以透過 NetBIOS、FTP 或者其他協議與其他客戶機共享。可以很靈活地對各個獨立的檔案系統進行組織,由管理員來決定它們在何處可以以何種方式被訪問。

埠和裝置

兩種作業系統都支援各種物理裝置埠,比如並口、串列埠和 USB 介面。支援各種控制器,比如 IDE 和 SCSI 控制器。Linux 還支援很多“剛剛上市”的標準硬體。

網路

Linux 和 Windows 都支援多種網路協議,比如 TCP/IP、NetBIOS 和 IPX。都支援多種型別的網路介面卡。都具備透過網路共享資源的能力,比如共享檔案和列印。都可以提供網路服務能力,比如 DHCP 和 DNS。

服務

Linux 和 Windows 都提供服務。所謂服務,指的是那些在後臺執行的應用程式,可以為系統和遠端呼叫該服務的計算機提供一些功能。在系統引導的時候可以單獨控制並自動啟動這些程式。(注意:Linux 中沿用了 Unix 的習慣,稱這種應用程式為 daemon,)

Linux 與 Windows 的不同

雖然有一些類似之處 ,但 Windows 和 Linux 的工作方式還是存在一些根本的區別。這些區別只有在您對兩者都很熟悉以後才能體會到,但它們卻是 Linux 思想的核心。

Linux 的應用目標是網路而不是列印

Windows 最初出現的時候,這個世界還是一個紙張的世界。Windows 的偉大成就之一在於您的工作成果可以方便地看到並列印出來。這樣一個開端影響了 Windows 的後期發展。

同樣,Linux 也受到了其起源的影響。Linux 的設計定位於網路作業系統。它的設計靈感來自於 Unix 作業系統,因此它的命令的設計比較簡單,或者說是比較簡潔。由於純文字可以非常好地跨網路工作,所以 Linux 配置檔案和資料都以文字為基礎。

對那些熟悉圖形環境的人來說,Linux 伺服器初看可能比較原始。但是 Linux 開發更多關注的是它的內在功能而不是表面上的東西。即使是在純文字的環境中,Linux 同樣擁有非常先進的網路、指令碼和安全能力。執行一些任務所需的某些表面上看起來比較奇怪的步驟是令人費解的,除非您認識到 Linux 是期望在網路上與其他 Linux 系統協同執行這些任務。Linux 的自動執行能力也很強,只需要設計批處理檔案就可以讓系統自動完成非常詳細的任務。Linux 的這種能力來自於其基於文字的本質。

可選的 GUI

Linux 有圖形元件。Linux 支援高階的圖形介面卡和顯示器,完全勝任圖形相關的工作。現在,許多數字效果藝術家在 Linux 工作站上來進行他們的設計工作,而以前這些工作需要使用 IRIX 系統來完成。但是,圖形環境並沒有整合到 Linux 中,而是執行於系統之上的單獨一層。這意味著您可以只執行 GUI,或者在需要時才執行 GUI。如果您的系統主要任務是提供 Web 應用,那麼您可以停掉圖形介面,而將其所用的記憶體和 CPU 資源用於您的服務。如果您需要在 GUI 環境下做一些工作,可以再開啟它,工作完成後再將其關閉。

Linux 有圖形化的管理工具,以及日常辦公的工具,比如電子郵件、網路瀏覽器和文件處理工具等。不過,在 Linux 中,圖形化的管理工具通常是控制檯 (命令列) 工具的擴充套件。也就是說,用圖形化工具能完成的所有工作,用控制檯命令同樣可以完成。同樣,使用圖形化工具並不妨礙您對配置檔案進行手工修改。其實際意義可能並不是特別顯而易見,但是,如果在圖形化管理工具中所做的任何工作都可以以命令列的方式完成,這就表示那些工作也可以由一個指令碼來實現。指令碼化的命令可以成為自動執行的任務。Linux 同時支援這兩種方式,並不要求您只用文字或者只用 GUI。您可以根據您的需要選擇最好的方法。

Linux 中的配置檔案是人類可讀的文字檔案,這與過去的 Windows 中的 INI 檔案類似,但與 Windows 的登錄檔機制在思路上有本質的區別。每一個應用程式都有其自己的配置檔案,而且通常不與其他的配置檔案放在一起。不過,大部分的配置檔案都存放於一個目錄樹 (/etc) 下的單個地方,所以看起來它們在邏輯上是在一起。文字檔案的配置方式使得不透過特殊的系統工具就可以完成配置檔案的備份、檢查和編輯工作。

檔名擴充套件

Linux 不使用檔名擴充套件來識別檔案的型別。相反,Linux 根據檔案的頭內容來識別其型別。為了提高人類可讀性您仍可以使用檔名擴充套件,但這對 Linux 系統來說沒有任何作用。不過,有一些應用程式,比如 Web 伺服器,可能使用命名約定來識別檔案型別,但這只是特定的應用程式的要求而不是 Linux 系統本身的要求。

Linux 透過檔案訪問許可權來判斷檔案是否為可執行檔案。任何一個檔案都可以賦予可執行許可權,這樣程式和指令碼的建立者或管理員可以將它們識別為可執行檔案。這樣做有利於安全。儲存到系統上的可執行的檔案不能自動執行,這樣就可以防止許多指令碼病毒。

什麼是核心?

Linux 實際上只是核心;它實現了多工和多使用者功能,管理硬體,分配記憶體,啟用應用程式的執行。

對初學者來說,最重要的是要明白奇數的核心版本(比如 2.3、2.5、2.7)是實驗用的、正在開發的核心。 穩定的、正式發行的核心版本號是偶數的(比如 2.4、2.6、2.8)。

重新引導是最後的手段

如果您使用 Windows 已經很長時間了,您可能已經習慣出於各種原因(從軟體安裝到糾正服務故障)而重新引導系統。在 Linux 思想中您的這一習慣需要改變。Linux 在本質上更遵循“牛頓運動定律”。一旦開始執行,它將保持執行狀態,直到受到外來因素的影響,比如硬體的故障。實際上,Linux 系統的設計使得應用程式不會導致核心的崩潰,因此不必經常重新引導(與 Windows 系統的設計相對而言)。所以除了 Linux 核心之外,其他軟體的安裝、啟動、停止和重新配置都不用重新引導系統。

如果您確實重新引導了 Linux 系統,問題很可能得不到解決,而且還會使問題更加惡化。學習並掌握 Linux 服務和執行級別是成功解決問題的關鍵。學習 Linux 最困難的就是克服重新引導系統的習慣。

另外,您可以遠端地完成 Linux 中的很多工作。只要有一些基本的網路服務在執行,您就可以進入到那個系統。而且,如果系統中一個特定的服務出現了問題,您可以在進行故障診斷的同時讓其他服務繼續執行。當您在一個系統上同時執行多個服務的時候,這種管理方式非常重要。

命令區分大小寫

所有的 Linux 命令和選項都區分大小寫。例如, -R 與 -r 不同,會去做不同的事情。控制檯命令幾乎都是小寫的。我們將在“ 第 2 部分. 控制檯速成班”中對命令進行更詳細的介紹。

我應如何定位 Linux?

從管理 Windows 到管理 Linux 的轉變是很麻煩的。不過,作為一個 Windows 管理員,您有自己的優勢。您對計算的工作方式的理解依然可用。能否成為一個成功的 Linux 管理員將取決於您對兩者區別的認識以及操作習慣的調整。

Linux 相對於 Windows 的許多變化都是有益的。空閒的 GUI 的開銷被歸還給服務。任務可以指令碼化並可以自動執行。配置檔案基於文字並且人類可讀。在大多數情況下不必重新引導系統。實際上,您應該抑制重新引導系統的衝動。

參考資料

* From DOS/Windows to Linux HOWTO 為那些具有 DOS 或 Windows 背景的人提供了一些快速上手的資料。

* 要開始在 Linux 上使用 IBM 的軟體產品, 為您的 Linux 應用開發加油提速 將為您提供最好的參考資料。您可以找到關於 DB2、Lotus Domino、WebSphere Application Server、WebSphere Studio 等多種應用軟體的安裝提示和參考資料。您還可以登入獲得免費的 Linux Software Evaluation Kit,裡面有試用軟體和培訓資料。

* 到 developerWorks 的 從這裡開始學習 Linux 頁面繼續學習 Linux 基本概念。

* “ Linux 使用者技術 FAQ” (developerWorks, 2001 年 7 月) 也可以幫助您順利地從 Windows 過渡到 Linux。

* Linux Documentation Project 是一個 Linux 文件倉庫,它所收集的文件包括單獨的軟體、HOWTO 文件、FAQ,等等。

* Linux Online! 提供了無偏見的 Linux 新聞和資訊。

* O'Reilly Network 是 Linux 技術書籍的極好資源。

* Linux at IBM 站點提供了軟體、連結、端到端的 Linux 解決方案、 使用者參考、IBM Alliances/Linux 產品夥伴和 IBM 開源產品。 特別的,請參閱 Linux at IBM 頁面上的 Learning Linux 和 Linux Education 資料。

* IBM 提供 Linux 專業認證 服務以及 UNIX 和 Linux 硬體和各種軟體系統 (包括 IBM 產品) 的 專業認證。

* IBM Partnerworld 為 IBM 的商務夥伴提供市場和銷售支援。

* Linux lens 是 IBM 商務夥伴快速接觸 Linux 的門戶。

* 在 developerWorks Linux 專區可以找到更多 為 Linux 開發者準備的參考資料。

關於作者

Chris Walden 是位於德克薩斯州奧斯汀的 IBM Developer Relations Technical Consulting(也稱為 dragonslayers)的一名電子商務架構師,該公司為 IBM 商業夥伴提供教育、實現和諮詢。他致力於 Linux 相關工作,一有機會就向身邊的人宣傳 Linux 的種種好處。除了完成他的架構師的職責之外,他還精通 Linux 基礎設施伺服器的各個領域,包括混合平臺使用者環境下的檔案、列印以及其他應用服務等。Chris 有 10 年的計算機行業經驗,從現場支援到 Web 應用開發和顧問,各個領域他都曾涉足。您可以透過 cmwalden-at-us.ibm.com 與 Chris 聯絡

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-939303/,如需轉載,請註明出處,否則將追究法律責任。

相關文章