Linux運維——高級文件系統管理

Linux運維——高級文件系統管理

一、磁盤配額

1、磁盤配額的概念

  • 控制用戶或用戶組使用磁盤空間以及文件個數的功能

2、磁盤配額條件

  • 內核必須支持磁盤配額
grep CONFIG_QUOTA /boot/config-3.10.0-1062.12.1.el7.x86_64
  • 系統中必須默認安裝了quota工具,Linux默認是安裝的
rpm -qa | grep quota
  • 安裝
yum install quota

要支持磁盤配額的分區必須開啓磁盤配額功能,這個功能需要手動開啓。

3、概念

  1. 用戶配額和組配額
  2. 磁盤容量限制和文件個數限制
  3. 軟限制和硬限制
  4. 寬限時間

如果用戶的空間佔用數處於軟限制和硬限制之間,系統會在用戶登錄時警告用戶磁盤將滿,這個時間就是寬限時間,默認爲7天。如果達到寬限時間,用戶的磁盤佔用量還超過軟限制,那麼軟限制就會升級爲硬限制。

4、磁盤配額示例

4.1分區

  • 將一個 5 GB 的分區掛載到/disk目錄中

4.2建立用戶和用戶組

groupadd test
useradd -G test user1
useradd -G test user2
useradd -G test user3
passwd user1
passwd user2
passwd user3

4.3在分區中開啓磁盤配額

mount -o remount,usrquota,grpquota /disk
# 重新掛載/disk分區,並加入用戶和用戶組的磁盤配額功能
  • 永久生效需要修改/etc/fstab文件
[UUID號] [要掛載到的目錄] [文件系統格式] defaults,usrquota,grpquota  0 0

4.4建立磁盤配額文件

quotacheck [選項] [分區名]
-u, --user 檢查用戶文件
-g, --group 檢查小組文件
-c, --create-files 創建新的配額文件
-b, --backup 創建舊配額文件的備份
-f, --force 強制檢查,即使取消了配額
-i, --interactive 交互模式
-n, --use-first-dquot 使用第一個拷貝的複製結構
-v, --verbose 打印更多的信息
-d, --debug 打印更多信息
-m, --no-remount 不以只讀方式重新安裝文件系統
-M, --try-remonut 嘗試以只讀方式重新掛載文件系統,即使失敗也要繼續
-R, --exclude-root 檢查所有文件系統時排除root用戶
-F, --format=formatname 檢查特定格式的配額文件
-a, --all 檢查所有文件系統
-h, --help 幫助信息
-V, --version 版本信息

使用此功能需要關閉selinux

# 獲取當前狀態
getenforce
# 暫時關閉
setenforce 0
# 開啓
setenforce 1
# 永久關閉需要修改/etc/selinux/config文件
SELINUX=disabled
  • 建立磁盤配額文件
quotacheck -avu

4.5設置用戶配額限制

edquota [選項] [用戶名或組名]
-u [用戶名] 設定用戶配額
-g [組名] 設定組配額
-t 設定寬限時間
-p 複製配額限制。如果已經設定好某個用戶的配額限制,其他用戶的配額限制如果和這個用戶相同,那麼可以直接複製配額限制,而不用都手工配置
  • 設置user1的配額
edquota -u user1
Disk quotas for user user1 (uid 1000):
Filesystem    blocks     soft     hard    inodes    soft    hard
/dev/sdb1        0      40000    50000       0        8       10

4.6啓動和關閉配額

啓動配額:

quotaon [選項] [分區名]
-a 依據/etc/mtab文件啓動所有的配額分區。如果不加-a需要指定分區名
-u 啓動用戶配額
-g 啓動組配額
-v 顯示啓動過程的信息
  • 開啓
quotaon -vu /disk/

關閉配額:

quotaoff [選項] [分區名]
命令選項與quotaon相同
  • 關閉
quotaoff -vu /disk/

4.7磁盤配額查詢

  • 使用quota查詢用戶或用戶組的配額:
quota [選項] [用戶名或組名]
-u [用戶名] 查詢用戶的配額
-g [組名] 查詢組的配額
-v 顯示詳細信息
-s 以習慣單位顯示容量大小,如M,G
quota -uvs user1
  • 使用repquota查詢文件系統配額
