緯育 2026-0320
出自頂極製作所
Linux 基礎指令
本次講座主要介紹 Linux/Unix 系統中的核心概念與基礎指令。講師首先詳細解釋了控制檯 (Console) 和終端機 (Terminal) 的定義、差異及實際應用。控制檯是本地端直接操作的設備,而終端機則用於遠端連線。講座中也介紹了 Linux 的共通目錄架構,特別是 /dev 目錄,並強調「在 Unix/Linux 中,萬物皆為檔案」(Everything is a file) 的重要哲學。
接著,講師透過實際操作示範了多項基礎指令,包括虛擬控制檯 (TTY) 的切換、使用者登入登出、系統關機與重啟。並詳細解說了 Linux 指令的基本架構,包含指令本身、選項(長短選項的區別與用法)和參數。此外,也示範了 echo、date、cal 等常用指令,並說明如何自訂格式化輸出。
講座的另一大重點是查詢指令用法的三種主要方式:使用 --help 參數(可結合 | less 分頁檢視)、查閱 man 手冊(並介紹其章節編號的重要性,如 man 1 passwd 與 man 5 passwd 的區別),以及使用 info 指令。
Linux 基礎概念與課程介紹
- 課程內容概述
- 介紹 Linux 系統的基本操作,包括開關機與重啟。
- 講解 Linux 的目錄架構,說明各個通用目錄的用途。
- 大量介紹指令的架構、用法以及如何在本機查詢指令說明。
- 介紹檔案與目錄的操作指令。
- Linux 目錄架構共通性
- 不同的 Linux 發行版(如 Ubuntu, CentOS)或類 Unix 系統(如 macOS)都擁有共通的核心目錄結構。基礎架構大致一致,各發行版可能會有其特有的額外目錄。
控制檯 (Console)、終端機 (Terminal) 與 TTY/PTS
- 控制檯 (Console) vs. 終端機 (Terminal)
- 共通點: 兩者都是使用者與系統溝通的介面,用於執行指令、變更設定或顯示資訊。
- 控制檯 (Console): 指使用者直接在電腦主機的螢幕前進行的「本地端」操作。Linux 系統只有一個真實 Console,其餘為軟體模擬的虛擬控制檯 (Virtual Console, TTY)。
- 終端機 (Terminal): 指透過網路或纜線進行的「遠端連線」。在 Unix/Linux 中,也稱為偽終端機 (Pseudo Terminal, PTY 或 PTS)。
- Linux 虛擬控制檯 (TTY)
- 概念: Linux 透過軟體模擬出多個虛擬控制檯 (TTY),預設啟用 6 到 7 個。每個 TTY 都是獨立的登入介面,可在單一螢幕上實現多工操作。
- 切換方式:
- 使用快速鍵 Alt + F1 ~ F6 在不同 TTY 間切換。在圖形介面 (GUI) 下則需使用 Ctrl + Alt + F1 ~ F6。
- 使用指令 chvt [編號] 切換,例如 chvt 4 切換至 TTY4。
- 設備檔案: 虛擬控制檯對應的設備檔案位於 /dev 目錄下,如 /dev/tty1, /dev/tty2 等。可以使用 tty 指令查看當前所在的終端機。
- 遠端連線與偽終端機 (PTS)
- 連線原理: 透過 SSH 等方式遠端連線時,系統會建立一個偽終端機,並在 /dev/pts/ 目錄下生成一個對應的設備檔案,如 /dev/pts/0。
- 生命週期: PTS 檔案在使用者成功登入後建立,登出後即被移除。
- 桌面環境的終端機: 在圖形介面中開啟的「終端機」應用程式,本質上也是一個偽終端機 (PTS)。
- Everything is a file 哲學
- Unix/Linux 的核心哲學是「萬物皆為檔案」。硬體設備、控制檯、終端機都以檔案形式存在於 /dev 目錄。
- 使用者在 TTY 或 PTS 輸入的文字,實際上是與對應的設備檔案進行 I/O 溝通。可利用此特性進行跨終端機訊息傳遞,例如 echo "hello" > /dev/tty4。
使用者登入、登出與系統開關機
- 使用者登入與登出
- 登入 (Login): 輸入帳號密碼登入。系統會記錄所有登入嘗試,包括失敗記錄。
- 登出 (Logout): 可使用 exit、logout 指令或 Ctrl + D 快捷鍵。
- 系統關機與重開機
- 關機 (Shutdown):
- 常用指令:poweroff, halt, shutdown -h now。
- 定時關機:shutdown -h 10 (10分鐘後關機)。
- 重開機 (Reboot):
- 常用指令:reboot, shutdown -r now。
- 定時重開機:shutdown -r 10 (10分鐘後重開機)。
- 取消排程: 使用 shutdown -c 可以取消已預約的關機或重開機任務。
Linux 指令結構與查詢方法
- 指令基本結構
- 組成:指令 [選項] [參數],各部分以空白隔開。
- 選項 (Option):
- 長選項 (Long Option): 格式為 --單字 (如 --help),語意清晰但無法合併。
- 短選項 (Short Option): 格式為 -字母 (如 -h),輸入快且可合併 (如 -al),但較不直觀。
- 參數 (Argument): 指令操作的對象,其意義由指令和選項決定。
- 指令用法查詢方法
- 方法一:--help 參數:
- 用法:[指令名稱] --help,提供快速簡潔的說明。
- 搭配 | less: 當說明過長時,可使用 [指令] --help | less 進行分頁瀏覽。
- 方法二:man 手冊 (manual pages):
- 用法:man [指令名稱],提供最詳細、結構化的官方文件。
- 操作:可用 g/G 跳至頭尾,/ 進行搜尋,n/N 跳至下/上一個結果,q 退出。
- 章節編號: man 手冊分為 8 個主要章節,用以區分不同類型的主題。例如 passwd 指令(章節1)和 /etc/passwd 檔案格式(章節5)。可使用 man [章節] [名稱] 查詢特定章節,如 man 5 passwd。
- 方法三:info 指令:
- 用法:info [指令名稱],提供超連結式的節點文件,類似線上書籍。此為獨立套件,部分精簡系統可能需另外安裝。
基礎指令範例
- echo 指令: 將後方字串印出到標準輸出(螢幕),可透過重導向輸出至檔案或設備。
- date 指令: 顯示或設定系統時間日期。可使用 + 搭配格式化字元自訂輸出,例如 date +"%A, %B %d, %Y"。
- cal 指令: 顯示月曆。可接受年份、月份作為參數,如 cal 1 2020。在某些新版系統(如 Ubuntu 22.04)中可能需透過 apt install ncal 安裝。
- /etc/passwd 檔案: Linux 系統中儲存使用者帳號資訊的純文字檔案,可使用 less /etc/passwd 查看其內容。