1.19k likes | 1.27k Views
Linux 的檔案系統 …… ……………………1 Xlinux 的目錄架構 ……… . ……………5 群組的配置… ………… ………… … …….22 檔案結構…………… …………. …….29 L inux 套件管理………… …………. …..36 系統備份………………… …………. ….40 系統工具……………… ………………….. .41 vi ……………………… …………………. 42. 輸出入導向 … …………… ……………44 系統監督工具…… ………. …………46 關於程序…………… ……………… ……48 輔助說明………………………………50
E N D
Linux的檔案系統…………………………1 Xlinux的目錄架構……….……………5 群組的配置……………………………….22 檔案結構……………………….…….29 Linux套件管理…………………….…..36 系統備份…………………………….….40 系統工具…………………………………...41 vi………………………………………….42
輸出入導向……………………………44 系統監督工具…………….…………46 關於程序…………………………………48 輔助說明………………………………50 檔案管理……………………………………51 Linux如何開機…………………....53 編繹核心…………………………………57 模組…………………………………58
獲得系統資訊……………………………..60 記錄檔……………………………………… 61 Linux重要設定檔…………………………72 系統訊息……………………………………84 置換空間……………………………………88 系統安全……………………………………93 網路基礎介紹………………………………94 TCP/IP……………………………………..106 DNS…………………………….…………..114
Linux檔案系統 • 何謂檔案系統(file system) • 在Linux的環境下,所有的檔案、目錄,以及各個周邊裝置等全部的集合稱為一個檔案系統。 • 檔案系統是以樹狀結構的方式呈現,每一層目錄的環境下可以有檔案或是子目錄,而每一個子目錄又有自己的檔案或子目錄,如此一層層的下去。
Linux檔案系統 • 何謂檔案系統(續) • 整個檔案系統是以階層式的方式展現,而最上層的結構稱之為根目錄,所有的檔案或是目錄都是以根目錄為基礎而延伸出來的,就像是一棵倒過來的樹一般。
Linux檔案系統 • 檔案系統的管理 • 要維護好一個良好的目錄結構,必須有效的對目錄和檔案分門別類,以及熟悉檔案系統的各種基本的管理指令,如此一來,才能夠有效率的找到所需要的資料。
XLinux的目錄架構 • Linux安裝版本有很多種,每個版本的目錄構造、名稱,都有些許的差異,不過基本的大原則都是一樣的。 • 以下介紹的檔案架構以及其代表意義將會以XLinux系統的檔案架構為主。
/ bin lost+found home boot lib sbin var dev usr etc proc root tmp mnt XLinux的目錄架構
XLinux的目錄架構 • /bin • 擺放一些執行檔,如基本的程式 ls、mv、rm、mkdir、rmdir,基本的壓縮、解壓縮工具如 gzip、gunzip、tar,基本的網路工具 telnet、ftp 等等可執行程式。而基本上 /bin 目錄裡面的檔案一般都和 /usr/bin 連結,也 就是說 /bin 和 /usr/bin 這兩個目錄存放的檔案幾乎是完全一樣的。
XLinux的目錄架構 • /boot • 放置有關系統啟動 ( boot ) 之相關檔案。 • /sbin • 放置一些系統管理的程式,如:fdisk、mke2fs、mkswap、mount 等程式。
XLinux的目錄架構 • /dev • 存放和裝置(device)有關的檔案,Linux 上把所有的裝置都視為是一個檔案,例如第一顆硬碟在 Linux 代表的裝置檔案是『hda』,在 DOS 上是卻是用一個特別的名稱『C 磁碟機』來代表第一顆硬碟。 • 在 Linux 上都用檔案代表裝置,而這些檔案只是裝置的指標而已。
XLinux的目錄架構 • /etc • 幾乎所有系統設定檔案都放在這個目錄,要修改設定檔之前,最好都先備份比較好,否則修改不好或錯誤可能會造成系統運作不正常。 • 這裡的設定檔對系統管理者非常的重要,最好能夠了解這些設定檔與系統之間的對應關係。
XLinux的目錄架構 • /tmp • 這是提供給一般使用者能夠暫時存放檔案的目錄,因此這個目錄下時常會有些亂七八糟檔案,為了避免系統太過雜亂,管理者應該定期清理 /tmp。 • /lost+found • 存放系統不正常關機或其他原因所造成的流失檔案,如果夠幸運的話,能夠在這裡找到遺失的資料。
XLinux的目錄架構 • /home • 通常系統上所有使用者的家目錄都放在這個目錄底下。 • /lib • Linux 執行或編譯程式時,都需要某些函式庫(Library),而這個目錄就是擺放一些共享程式庫的檔案,供系統使用者使用。
XLinux的目錄架構 • /var • 類似 /usr 的功能,很多檔案都和 /usr 連結,不過 /var 裡的檔案都是變動性較高的,如 /var/log 這個目錄,系統運作過程中,產生的某些紀錄檔都會常常更新到這個目錄;/var/spool 這個目錄就是提供 spool 服務的目錄,許多程式如電子郵件系統、列印系統、以及 crontab 程式都會時常變更 /var/spool 裡面的資料。
XLinux的目錄架構 • /usr • 這個目錄主要放置和使用者有關的檔案,此目錄下還有很多子目錄,不同的目錄名稱放置不同種類的檔案和程式,一些重要的目錄大致如下:
/usr X11R6 etc doc local include lib man src /usr 的目錄架構
/usr 的目錄架構 • /usr/X11R6 • X Window System 的檔案。 • /usr/etc • 主要放系統的組態檔,及一些系統管理維護的程式和工具 ( utility ),一般都將 /etc 連結至此。 • /usr/doc • 主要為一些參考文件。
/usr 的目錄架構 • /usr/local • 自行安裝之軟體大多放在這邊,其目錄下還包含 bin、lib、include、src、 man ........等等子目錄。 • /usr/include • 系統函式的 include 檔,通常是一些檔名以 .h 為結尾的檔案。
/usr 的目錄架構 • /usr/lib • 存放公用函式庫(shared library),例如系統的 I/O 和一些數學函式,而這些函式的檔名通常是 libx.a 的形式 ( x 可能不只一個字母 )。一般都將 /lib 連結到這個目錄。
/usr 的目錄架構 • /usr/man • 主要放置一些線上說明檔 ( manual file ),給 man 指令使用的 man page file。 • /usr/src • 一些已安裝軟體的原始程式碼 ( source file ),如 sendmail、xview 等程式的原始碼。
XLinux 的目錄架構 • /proc • proc 是虛擬的檔案系統,主要放在記憶體內,而非放在硬碟內。系統會將每個 processID 給予一個檔名,將 process 當成檔案一般來管理,提供目前系統正在使用的 IRQ、I/O 埠、DMA 通道、CPU 的種類........等等相關環境資訊,有助於 process 的管理與除錯。
XLinux 的目錄架構 • /root • 系統管理者 root 的 Home Directory。 • /mnt • 系統內定的掛入點(mount point),當需要臨時掛入額外的系統檔案,一般用 /mnt 當做 mount point。 • /mnt/cdrom • 通常當做光碟機的掛入點。當光碟被 mount 時,光碟片的檔案可以在這裡看到。
群組的配置 • 群組簡介 • Linux的檔案系統有權限的概念,也就是別人有存取自已檔案的權限限制,但是若有特定檔案只開放給特定的使用者,且不想給其他的使用者使用,這時就要用到群組的配置了。 • 使用群組配置,能夠使系統管理更加具有彈性,也更加地安全。
群組的配置 • 個人群組 • 當新增一個使用者帳號的同時,系統預設會自動建立一個使用者自己的起始群組(primary group),而該使用者就是這個群組的唯一成員。 • 共同群組 • 管理者可以將數個使用者依照其不同特性給予共同的群組,來設定一些共同的權限,例如學生群組或老師群組可以給不同權限。
學生1 班級群組 學生2 學生3 群組的配置
群組的配置 • 共同群組的設定步驟 • 設定工作群組 • 加入群組成員 • 設定工作目錄 • 設定目錄權限
群組的配置 • 設定工作群組 • 首先建立工作群組 class。 • groupadd class • 加入群組成員 • 將屬於 student 群組的使用者加入該群組。 • gpasswd student1 class • gpasswd student2 class • gpasswd student3 class
群組的配置 • 設定工作目錄 • 在預定的目錄下建立想要群組共用的目錄。 • mkdir -p /home/student/homework • 然後設定homework目錄的所屬群組為 class。 • Chown -R .class /home/student/homework • 其中“ .class ”的點是代表class是個群組。
群組的配置 • 設定目錄權限 • 將群組對homework目錄的權限設成可讀寫。 • Chmod 2755 /home/student/homework • 其中 2755 的 2 是代表對群組權限做設定。 • 如此一來,每個群組成員都能夠在 homework目錄下建立檔案,而且該檔案所屬群組會是 class ,每個成員都有完整權限可以存取檔案。
檔案結構 • Linux檔案系統的結構如下: 啟動區塊 超級區塊 inode區塊 資料區塊
檔案結構 • 啟動區塊 • 啟動區塊是用來開機的區塊,負責載入作業系統。不管是硬碟或者是其他裝置檔案,只要是Linux檔案系統都會有一樣的結構。所以,就算是不由這個檔案系統來開機,這個區塊都會存在。
檔案結構 • 超級區塊 • 這個區塊存放著管理這個檔案系統的重要資料,如檔案系統的大小、區塊總數、可用區塊數、inode總數、檔案系統與磁碟的名稱等等,凡是這個檔案系統相關的資訊,都會被記錄在這裡。
檔案結構 • inode區塊 • 存放著inode list,也就是inode和資料及檔案間的關係。 • 資料區塊 • 真正儲存資料的位置,所有的檔案內容都是藉由inode table來定位,找出真正存放的位置。
檔案結構 • inode與檔案的關連 • inode是index node的縮寫,也就是索引節點,的意思。在Linux檔案系統中,inode是一個很重要的結構,所有對檔案的儲存讀取的動作,都是經由inode來控制檔案。 • inode的總數是有一定的上限,系統預設每4096 bytes 分配一個 inode,所以 預設 inode總數就是(分割區總容量)/4096 bytes。
檔案結構 • inode與檔案的關連(續) • 當檔案小數量多時,有可能發生還有可使用的資料區塊空間,inode卻已經用完的情形。 • 當檔案大數量少的時候,也有可能發生資料區塊用完,而inode 還有剩下的情況。 • 可以用df 指令來檢視檔案系統的容量和 inode的使用情形。
檔案結構 • df 指令(disk free) • 功能:顯示磁碟相關資訊 • 語法:df [-i] • 說明:不加上參數 i 時顯 示磁碟的檔案系統 使用情形,加些 -i 時,會額外顯示 inode的使用情形。
Linux套件管理 • Rpm 包裝 • Redhat Packages manager • Tgz 包裝 • .tar.gz
Linux套件管理 • Rpm 包裝 • 安裝rpm套件: • rpm -i *.rpm • rpm -i --replacefiles *.rpm • rpm -i --nodeps *.rpm • 反安裝rpm套件: • rpm -e *.rpm • rpm -e --nodeps *.rpm
Linux套件管理 • Rpm 包裝: • 更新(升級) • rpm -U *.rpm • 查詢 • rpm -qa • rpm -qf filename • rpm -ql *.rpm
Linux套件管理 • Tgz 包裝 • .tgz 或 .tar.gz 的檔案是由tar所產生的. • Tar 的用法: • 解開 • tar -xf *.tar • tar -zxf *.tgz
系統備份 • 利用tar • 備份: • cd / • tar -zcvf .backup.tgz * • 還原: • cd / • tar -zxvpf .backup.tgz
系統工具 • 文字編輯器: • vi, joe, …. • 過濾器: • grep, more, ….
Vi的用法 • Vi是一種文字編輯器, 分為以下模式: • 命令模式 • 編輯模式 • 指令列模式
Vi • 命令模式: • a 插入(進入編輯模式) • i 插入(進入編輯模式) • x 刪除一個字元 • dd 刪除一列 • :w 存檔 • :q 離開
輸出入導向 • Cat /proc/modules > /output • more < /etc/inittab • cat /etc/inittab | more
輸出入導向應用 • 請利用輸出入導向完成: • 查詢某一rpm軟體包是否已經安裝
系統監督工具 • 使用者: • who 查詢線上使用者 • w 查詢使用者動靜 • 程序: • ps 查看程序 • top 動態查看程序
系統監督工具 • 網路 • ifconifg • 查詢網路介面 • ftpwho • 查詢 ftp 使用者 • pppstats • 監控 ppp 狀態