1. 程式人生 > >linux給分割槽擴容

linux給分割槽擴容

專案執行時間越久,特別是圖片伺服器,儲存的多了,就會遇到磁碟滿的問題。
學會如何給linux分割槽擴容很有必要。
預設linux只允許有4個主分割槽。

展現下目前我機器的分割槽情況和硬碟情況。

[[email protected] ~]# df -h
檔案系統                 容量  已用  可用 已用% 掛載點
/dev/mapper/centos-root   17G   14G  3.1G   83% /
devtmpfs                 7.8G     0  7.8G    0% /dev
tmpfs                    7.8G     0  7.8G    0% /dev/shm
tmpfs                    7.8G  8.7M  7.8G    1% /run
tmpfs                    7.8G     0  7.8G    0% /sys/fs/cgroup
/dev/sda1               1014M  143M  872M   15% /boot
tmpfs                    1.6G     0  1.6G    0% /run/user/1005
tmpfs                    1.6G     0  1.6G    0% /run/user/0

可以看到/dev/mapper/centos-root使用83%了,該給它加點空間啦!

[[email protected] ~]# fdisk -l

磁碟 /dev/sda:64.4 GB, 64424509440 位元組,125829120 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 位元組 / 512 位元組
I/O 大小(最小/最佳):512 位元組 / 512 位元組
磁碟標籤型別:dos
磁碟識別符號:0x00000242

   裝置 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    41943039    19921920   8e  Linux LVM

磁碟 /dev/mapper/centos-root:18.2 GB, 18249416704 位元組,35643392 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 位元組 / 512 位元組
I/O 大小(最小/最佳):512 位元組 / 512 位元組


磁碟 /dev/mapper/centos-swap:2147 MB, 2147483648 位元組,4194304 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 位元組 / 512 位元組
I/O 大小(最小/最佳):512 位元組 / 512 位元組

目前我這裡有三塊磁碟,/dev/sda下有64G,分點給/dev/mapper/centos-root吧
首先執行

[[email protected] ~]# fdisk /dev/sda
歡迎使用 fdisk (util-linux 2.23.2)。

更改將停留在記憶體中,直到您決定將更改寫入磁碟。
使用寫入命令前請三思。


命令(輸入 m 獲取幫助):m
命令操作
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   g   create a new empty GPT partition table
   G   create an IRIX (SGI) partition table
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

在這裡我們新建一個分割槽,輸入n,p為主分割槽,因為我已經有/dev/sda1,和/dev/sda2,而linux只允許有4個主分割槽,從下面的提示也知道,2free(還可以再建兩個主分割槽),一直預設下去,我們就可以建立3號分割槽。

命令(輸入 m 獲取幫助):n
Partition type:
   p   primary (2 primary, 0 extended, 2 free)
   e   extended
Select (default p): p
分割槽號 (3,4,預設 3):
起始 扇區 (41943040-125829119,預設為 41943040):
將使用預設值 41943040
Last 扇區, +扇區 or +size{K,M,G} (41943040-125829119,預設為 125829119):
將使用預設值 125829119
分割槽 3 已設定為 Linux 型別,大小設為 40 GiB

命令(輸入 m 獲取幫助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 裝置或資源忙.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
正在同步磁碟。

再次用fdisk -l 檢視,可以看到多了一個/dev/sda3

[[email protected] ~]# fdisk -l

磁碟 /dev/sda:64.4 GB, 64424509440 位元組,125829120 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 位元組 / 512 位元組
I/O 大小(最小/最佳):512 位元組 / 512 位元組
磁碟標籤型別:dos
磁碟識別符號:0x00000242

   裝置 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    41943039    19921920   8e  Linux LVM
/dev/sda3        41943040   125829119    41943040   83  Linux

磁碟 /dev/mapper/centos-root:18.2 GB, 18249416704 位元組,35643392 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 位元組 / 512 位元組
I/O 大小(最小/最佳):512 位元組 / 512 位元組


磁碟 /dev/mapper/centos-swap:2147 MB, 2147483648 位元組,4194304 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 位元組 / 512 位元組
I/O 大小(最小/最佳):512 位元組 / 512 位元組

建立物理卷
執行pvcreate /dev/sda3,如果tab補全找不到sda3,可以先執行partprobe

[[email protected] ~]# pvcreate /dev/sda3
  Physical volume "/dev/sda3" successfully created.

使用vgscan查詢物理卷

[[email protected] ~]# vgscan 
  Reading volume groups from cache.
  Found volume group "centos" using metadata type lvm2

我的group為centos
使用新增物理卷擴充套件

[[email protected] ~]# vgextend centos /dev/sda3 
  Volume group "centos" successfully extended

接下來給/dev/mapper/centos-root增加10G,之前的是17G(從df -h可以知道)

[[email protected] ~]# lvextend -L +10G /dev/mapper/centos-root 
  Size of logical volume centos/root changed from <17.00 GiB (4351 extents) to <27.00 GiB (6911 extents).
  Logical volume centos/root successfully resized.

直接查詢是不能看到增加到27G了

[[email protected] ~]# df -h
檔案系統                 容量  已用  可用 已用% 掛載點
/dev/mapper/centos-root   17G   14G  3.1G   83% /
devtmpfs                 7.8G     0  7.8G    0% /dev
tmpfs                    7.8G     0  7.8G    0% /dev/shm
tmpfs                    7.8G  8.8M  7.8G    1% /run
tmpfs                    7.8G     0  7.8G    0% /sys/fs/cgroup
/dev/sda1               1014M  143M  872M   15% /boot
tmpfs                    1.6G     0  1.6G    0% /run/user/1005
tmpfs                    1.6G     0  1.6G    0% /run/user/0

因為我們的系統還不認識剛剛新增進來的磁碟的檔案系統,所以還需要對檔案系統進行擴容

[[email protected] ~]# xfs_growfs /dev/mapper/centos-root 
meta-data=/dev/mapper/centos-root isize=512    agcount=4, agsize=1113856 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=4455424, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 4455424 to 7076864

再次檢視,已經可以看到變成了27G了。

[[email protected] ~]# df -h
檔案系統                 容量  已用  可用 已用% 掛載點
/dev/mapper/centos-root   27G   14G   14G   52% /
devtmpfs                 7.8G     0  7.8G    0% /dev
tmpfs                    7.8G     0  7.8G    0% /dev/shm
tmpfs                    7.8G  8.8M  7.8G    1% /run
tmpfs                    7.8G     0  7.8G    0% /sys/fs/cgroup
/dev/sda1               1014M  143M  872M   15% /boot
tmpfs                    1.6G     0  1.6G    0% /run/user/1005
tmpfs                    1.6G     0  1.6G    0% /run/user/0