repquota [選項] [分區名]
-a 依據/etc/mtab文件查詢配額,不加-a選項時需要加分區名
-u 查詢用戶配額
-g 查詢組配額
-v 顯示詳細信息
-s 以習慣單位顯示容量大小
repquota -auvs

4.8測試

dd if=/dev/zero of=/disk/test bs=1M count=60
sdb1: warning, user block quota exceeded.
sdb1: write failed, user block limit reached.
dd: 寫入"/disk/testfile" 出錯: 超出磁盤限額
記錄了49+0 的讀入
記錄了48+0 的寫出
51195904字節(51 MB)已複製,0.147113 秒,348 MB/秒

4.9非交互設定用戶磁盤配額

setquota -u 用戶名 容量軟限制 容量硬限制 個數軟限制 個數硬限制 分區名

二、LVM 邏輯卷管理

1、簡介

LVM 是 Logical Volume Manager 的簡稱,中文爲邏輯卷管理

在這裏插入圖片描述

  • 物理卷(PV,Physical Volume):就是真正的物理硬盤或分區
  • 卷組(VG,Volume Group):將多個物理卷合起來就組成了卷組,組成同一個卷組的物理卷可以是同一個硬盤的不同分區,也可以是不同硬盤上的不同分區。我們可以把卷組想象爲一個邏輯硬盤。
  • 邏輯卷(LV,Logical Volume):卷組是一個邏輯硬盤,硬盤必須分區之後才能使用,這個分區我們稱爲邏輯卷。邏輯卷可以格式化和寫入數據,我們可以把邏輯卷想象成爲分區。
  • 物理擴展(PE,Physical Extend):PE是用來保存數據的最小單元,我們的數據實際上都是寫入PE當中,PE的大小是可以配置的,默認是4 MB。

2、建立LVM的步驟

  • 首先需要將物理硬盤分成分區,當然也可以是整塊物理硬盤
  • 然後把物理分區建立成爲物理卷(PV),也可以直接把整塊硬盤都建立爲物理卷
  • 將物理卷整合成爲卷組(VG),卷組就可以動態的調整大小,可以把物理分區加入卷組,也可以把物理分區從卷組中刪除
  • 最後就是把卷組在劃分成爲邏輯卷(LV),後進行格式化和掛載

3、物理卷管理

3.1硬盤分區

創建方式就是使用fdisk交互命令,不過需要注意的是分區的系統ID不再是Linux默認的分區,需要修改爲LVM的ID號8e。

3.2建立物理卷

pvcreate [設備文件名]

在創建物理卷時,可以將一個分區創建爲物理卷,也可以將一個磁盤創爲物理卷

3.3刪除物理卷

pvremove [設備文件名]

3.4查看物理卷

pvscan # 信息較少
pvdisplay # 可以查看全部信息

4、卷組管理

4.1建立卷組

vgcreate [選項] 卷組名 物理卷名
-s 指定PE的大小

4.2查看卷組

vgscan # 命令可查看內容較少
vgdisplay # 可以查看全部信息

4.3增加捲組容量

vgextend 卷組名 要添加的設備文件名

4.4減少卷組容量

vgreduce 卷組名 要移除的設備文件名

4.5刪除卷組

vgremove 卷組名

5、邏輯卷管理

5.1建立邏輯卷

lvcreate [選項] [-n 邏輯卷名] 卷組名
-L 指定邏輯卷大小,單位爲MB,GB,TB等
-l 按照PE個數指定邏輯卷大小
-n 邏輯卷名,指定邏輯卷名

5.2查看邏輯卷

lvscan # 命令可查看內容較少
lvdisplay # 可以查看全部信息

5.3調整邏輯卷大小

lvresize [選項] 邏輯卷設備文件名
-L 設置容量大小,單位 KB,GB,TB等,使用+表示增加使用-表示減少。如果直接寫大小,表示設置邏輯卷爲指定大小
-l 按照PE的個數調整邏輯卷大小
  • 使修改生效
resize2fs [選項] [設備文件名] [調整的大小]
-f 強制調整

5.4刪除邏輯卷

lvremove 邏輯卷設備文件名
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章