370 likes | 581 Views
Linux 基礎å¸ç¿’. Chapter 15 ç£ç¢Ÿé…é¡ ( Quota ) 與進階檔案系統管ç†. 內容. ç£ç¢Ÿé…é¡ (Quota) 的應用與實作 軟體ç£ç¢Ÿé™£åˆ— (Software RAID) é‚輯æ²è»¸ç®¡ç†å“¡ (Logical Volume Manager). 15.1  ç£ç¢Ÿé…é¡ (Quota) 的應用與實作. 15.1.1 什麼是 Quota 用來é™åˆ¶ä½¿ç”¨è€…使用ç£ç¢Ÿç©ºé–“的一個機制; å¯ä»¥è®“使用者使用資æºæ›´ç‚ºå…¬å¹³ï¼› 一般用途: é‡å° WWW server ,例如:æ¯å€‹äººçš„網é 空間的容é‡é™åˆ¶ï¼
E N D
Linux 基礎學習 Chapter 15 磁碟配額(Quota)與進階檔案系統管理 Linux基礎--磁碟配額(Quota)與進階檔案系統管理
內容 • 磁碟配額 (Quota) 的應用與實作 • 軟體磁碟陣列 (Software RAID) • 邏輯捲軸管理員 (Logical Volume Manager) Linux基礎--磁碟配額(Quota)與進階檔案系統管理
15.1 磁碟配額 (Quota) 的應用與實作 • 15.1.1 什麼是 Quota • 用來限制使用者使用磁碟空間的一個機制; • 可以讓使用者使用資源更為公平; • 一般用途: • 針對 WWW server ,例如:每個人的網頁空間的容量限制! • 針對 mail server,例如:每個人的郵件空間限制。 • 針對 file server,例如:每個人最大的可用網路硬碟空間。
15.1 磁碟配額 (Quota) 的應用與實作 • Quota 的一般用途 • 針對WWW server ,例如:每個人的網頁空間的容量限制! • 針對 mail server,例如:每個人的郵件空間限制。 • 針對 file server,例如:每個人最大的可用網路硬碟空間 (教學環境中最常見!)
15.1 磁碟配額 (Quota) 的應用與實作 • Quota 的使用限制 • 僅能針對整個 filesystem • 核心必須支援 quota • Quota 的記錄檔 • 只對一般身份使用者有效
15.1 磁碟配額 (Quota) 的應用與實作 • Quota 的規範設定項目 • 容量限制或檔案數量限制 (block 或 inode) • 柔性勸導與硬性規定 (soft/hard) • 會倒數計時的寬限時間 (grace time) soft, hard, grace time 的相關性
15.1 磁碟配額 (Quota) 的應用與實作 • 15.1.2 一個 Quota 實作範例
15.1 磁碟配額 (Quota) 的應用與實作 • 15.1.3 實作 Quota 流程-1:檔案系統支援
15.1 磁碟配額 (Quota) 的應用與實作 • 15.1.4 實作 Quota 流程-2:建立 quota 記錄檔 • quotacheck :掃瞄檔案系統並建立 Quota 的記錄檔
15.1 磁碟配額 (Quota) 的應用與實作 • 15.1.5 實作 Quota 流程-3:Quota 啟動、 關閉與限制值設定 • quotaon :啟動 quota 的服務
15.1 磁碟配額 (Quota) 的應用與實作 • quotaoff :關閉 quota 的服務
15.1 磁碟配額 (Quota) 的應用與實作 • 15.1.6 實作 Quota 流程-4:Quota 限制值的報表 • quota :單一用戶的 quota 報表
15.1 磁碟配額 (Quota) 的應用與實作 • repquota :針對檔案系統的限額做報表
15.1 磁碟配額 (Quota) 的應用與實作 • 15.1.7 實作 Quota 流程-5:測試與管理 • warnquota :對超過限額者發出警告信
15.1 磁碟配額 (Quota) 的應用與實作 • setquota :直接於指令中設定 quota 限額
15.1 磁碟配額 (Quota) 的應用與實作 • 15.1.8 不更動既有系統的 quota 實例 1.將 /var/spool/mail 這個目錄完整的移動到 /home 底下; 2.利用 ln -s /home/mail /var/spool/mail 來建立連結資料; 3.將 /home 進行 quota 限額設定
15.2 軟體磁碟陣列 (Software RAID) • 15.2.1 什麼是 RAID • RAID-0 (等量模式, stripe):效能最佳 RAID-0 的磁碟寫入示意圖
15.2 軟體磁碟陣列 (Software RAID) • RAID-1 (映射模式, mirror):完整備份 RAID-1 的磁碟寫入示意圖
15.2 軟體磁碟陣列 (Software RAID) • RAID 0+1,RAID 1+0 RAID-0+1 的磁碟寫入示意圖
15.2 軟體磁碟陣列 (Software RAID) • RAID 5:效能與資料備份的均衡考量 RAID-5 的磁碟寫入示意圖
15.2 軟體磁碟陣列 (Software RAID) • Spare Disk:預備磁碟的功能 當磁碟陣列的磁碟損毀時,就得要將壞掉的磁碟拔除,然後換一顆新的磁碟。換成新磁碟並且順利啟動磁碟陣列後,磁碟陣列就會開始主動的重建 (rebuild) 原本壞掉的那顆磁碟資料到新的磁碟上!然後你磁碟陣列上面的資料就復原了!這就是磁碟陣列的優點。不過,我們還是得要動手拔插硬碟,此時通常得要關機才能這麼做。 • 磁碟陣列的優點 • 資料安全與可靠性:指的並非資訊安全,而是當硬體(指磁碟) 損毀時,資料是否還能夠安全的救援或使用之意 • 讀寫效能:例如 RAID 0 可以加強讀寫效能,讓你的系統 I/O 部分得以改善 • 容量:可以讓多顆磁碟組合起來,故單一檔案系統可以有相當大的容量
15.2 軟體磁碟陣列 (Software RAID) • 15.2.2software, hardware RAID 為何磁碟陣列又分為硬體與軟體呢?所謂的硬體磁碟陣列 (hardware RAID) 是透過磁碟陣列卡來達成陣列的目的。磁碟陣列卡上面有一塊專門的晶片在處理 RAID 的任務,因此在效能方面會比較好。在很多任務 (例如 RAID 5 的同位檢查碼計算) 磁碟陣列並不會重複消耗原本系統的 I/O 匯流排,理論上效能會較佳。此外目前一般的中高階磁碟陣列卡都支援熱拔插,亦即在不關機的情況下抽換損壞的磁碟,對於系統的復原與資料的可靠性方面非常的好用。
15.2 軟體磁碟陣列 (Software RAID) • 15.2.3 軟體磁碟陣列的設定
15.2 軟體磁碟陣列 (Software RAID) • 15.2.4 模擬 RAID 錯誤的救援模式
15.2 軟體磁碟陣列 (Software RAID) • 15.2.5 開機自動啟動 RAID 並自動掛載
15.2 軟體磁碟陣列 (Software RAID) • 15.2.6 關閉軟體 RAID(重要!)
15.3 邏輯捲軸管理員 (Logical Volume Manager) • 15.3.1 什麼是 LVM:PV, PE, VG, LV 的意義 • Physical Volume, PV, 實體捲軸 • 我們實際的 partition 需要調整系統識別碼 (system ID) 成為 8e (LVM 的識別碼),然後再經過 pvcreate 的指令將它轉成 LVM 最底層的實體捲軸 (PV) ,之後才能夠將這些 PV 加以利用!調整 system ID 的方是就是透過 fdisk 啦! • Volume Group, VG, 捲軸群組 • 所謂的 LVM 大磁碟就是將許多 PV 整合成這個 VG 的東西就是啦!所以 VG 就是 LVM 組合起來的大磁碟!這麼想就好了。那麼這個大磁碟最大可以到多少容量呢?這與底下要說明的 PE 有關喔~因為每個 VG 最多僅能包含 65534 個 PE 而已。如果使用 LVM 預設的參數,則一個 VG 最大可達 256GB 的容量啊!(參考底下的 PE 說明)
15.3 邏輯捲軸管理員 (Logical Volume Manager) • Physical Extend, PE, 實體延伸區塊 • LVM 預設使用 4MB 的 PE 區塊,而 LVM 的 VG 最多僅能含有 65534 個 PE ,因此預設的 LVM VG 會有 4M*65534/(1024M/G)=256G。這個 PE 很有趣喔!它是整個 LVM 最小的儲存區塊,也就是說,其實我們的檔案資料都是藉由寫入 PE 來處理的。簡單的說,這個 PE 就有點像檔案系統裡面的 block 大小啦。這樣說應該就比較好理解了吧?所以調整 PE 會影響到 VG 的最大容量喔! • Logical Volume, LV, 邏輯捲軸 • 最終的 VG 還會被切成 LV,這個 LV 就是最後可以被格式化使用的類似分割槽的咚咚了!那麼 LV 是否可以隨意指定大小呢?當然不可以!既然 PE 是整個 LVM 的最小儲存單位,那麼 LV 的大小就與在此 LV 內的 PE 總數有關。為了方便使用者利用 LVM 來管理其系統,因此 LV 的裝置檔名通常指定為『 /dev/vgname/lvname 』的樣式!
15.3 邏輯捲軸管理員 (Logical Volume Manager) • 實作流程 LVM 各元件的實現流程圖示
15.3 邏輯捲軸管理員 (Logical Volume Manager) • 15.3.2LVM 實作流程 • PV 階段 pvcreate :將實體 partition 建立成為 PV ; pvscan :搜尋目前系統裡面任何具有 PV 的磁碟; pvdisplay :顯示出目前系統上面的 PV 狀態; pvremove :將 PV 屬性移除,讓該 partition 不具有 PV 屬性。
15.3 邏輯捲軸管理員 (Logical Volume Manager) • VG 階段 vgcreate :就是主要建立 VG 的指令啦!它的參數比較多,等一下介紹。 vgscan :搜尋系統上面是否有 VG 存在? vgdisplay :顯示目前系統上面的 VG 狀態; vgextend :在 VG 內增加額外的 PV ; vgreduce :在 VG 內移除 PV; vgchange :設定 VG 是否啟動 (active); vgremove :刪除一個 VG 啊!
15.3 邏輯捲軸管理員 (Logical Volume Manager) • LV 階段 lvcreate :建立 LV 啦! lvscan :查詢系統上面的 LV ; lvdisplay :顯示系統上面的 LV 狀態啊! lvextend :在 LV 裡面增加容量! lvreduce :在 LV 裡面減少容量; lvremove :刪除一個 LV ! lvresize :對 LV 進行容量大小的調整!
15.3 邏輯捲軸管理員 (Logical Volume Manager) • 15.3.3 放大 LV 容量 1.用 fdisk 設定新的具有 8e system ID 的 partition 2.利用 pvcreate 建置 PV 3.利用 vgextend 將 PV 加入我們的 vbirdvg 4.利用 lvresize 將新加入的 PV 內的 PE 加入 vbirdlv 中 5.透過 resize2fs 將檔案系統的容量確實增加!
15.3 邏輯捲軸管理員 (Logical Volume Manager) • 15.3.4 縮小 LV 容量
15.3 邏輯捲軸管理員 (Logical Volume Manager) • 15.3.5LVM 的系統快照 LVM 系統快照區域的備份示意圖(虛線為檔案系統,長虛線為快照區)
15.3 邏輯捲軸管理員 (Logical Volume Manager) • 15.3.6LVM 相關指令彙整與 LVM 的關閉