前提摘要:
ubuntu20,當主分區sda1剩余可用空間較少時,需進行硬盤分區擴容
A.服務器沒有卷組,需要創建卷組,掛載磁盤
1.
df -hl //查看磁盤可用空間大小
2.
fdisk -l //查看磁盤分區情況
由上圖可知:
/dev/sda:200GiB 已分區的磁盤
/dev/sdb: 15GiB 未分區的磁盤
3.對未分區的磁盤 /dev/sdb 進行分區
root@ubuntu:~# fdisk /dev/sdb Welcome to fdisk (util-linux 2.34). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0x0668a3c4. Command (m for help): p //輸入p指令,查看已分區數量(有0個 ) Disk /dev/sdb: 15 GiB, 16106127360 bytes, 31457280 sectors Disk model: VMware Virtual S Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x0668a3c4 Command (m for help): n //輸入 n {new partition}指令,新增加一個分區 Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p //輸入p {primary partition},分區類型選擇為主分區 Partition number (1-4, default 1): //輸入分區號 1 {partition number} ,分區號選1 First sector (2048-31457279, default 2048): //回車,默認(起始扇區) Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-31457279, default 31457279): //回車,默認(結束扇區) Created a new partition 1 of type 'Linux' and of size 15 GiB. Command (m for help): w //輸入w指令,將以上改動寫入分區表 The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.
保存后,重啟服務器,再次進入fdisk查看分區情況,可發現增加了一個 /dev/sdb1
格式化分區:mkfs.ext4 /dev/sdb1 //下面的操作會再執行一遍,此處可省略。
常用命令 | 說明 |
m | 獲取幫助 |
n | 添加新分區 |
d | 刪除分區 |
p | 打印分區表 |
t | 更改分區類型 |
w | 將分區表寫入磁盤並保存 |
4.創建卷組 <服務器系統不存在卷組vg>
關系:一個或多個物理卷(PV)組成卷組(VG),邏輯卷(LV)建立在卷組上。
vgscan //掃描虛擬卷組 vgdisplay //顯示虛擬卷組
vgcreate -s 8MB vgnew /dev/sdb1 //創建並把/dev/sdb1物理卷加入卷組vgnew,且指定PE<物理塊>的大小為8MB vgcreate [-s PE 大小] 卷組名 物理卷名 //[-s PE 大小] 選項的含義是指定 PE 的大小,單位可以是 MB、GB、TB 等。如果不寫,則默認 PE 大小是 4MB。 //這里的卷組名指的就是要創建的卷組的名稱,而物理卷名則指的是希望添加到此卷組的所有硬盤區分或者整個硬盤。 vgchange -a y 卷組名 //激活卷組 vgchange -a n 卷組名 //停用卷組 vgremove 卷組名 //移除卷組
lvcreate -L 14G -n lvname vgname //新建邏輯卷,並把卷組的14G分配給邏輯卷 lvdisplay //顯示邏輯卷信息 lvremove 邏輯卷位置 //移除邏輯卷
mkfs.ext4 /dev/vgnew/lvnew //格式化邏輯分區
5.掛載分區 (可以掛載到已有的目錄下,也可以新建一個目錄掛載)
mkdir /data //新建目錄data ls //列出目錄下內容 df -hl //查看可用磁盤空間
6.永久掛載
普通mount ,重啟機器后,就會失效,如果想永久掛載,還需要修改配置文件
vim /etc/fstab //修改配置文件
# # /etc/fstab # Created by anaconda on Mon Jul 1 01:07:33 2019 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=f66e8bc7-ef82-473e-b565-df8ef7cfcda7 / xfs defaults 0 0 UUID=c6e2743d-3e47-40a6-a74f-e429e1b3efc4 /boot xfs defaults 0 0 UUID=681ef8e7-767e-47d4-84c4-7d705ac9dea4 swap swap defaults 0 0 #/dev/vgnew/lvnew /data xfs auto 0 0 #邏輯分區 掛載點 文件格式(與前面格式化文件格式保持一致) defaults(默認是讀寫) 0 0 /dev/mapper/vgnew /date ext3 defaults 0 0
umount /dev/centos/root #卸載掛載點 mount -a #讀取配置文件掛載 reboot #重啟,查看掛載點,是否失效 df -T -h # 查看掛載的分區信息 parted -l #查看所有的分區信息 blkid mkfs -t ext3 /dev/sda4 mke2fs 1.39 (29-May-2006) /dev/sda4 isapparently in use by the system; will not make a filesystem here! 提示/dev/sda4 正在被使用。 /dev/sda4 正在被DM管理,所以我們創建文件系統時提示報錯,我們手工的移除,就可以正常的創建文件系統。 操作如下: dmsetup status dmsetup remove_all fuser -km /data # 強制終止 data進程
到此結束。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
B.服務器有卷組
1.
df -hl //查看磁盤可用空間
2.
fdisk -l //查看磁盤分區情況 發現存在 /dev/xvda 已分區 /dev/xvdb 未分區
使用fdisk /dev/xvdb 對磁盤分區 n(新建分區) p(建立分區) 1(分區編號為1) enter(開始扇區默認) enter(結束扇區默認) w(保存分區到磁盤) 隨后再使用fdisk -l 查看磁盤分區情況
3.創建物理卷 <服務器系統存在卷組vg>
關系:一個或多個物理卷(PV)組成卷組(VG),邏輯卷(LV)建立在卷組上。
//由上圖df -hl 可知,系統已存在卷組ubuntu-vg ,邏輯卷ubuntu-root pvcreate /dev/xvdb1 //創建物理卷 vgextend ubuntu-vg /dev/xvdb1 //將新建的物理卷xvdb1加⼊到卷組ubuntu-vg lvextend -L +49G /dev/ubuntu-vg/ubuntu-root //擴展已有邏輯卷的容量 resize2fs /dev/mapper/ubuntu--vg-ubuntu--root //⽂件系統擴容
隨后再使用df -hl查看磁盤空間,可以看到磁盤大小已從8G變成57G
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
專業名詞:
*物理存儲介質(PhysicalStorageMedia) //指系統的物理存儲設備:磁盤,如:/dev/hda、/dev/sda等,是存儲系統最底層的存儲單元。 *物理卷(Physical Volume,PV) //指磁盤分區或從邏輯上與磁盤分區具有同樣功能的設備(如RAID),是LVM的基本存儲邏輯塊, //--但和基本的物理存儲介質(如分區、磁盤等)比較,卻包含有與LVM相關的管理參數。 *卷組(Volume Group,VG) //類似於非LVM系統中的物理磁盤,其由一個或多個物理卷PV組成。可以在卷組上創建一個或多個LV(邏輯卷)。 *邏輯卷(Logical Volume,LV) //類似於非LVM系統中的磁盤分區,邏輯卷建立在卷組VG之上。在邏輯卷LV之上可以建立文件系統(比如/home或者/usr等)。 *物理塊(Physical Extent,PE) //每一個物理卷PV被划分為稱為PE(Physical Extents)的基本單元,具有唯一編號的PE是可以被LVM尋址的最小單元。 //--PE的大小是可配置的,默認為4MB。所以物理卷(PV)由大小等同的基本單元PE組成。 *邏輯塊(Logical Extent,LE)
其他:
ubuntu 非lvm 模式 擴充根目錄<不推薦!!!>
業務需求 因為服務器沒有預裝lvm ,不能直接擴容 ,且之前所有文件在同一塊硬盤上,但業務需要需要擴容 , 有多塊硬盤可以使用
fdisk -l ##顯示所有物理存儲介質 假裝有圖:sdb為原有硬盤,sdc為其他硬盤 分別輸入fdisk /dev/sdb ,fdisk /dev/sdc d(刪除原來盤符) n(新建分區) p(建立分區) 1(分區編號為1) enter(開始扇區默認) enter(結束扇區默認) y t(修改磁盤模式) 8e(Linux LVM) w(保存) pvcreate /dev/sdb1 pvcreate /dev/sdc1 vgcreate vgnew /dev/sdb1 //創建 卷組 lvcreate -L 500G -n lvnew vgnew //創建邏輯卷,並將物理卷中的空間分配500G給邏輯卷 vgextend vgnew /dev/sdc1 //使用擴張卷組 lvextend -L+500G /dev/mapper/lvnew //擴充邏輯卷 resize2fs /dev/mapper/lvnew mkfd.ext4 /dev/mapper/lvnew //格式化 mkdir /home2 mount /dev/mapper/lvnew/home2 cp -rf /home/* /home2 blkid //根據輸出的 uuid來設置 /etc/fstab的值 vi /etc/fstab #如下圖 reboot