1 / 48

Linux 系統操作與管理

Linux 系統操作與管理. VBird 2003/03/21. 報告內容. Linux 是什麼?如何學習? Linux 與硬體的關係? Linux 的操作: Shell 與線上說明文件 Linux 帳號管理 Linux 檔案系統管理 Linux 開機管理軟體 (LILO, Grub) Linux 程序管理與工作排程 Linux 套件管理員 Linux 問題的檢驗程序. Linux 是什麼?如何學習?. 作業系統. Linux 是什麼?如何學習?. Linux = 核心 (Kernel) + 套件 (Packages)

tierney
Download Presentation

Linux 系統操作與管理

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Linux 系統操作與管理 VBird 2003/03/21

  2. 報告內容 • Linux 是什麼?如何學習? • Linux 與硬體的關係? • Linux 的操作:Shell 與線上說明文件 • Linux 帳號管理 • Linux 檔案系統管理 • Linux 開機管理軟體(LILO, Grub) • Linux 程序管理與工作排程 • Linux 套件管理員 • Linux 問題的檢驗程序

  3. Linux 是什麼?如何學習? • 作業系統

  4. Linux 是什麼?如何學習? • Linux = 核心 (Kernel) + 套件(Packages) • 核心在控制整個系統(軟、硬體) • 核心的功能不同,支援的硬體就不同 • 各個 distributions 都使用 www.kernel.org 提供的 kernel, • 可以支援外掛模組(想像驅動程式) • packages 可以隨時抽換安裝

  5. Linux 是什麼?如何學習? • Shell 的類型 • 圖形介面 (X-Window System) • KDE, GNOME….. • 最大的優點是親和、中文化 • 文字介面 (BASH Shell) • 功能強大、但學習歷程較長 • 最大的優點是,更深入系統,適合系統管理員

  6. Linux 是什麼?如何學習? • 建議學習的心態 • 想玩一玩 Linux 而已: • 使用 X-Window 爽一爽即可 • 但不要架站喔! • 為了生活、為了興趣、為了管理: • 可以理解為什麼要這樣做? • 問題發生了,會知道哪裡可能出錯? • 整個流程的檢驗程序清晰!

  7. Linux 與硬體的關係 • 硬體的架構:X86 系統 • CPU 的等級 • 硬體裝置的 I/O 位址 • 裝置溝通的 IRQ 通道 • IDE 介面的硬碟 • 實體與虛擬的 RAM • USB 介面

  8. Linux 與硬體的關係 • 核心與硬體 • 核心需支援該硬體,硬體方可運作 • 可以利用類似驅動程式(模組)啟用硬體 • 硬體驅動模組設計是『硬體廠商』的責任--每人一信、開發才會快!^_^

  9. Linux 與硬體的關係 • 關於硬碟的裝置代號 • MBR? • Partition table ? • Primary, Extended, Logical ? • /dev/hda1, … /dev/hda5

  10. Linux 的操作 • Shell • 指令的操作 • # ls /home • # ls -l /home • # ls -al /home • # ls --help • # ls -al / /home /var /etc \ > /tmp /usr .

  11. Linux 的操作 • Shell • 指令的操作 • 每行指令均以 Enter 為『開始執行』的依據,不過可以 \ 延續下達 • 指令可接續參數(Options)來達成多樣化的工作 • 大小寫是完全不同的 • 藉由輸出訊息可瞭解問題、解決之

  12. Linux 的操作 • Shell • 變數的功能 • 環境當中,一些必要指令的用途 • HOME 家目錄 • MAIL 用 mail 時取得的 mailbox • PS1 提示字元囉! • PATH 執行檔的搜尋路徑 • ? 上個指令的執行結果回傳值

  13. Linux 的操作 • Shell • 變數的功能 • 簡化與優化指令或 scripts • 例如常使用的字串取代、 • 常使用的路徑取代…. • Shell scripts 當中的變數取代(最常見)

  14. Linux 的操作 • Shell • 進階指令操作--資料流重導向 • 將指令執行後,應該由螢幕輸出的的訊息導向到裝置或檔案當中; • # ls /home /vbird >> right 2>> error • 最常見在『背景』工作中!例如系統的一堆背景工作紀錄(syslogd)

  15. Linux 的操作 • Shell • 進階指令操作--管線命令 pipe • 將輸出的訊息繼續進行處理

  16. Linux 的操作 • Shell • 進階指令操作--管線命令 pipe • # last | grep root | wc -l • # cat /etc/passwd | cut -d ‘:’ -f1 > accout • 重點在於『僅』取得所需的資料,這與正規表示法常常離不開!

  17. Linux 的操作 • 文書處理器 vi • 管理員至少一定要會一種編輯器 • vi 的使用: • 一般模式:移動、複製、刪除、貼上 • 編輯模式:插入與取代文件 • 指令列模式:搜尋、自動取代、檔案存取等

  18. Linux 的操作 • 線上查詢 man page • 是否一定要『背』指令? • man command • man 5 configuration • info command (尤其 GNU 提供的工具) • /etc/man.conf (尤其自行安裝軟體) • whatis filename

  19. Linux 帳號與身份管理 • Linux 僅認識 ID 數字:UID, GID • 三種身份:owner, group, others • 與 Linux 檔案權限相關性很高! • /etc/passwd, /etc/shadow, /etc/group • 密碼的設定技巧

  20. Linux 帳號與身份管理 • Linux 僅認識 ID 數字:UID, GID • 兩種 UID: 0(root), 1~65534(一般身份) • 三種身份:owner, group, others • 與 Linux 檔案權限相關性很高! • /etc/passwd, /etc/shadow, /etc/group • 密碼的設定技巧

  21. Linux 帳號與身份管理 • 使用者查尋: • id • finger • groups • 變換身份: • su • sudo

  22. Linux 檔案系統管理 • 檔案類型: file type • regular files: data, ascii, binary programs.. • Directory • device files: Block, Character • 檔案系統類型:filesystem type • ext2, ext3, reiserfs • vfat, ntfs…..

  23. Linux 檔案系統管理 • 樹狀目錄

  24. Linux 檔案系統管理 • 檔案權限

  25. Linux 檔案系統管理 • 基本檔案與目錄管理操作 • ls, pwd, cd, mkdir, rmdir • cp, mv, rm, • cat, nl, head, tail, less, more, • file, diff

  26. Linux 檔案系統管理 • 檔案屬性的變換 • chown, chgrp, chmod • # chmod 777 bar

  27. Linux 檔案系統管理 • 檔案的搜尋 • which command (與 PATH 有關) • whereis filename • locate filename • find path type arguments

  28. Linux 檔案系統管理 • SetUID, SetGID, Sticky bite • 執行者在執行 binary program 過程中,會擁有 binary program owner 的權限,稱為 SUID。 • 若目錄被設定有 sticky bite 時,該目錄內的資料僅有檔案擁有者及 root 有權限刪除

  29. Linux 檔案系統管理 • 連結檔 • hard link • 不可跨 filesystems, 不可連結 directory • 所有的 link 為 0 時,檔案才會完蛋。 • Symbolic link • 就是『捷徑』囉!

  30. Linux 檔案系統管理 • 磁碟分割槽的掛載問題: • 每個 partition 就是一個完整的 filesystem • 使用 mount 來掛載每一個 partition , • 需要有 mount point 來掛載 (directory) • # mount -t vfat /dev/hda5 /mnt/windows • # mount -t ntfs /dev/hda6 /mnt/winnt • # mount -t ext3 /dev/hdb1 /mnt/linux2

  31. Linux 檔案系統管理 • 磁碟分割槽的分割問題: • fdisk 的使用(需瞭解 MBR, partition 的基本觀念) • mke2fs 來格式化 • fsck 來檢驗磁區 • /etc/fstab 來開機掛載!

  32. Linux 開機流程管理 • Loader:載入核心所必需 • MBR (Master Boot Recorder) • Super Block • Linux Loader: • LILO (LInux LOader) • Grub

  33. Linux 開機流程管理 • BIOS • Loader 載入 Kernel • 執行 init 程式(/etc/inittab 取得 run-level) • /etc/rc./* scripts • 載入外掛式模組(/etc/modules.conf) • 載入各 run-level 所需 scripts • /etc/rc.d/rc.local

  34. Linux 開機流程管理 • 更改核心、多重開機: • 修改 Loader 的啦! • 開機時載入、關機時關閉 • /etc/rc.d/rc[0-6].d/scripts (Kxx, Syy) • /etc/rc.d/rc.local

  35. Linux 程序管理與工作排程 • 什麼是程序? • 任何觸發系統工作的事件,系統會給予一個 process ID 來控制該事件的執行,這個 PID 就是程序! • 需要注意到,程序『屬於誰?他的權限是不同的!』而程序執行後輸出的訊息則與資料流有關!

  36. Linux 程序管理與工作排程 • 如何觀察程序? • top • ps • 常駐記憶體的程式(daemon, 服務) • 在背景下執行 • 是系統正常運作所必需要的(syslog,cron) • 是某些服務提供所必需要的(www, mail..)

  37. Linux 程序管理與工作排程 • 程序的優先執行順序? • Priority • nice value • nice 新的 PID • renice 已存在的 PID

  38. Linux 程序管理與工作排程 • 給予程序『訊號, signal』 • kill -signal PID • -1 重新讀取設定檔 • -9 無條件強制驅離記憶體 • -15 正常方式關閉該 PID

  39. Linux 程序管理與工作排程 • 重要的程序之一:syslog • 系統在背景下工作的各項服務所產生的『訊息』均統一由 syslog 這個服務 (daemon) 所管理 • /etc/syslog.conf • /var/log/messages • /var/log/secure ...

  40. Linux 程序管理與工作排程 • 背景與前景之工作管理 • & 與 ctrl + z • jobs • fg, bg, kill %number • 最常見在『單一工作視窗』當中!

  41. Linux 程序管理與工作排程 • 工作排程 • 循環式工作排程: • crontab • /etc/crontab • 單一工作排程: • at

  42. Linux 套件管理員 • RPM • 具有資料庫:容易安裝、升級、移除 • 在查驗及搜尋方面極為有效率 • 漏洞修補速度快速 • 最大的缺點:屬性相依的問題(這包含了版本、平台等等)

  43. Linux 套件管理員 • Tarball • 為原始碼 (open source) • 大部分的 tarball 均支援跨平台 • 需要額外的套件支援:make, kernel source, gcc 等等 • 升級、反安裝等較為不方便

  44. Linux 套件管理員 • 沒有任何一套作業系統會『完全』滿足您,所以使用者必需要至少學習一種套件管理員,以提供自我程式資料庫的安裝!

  45. Linux 問題的檢驗程序 • 先查看螢幕出現的錯誤訊息; • 由螢幕出現的錯誤訊息以 man 來查尋該問題的解決方法; • 檢驗登錄檔 (logfile) 的錯誤記錄; • 由錯誤記錄反查該套件的設定檔或者相關指令的校正!

  46. 個人小建議 • 學會一種以上的 package manager • 務必努力去找男人! • 至少要會使用 vi吧~~ ^_^ • 一定要瞭解 Linux 的目錄架構 • 一定要知道 User, Group, Others,以及 Process之間的關係!

  47. 個人小建議 • 知道如何追查與克服問題: • 養成日誌觀察的好習慣! • 天助自助者! • 科技永遠來自於人類的惰性: • 知道 cron 的用途; • 訓練執行 BASH 與編寫 scripts 的能力

  48. 個人小建議 • 『會用』比『會考試』應該要重要的多! • 由『實作』去體驗會比冥想有效的多! • 由『搜尋』取代『發問』會快速而有效的多!

More Related