1. 程式人生 > 其它 >linux分割槽命令parted的用法

linux分割槽命令parted的用法

parted的適用場景

  • 建立操作大於2T的分割槽
    一般情況下,我們都是選擇使用fdisk工具來進行分割槽,但是目前在實際生產環境中使用的磁碟空間越來越大,呈TiB級別增長;而常用的fdisk這個工具對分割槽是有大小限制的,它只能劃分小於2T的磁碟,所以在劃大於2T磁碟分割槽的時候fdisk就無法滿足要求了;這個時候有2個方法,其一是通過卷管理來實現,其二就是通過parted工具來實現對GPT磁碟進行分割槽操作;這裡我們採用parted的方法來實現管理。

parted的2種使用方式

  • 互動式
    手動按序互動式的建立;
  • 非互動式
    可將命令列寫在指令碼中,執行指令碼實現一鍵建立;適用於遠端批量管理多臺主機的場景。
  • 兩種方式比較
    兩種方法的使用和原理其實是一樣的;要想實現非互動式建立,無非是在每一個具體的互動式命令前加上parted DEVICES_NAME即可。

parted實現分割槽管理實踐

實驗環境

作業系統

CentOS 7.5

檢視磁碟命令:lsblk, fdisk等;

磁碟資訊

  • 待管理磁碟
    /dev/sdb
  • 磁碟總大小
    18T
  • 分割槽需求
    將整個/dev/sdb劃分到同一個分割槽裡,並掛載到**/gfsdata01目錄下。

互動式方式實現分割槽步驟

選擇操作磁碟

parted命令後跟上欲操作磁碟的名字即可選擇此裝置進行操作。

[root@kvm ~]# parted /dev/sdb
GNU Parted 3.1
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.

新建磁碟標籤型別為GPT

因為parted命令只能針對gpt格式的磁碟進行操作,所以這裡必須將新建的磁碟標籤格式設為gpt。

(parted) mklabel gpt

分割槽

命令格式

mkpart PART-TYPE [FS-TYPE] START END
  • PART-TYPE(分割槽型別)
    • primary
      主分割槽
    • logical
      邏輯分割槽
    • extended
      擴充套件分割槽
  • FS-TYPE(檔案系統型別)
    • ext4
    • ext3
    • ext2
    • xfs
    • 其他......
  • START
    設定磁碟分割槽起始點;可以為0,numberMiB/GiB/TiB;
    • 0
      設定當前分割槽的起始點為磁碟的第一個扇區;
    • 1G
      設定當前分割槽的起始點為磁碟的1G處開始;
  • END
    設定磁碟分割槽結束點;
    • -1
      設定當前分割槽的結束點為磁碟的最後一個扇區;
    • 10G
      設定當前分割槽的結束點為磁碟的10G處;

將/dev/sdb整個空間分給同一個分割槽

(parted) mkpart primary 0 -1                                              
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I
(parted) p                                                                
Model: AVAGO AVAGO (scsi)
Disk /dev/sdb: 18.0TB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name     Flags
 1      17.4kB  18.0TB  18.0TB               primary
(parted) q                                                                
Information: You may need to update /etc/fstab.

格式化分割槽

因為整個/dev/sdb只分了一個區,則這個分割槽名預設會分配為/dev/sdb1;使用mkfs命令將/dev/sdb1分割槽格式化為ext4

[root@kvm ~]# mkfs -t ext4 /dev/sdb1                 
mke2fs 1.42.9 (28-Dec-2013)
/dev/sdb1 alignment is offset by 244736 bytes.
This may result in very poor performance, (re)-partitioning suggested.
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=64 blocks, Stripe width=64 blocks
274659328 inodes, 4394530311 blocks
219726515 blocks (5.00%) reserved for the super user
First data block=0
134111 block groups
32768 blocks per group, 32768 fragments per group
2048 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
        4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
        102400000, 214990848, 512000000, 550731776, 644972544, 1934917632, 
        2560000000, 3855122432

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

設定分割槽label(非必要)

[root@kvm ~]# e2label /dev/sdb1 /gfsdata01

建立掛載目錄

[root@kvm ~]# mkdir /gfsdata01

臨時掛載分割槽

[root@kvm ~]# mount /dev/sdb1 /gfsdata01
[root@kvm ~]# df -h
Filesystem                   Size  Used Avail Use% Mounted on
/dev/mapper/root_vg-lv_root   89G  2.6G   82G   4% /
devtmpfs                     126G     0  126G   0% /dev
tmpfs                        126G     0  126G   0% /dev/shm
tmpfs                        126G  2.0M  126G   1% /run
tmpfs                        126G     0  126G   0% /sys/fs/cgroup
/dev/sda1                    976M  216M  694M  24% /boot
/dev/sda7                     99G   61M   94G   1% /home
/dev/sda8                     62G   53M   59G   1% /tmp
/dev/sda6                     99G   61M   94G   1% /app
tmpfs                         26G     0   26G   0% /run/user/1014
tmpfs                         26G     0   26G   0% /run/user/0
/dev/sdb1                     17T   20K   16T   1% /gfsdata01

開機自動掛載(永久掛載)

即修改/etc/fstab檔案。

echo '/dev/sdb1 /gfsdata01    ext4    defaults    0 0' >>/etc/fstab