Linux 系統命令精通指南

2021-09-30 02:27:41 字數 2589 閱讀 5879

by lanf, 出處:

雖然 gui 桌面(如 kde 和 gnome)能夠幫助使用者利用 linux 特性,而無需關於命令列介面的功能知識,但還是經常會需要更多的功能和靈活性。而且,基本熟悉這些命令對於在 shell 指令碼中正確地使某些功能自動化仍然是必需的。

這篇文章是關於 linux 檔案命令的乙個「速成教程」,它是為那些剛接觸這個作業系統或者只是需要補充這方面知識的使用者提供的。它包含了對一些更有用的命令的乙個簡明的概述以及關 於它們的最強大的應用的指導。下面包含的資訊 — 結合一些實驗 — 將使您能夠容易地掌握這些基本的命令。(注意:當涉及到乙個與 oracle 集群檔案系統 (ocfs) 結合的核心時,這些命令中的某些命令的行為可能會稍微有所不同。在此情況下,oracle 提供了乙個 ocfs 工具集,該工具集可以為檔案命令應用提供乙個更好的選擇。)

注意,這裡包含的所有示例都在 suse linux 8.0 professional 上進行了測試。雖然沒有理由相信它們在其它的系統上將不能工作,但如果出現問題,您應當檢視您的文件,以了解可能的變化。

背景概念

在深入研究規範之前,讓我們回顧一些基礎知識。

檔案和命令

在 linux/unix 作業系統中,所有事物都被當作檔案來處理:硬體裝置(包括鍵盤和終端)、目錄、命令本身,當然還有檔案。這個奇怪的慣例實際上是 linux/unix 的能力和靈活性的基礎。

大多數(幾乎是全部)的命令形式如下:

command [option] [source file(s)] [target file]

獲取幫助

記得那句名言「所有動物一例平等但有些動物比其他動物更加平等」嗎?在 linux 世界中,根使用者掌管一切。

根使用者可以以另乙個使用者名稱 su (源自 "superuser")登入。要執行諸如新增乙個新使用者、印表機或檔案系統之類的任務,必須作為根使用者登入或者用 su 命令和根使用者密碼切換到超級使用者。系統檔案(包括控制初始化過程的系統檔案)歸根使用者所有。雖然可能允許普通使用者對它們進行讀操作,但出於系統安全性的原 因,編輯的權利將留給根使用者。

bash shell

雖然提供了其它的 shell,但 bash (bourne again shell) 是 linux 的預設 shell。它結合了與它同名的 bourne shell 的特性和 korn、c 和 tcsh shell 的特性。

bash 內建的命令 history 預設記錄最後輸入的 500 條命令。可以通過在命令提示符下輸入 history 來檢視它們。要檢索某個特定的命令,可以在命令提示符下按 up arrow 或 down arrow,或在歷史列表中輸入它的編號,並在編號前面加上 "!",例如:

$ !49

您還可以通過一條命令在歷史列表中離位置最靠前的專案的距離來執行該命令:如果在歷史列表中有 53 個事件,$ !-3 將執行事件號 51。

像 unix/linux 世界的其它 shell 一樣,bash 使用了特殊的環境變數來方便系統管理。例如:

我們在前一篇文章中了解到,在 linux/unix 世界中,一切都被看作檔案,包括系統管理命令。單獨對於組織而言,我們在本系列的第一部分中討論了檔案命令,並將在本文中提供最有用的系統診斷和維護命令。

對於檔案命令,我們在此處詳盡討論了某些相當簡單和直觀的管理命令。而只描述了其他較複雜命令的功能,以便在您需要使用時,知道存在這些 命令及其用途。本文不涉及對每個命令使用背後的基本原理的詳細討論,但是我們將討論最基本和最有用的命令,這些命令用於監視和管理印表機服務、檔案系統、 磁碟和程序。

有關超級使用者的更多資訊

這裡討論的很多命令可以由常規使用者在其自己的檔案和程序中執行。但是,某些命令,如 fdisk,需要有 root 許可權才能執行。

為了您的系統的完整性,建議您避免直接以 "root" 登入到系統中。相反,通常更適合以常規使用者登入,然後執行 su 或從 x window 執行 sux 命令來執行系統管理功能。(sux 為您提供 x window 環境以及 root 許可權。)當您以 root 使用者登入時,您會始終知道您處於這種狀態,因為您的提示符變為「#」。

超級使用者能夠使用 sudo,有選擇地將那些通常為 root 使用者或其他特殊使用者所保留的許可權分配給乙個不同的常規使用者。root 使用者可以定義實際和有效的使用者和組標識號 uid 和 gid,以便與預期使用者的標識相匹配。這種預期使用者可以是(但不必是)被允許執行該命令的使用者。

換言之,超級使用者可以允許其他使用者執行某個命令,但也可以確定由程序所產生的任何結果檔案應該屬於 root 使用者或任何由超級使用者指定的其他使用者。sudo 許可權一經分配,則只需要使用者使用自己的口令進行驗證,而不需要 root 使用者口令。

通用命令

從技術上講,uname、diff、date、sort 和 uniq 應該看作檔案命令,但由於它們經常用於診斷和維護例程的系統管理方面,在這裡解釋它們更有意義。

uname

uname 提供了常規系統資訊。當指定 -a 選項時,顯示所有可用資訊:

$ uname -a

linux linux 2.4.18-4gb #1 wed mar 27 13:57:05 utc 2002 i686 unknown

在這裡我們從左向右看到常規的系統資訊。每條資訊都有自己的選項(在下面的圓括號中),可以單獨顯示:

Linux 檔案命令精通指南

雖然 gui 桌面 如 kde 和 gnome 能夠幫助使用者利用 linux 特性,而無需關於命令列介面的功能知識,但還是經常會需要更多的功能和靈活性。而且,基本熟悉這些命令對於在 shell 指令碼中正確地使某些功能自動化仍然是必需的。這篇文章是關於 linux 檔案命令的乙個 速成教程 它是為...

Linux 檔案命令精通指南 上

在深入研究規範之前,讓我們回顧一些基礎知識。檔案和命令 在 linux unix 作業系統中,所有事物都被當作檔案來處理 硬體裝置 包括鍵盤和終端 目錄 命令本身,當然還有檔案。這個奇怪的慣例實際上是 linux unix 的能力和靈活性的基礎。大多數 幾乎是全部 的命令形式如下 command o...

Linux 檔案命令精通指南 一

雖然 gui 桌面 如 kde 和 gnome 能夠幫助使用者利用 linux 特性,而無需關於命令列介面的功能知識,但還是經常會需要更多的功能和靈活性。而且,基本熟悉這些命令對於在 shell 指令碼中正確地使某些功能自動化仍然是必需的。這篇文章是關於 linux 檔案命令的乙個 速成教程 它是為...