初始化Linux數據盤(容量小于等于2TiB)
操作場景
新購買的云硬盤在掛載至云服務器后,還需要進行初始化,即格式化云硬盤,之后才可以正常使用。Linux系統中的數據盤,不同云服務器的操作系統的初始化操作可能不同,請根據您的實際環境進行操作。
MBR分區支持的云硬盤最大容量為2 TiB,GPT分區支持的最大云硬盤容量為18 EiB,因此當云硬盤容量小于2TiB的時候,你可以選擇創建MBR或者GPT分區。但是,當云硬盤容量大于2 TiB或目前小于等于2 TiB但后續可能會擴容至2TiB以上時,請在初始化云硬盤時,分區格式選擇GPT分區。
操作指導 | 操作系統 | 分區格式 | 常見文件系統 | 配置示例 |
---|---|---|---|---|
使用fdisk工具初始化數據盤 | 不限 | MBR | ext*(如ext2、ext3、ext4)、xfs、btrfs |
|
使用parted工具初始化數據盤 | 不限 |
| 參見使用Parted工具初始化數據盤 | |
使用腳本初始化數據盤 | CentOS | MBR | ext4 |
|
前提條件
云硬盤已掛載到云服務器上,掛載云硬盤參見掛載云硬盤。
約束與限制
從數據源創建的云硬盤無需初始化。該云硬盤在初始狀態就具有數據源中的數據,初始化有丟失數據的風險。如果需要重新初始化,建議先備份云硬盤中的數據。
初始化云硬盤不會刪除云硬盤快照,初始化后仍可以使用快照回滾數據至原云硬盤。
操作步驟
初始化主要操作步驟為創建分區和文件系統,掛載分區,設置開啟自動掛載。
示例說明:使用fdisk工具,針對“/dev/vdb”數據盤劃分2個分區,分別為40GiB(/dev/vdb1)、60GiB(/dev/vdb2),分區設置為MBR。
1:登錄云服務器。
2:創建分區:針對數據盤“/dev/vdb”劃分2個主分區/dev/vdb1、/dev/vdb2。
a. 查看/dev/vdb數據盤容量為100GiB。
lsblk
[root@ecs-centos76 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 253:0 0 40G 0 disk └─vda1 253:1 0 40G 0 part / vdb 253:16 0 100G 0 disk
表示當前有兩塊云硬盤,“/dev/vda”是系統盤,“/dev/vdb”是新增數據盤,有100GiB還未分區。
依次執行以下命令為/dev/vdb新建第一個主分區/dev/vdb1。
fdisk /dev/vdb
n
p
1
[root@ecs-test-0001 ~]# fdisk /dev/vdb Welcome to fdisk (util-linux 2.23.2). 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 tableBuilding a new DOS disklabel with disk identifier 0x38717fc1. Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extendedSelect (default p): p Partition number (1-4, default 1): 1
“Partition type”:“p”表示主分區,“e”表示擴展分區,默認為主分區。
“Partition number”:分區編號,可以選擇1-4。
c. 針對第一個分區/dev/vdb1(40 GiB)設置起始磁柱值(2048)和截止磁柱值(83886079)。
First sector (2048-209715199, default 2048): 2048 Last sector, +sectors or +size{K,M,G} (2048-209715199, default 209715199):83886079 Partition 1 of type Linux and of size 40 GB is set
磁柱 | /dev/vdb1(40GiB) | /dev/vdb2(60GiB) | sectors值計算公式 |
---|---|---|---|
起始磁柱值 | 2048(此處使用數據盤/dev/vdb的起始磁柱) | /dev/vdb1的截止磁柱值 + 1 = 83886079+1 = 83886080 | sectors值 =容量*1073741824/512 |
截止磁柱值 | sectors值-1 =(40 * 1073741824 / 512 )-1 =83886079 | 起始磁柱值 + sectors - 1 = 83886080+(60 * 1073741824 / 512 ) -1 = 209715199 |
d. 依次執行以下命令開始新建第二個主分區/dev/vdb2。
n
p
2
Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extendedSelect (default p): p Partition number (1-4, default 2): 2
e. 針對第2個分區/dev/vdb2設置起始磁柱值(83886080)和截止磁柱值(209715199)。
First sector (83886080-209715199, default 83886080): 83886080 Last sector, +sectors or +size{K,M,G} (83886080-209715199, default 209715199):209715199 Partition 2 of type Linux and of size 60 GB is set
f.查看新建分區大小、分區格式信息。
p
Command (m for help): p Disk /dev/vdb: 107.4 GB, 107374182400 bytes, 209715200 sectors Units = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk label type: dos Disk identifier: 0x994727e5 Device Boot Start End Blocks Id System /dev/vdb1 2048 83886079 41942016 83 Linux /dev/vdb2 83886080 209715199 62914560 83 Linux Command (m for help):
Disk label type: dos表示分區格式為MBR。
說明:
如果之前分區操作有誤,請輸入“q”,按“Enter”,則會退出fdisk分區工具,之前的分區結果將不會被保留。此時,重新執行創建分區步驟1和步驟2即可。
g. 確認完成后,將分區結果寫入分區表中。
w
Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
表示分區創建完成。
說明:
如果出現報錯“-bash: partprobe: command not found”,則說明系統不識別該命令,需要執行“yum install -y parted”命令來安裝該命令。安裝成功后再執行上述命令。
h.執行以下命令,將新的分區表變更同步至操作系統。
partprobe
3.創建文件系統。
a .分別對分區/dev/vdb1(40GiB)和/dev/vdb2(60GiB)創建ext4文件系統。
mkfs -t ext4 /dev/vdb1
mkfs -t ext4 /dev/vdb2
說明:
mkfs -t 文件系統格式 磁盤分區名:設置xfs格式文件系統命令為mkfs -t xfs 磁盤分區名,設置btrfs格式文件系統命令為mkfs -t btrfs 磁盤分區名。
創建文件系統格式需要等待一段時間,請確保看到如下回顯后,再退出。
[root@ecs-test-0001 ~]# mkfs -t ext4 /dev/vdb1 mke2fs 1.42.9 (28-Dec-2013) Filesystem label=OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks2621440 inodes, 10485504 blocks524275 blocks (5.00%) reserved for the super userFirst data block=0Maximum filesystem blocks=2157969408320 block groups32768 blocks per group, 32768 fragments per group8192 inodes per groupSuperblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done
b.執行以下命令確認文件系統類型是否是ext4。
blkid /dev/vdb
[root@ecs-test-0001 ~]# blkid /dev/vdb /dev/vdb1: UUID="0b3040e2-1367-4abb-841d-ddb0b92693df" TYPE="ext4" /dev/vdb2: UUID="0d6769k2-1745-9dsf-453d-hgd0b34267dj" TYPE="ext4"
4. 新建目錄,并將新建分區掛載至新建目錄。
掛載/dev/vdb1到/mnt/sdc
mkdir -p /mnt/sdc
mount /dev/vdb1 /mnt/sdc
掛載/dev/vdb2到/mnt/sdd
mkdir -p /mnt/sdd
mount /dev/vdb2 /mnt/sdd
查看掛載結果
lsblk
[root@ecs-test-0001 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 253:0 0 40G 0 disk ├vda1 253:1 0 40G 0 part / vdb 253:16 0 100G 0 disk ├vdb1 253:17 0 40G 0 part /mnt/sdc ├vdb2 253:18 0 60G 0 part /mnt/sdd
表示新建分區“/dev/vdb1”和“/dev/vdb2”已分別掛載至“/mnt/sdc”、“/mnt/sdd”。
5.(可選)使用磁盤分區的UUID來設置開機自動掛載磁盤分區。
UUID(universally unique identifier)是Linux系統為磁盤分區提供的唯一的標識字符串。重啟后,掛載會失效,因此需要設置開機自動掛載磁盤分區,即在/etc/fstab文件中添加新建磁盤分區信息,啟動開機自動掛載磁盤分區。
說明:
不建議采用在“/etc/fstab”文件中直接指定設備名(比如/dev/vdb1)的方法,因為云中設備的順序編碼在關閉或者開啟云服務器過程中可能發生改變(例如:/dev/vdb1可能會變成/dev/vdb2),可能會導致云服務器重啟后不能正常運行。
該操作不會影響彈性云服務器中的現有數據。
a.查詢磁盤分區的UUID。
blkid /dev/vdb1
blkid /dev/vdb2
[root@ecs-test-0001 ~]# blkid /dev/vdb /dev/vdb1: UUID="0b3040e2-1367-4abb-841d-ddb0b92693df" TYPE="ext4" /dev/vdb2: UUID="0d6769k2-1745-9dsf-453d-hgd0b34267dj" TYPE="ext4"
下一步會使用查詢到的UUID,請做好記錄:示例UUID為:0b3040e2-1367-4abb-841d-ddb0b92693df、0d6769k2-1745-9dsf-453d-hgd0b34267dj。
b.設置開機自動掛載磁盤分區
vi /etc/fstab
按“i”,進入編輯模式,將光標移至文件末尾,按“Enter”,添加下行內容:
UUID=0b3040e2-1367-4abb-841d-ddb0b92693df /mnt/sdc ext4 defaults 0 2 UUID=0d6769k2-1745-9dsf-453d-hgd0b34267dj /mnt/sdd ext4 defaults 0 2
按“ESC”后,輸入“:wq”,按“Enter”,保存設置并退出編輯器。
表3 參數說明
參數示例 | 說明 |
---|---|
UUID=0b3040e2-1367-4abb-841d-ddb0b92693df | 磁盤分區的UUID |
/mnt/sdc | 磁盤分區的掛載目錄 |
ext4 | 磁盤分區的文件系統格式 |
defaults | 磁盤分區的掛載選項,此處通常設置為defaults即可 |
0 | Linux dump備份選項。
|
2 | fsck選項,即開機時是否使用fsck檢查磁盤。
|
6.(可選)驗證自動掛載功能已生效。
您可以重啟云服務器驗證自動掛載功能是否生效,也可以使用以下方式模擬自動掛載。
為了驗證系統是否會執行自動掛載操作,請先卸載已掛載的分區。
umount /dev/vdb1
umount /dev/vdb2
將“/etc/fstab”文件所有內容重新加載。“/etc/fstab”是一個靜態文件系統信息表,包含了系統啟動時需要自動掛載的文件系統的列表。
mount -a
查詢文件系統掛載信息。
mount | grep /mnt/sdc
mount | grep /mnt/sdd
回顯類似如下信息,說明自動掛載功能生效。
root@ecs-test-0001 ~]# mount | grep /mnt/sdc /dev/vdb1 on /mnt/sdc type ext4 (rw,relatime,data=ordered) root@ecs-test-0001 ~]# mount | grep /mnt/sdd /dev/vdb2 on /mnt/sdd type ext4 (rw,relatime,data=ordered)
上一篇:FTP軟件FlashFXP的使用方法
下一篇:初始化Linux數據盤(容量大于2TiB)