首頁 運維 linux運維 如何擴容資料盤並使擴容後的容量可用

如何擴容資料盤並使擴容後的容量可用

Sep 18, 2018 am 10:49 AM
linux

本文在介紹的基礎上如何擴容資料盤並使擴容後的容量可用,重點探討了其具體操作步驟。

擴容資料碟_Linux

隨著業務的成長,您的資料磁碟容量可能無法滿足資料儲存的需要,這時您可以使用 磁碟擴容 功能擴充資料磁碟。

說明

掛載在實例上的資料盤,只有當實例處於 運行中 (Running) 或 已停止(Stopped) 狀態時才可以擴容。擴容這種資料盤需要在控制台上重新啟動實例後才能使擴充功能後的容量生效,而重啟實例會停止實例,中斷您的業務,所以請您謹慎操作。

建議在擴容資料盤之前手動建立快照,以備份資料。

無論資料磁碟的狀態是 待掛載 或 使用中,都可以執行磁碟擴充操作。

包年包月實例如果做過 續費降配 操作,當前計費週期的剩餘時間內,實例上的包年包月雲盤不支援擴充磁碟操作。

如果資料碟正在建立快照,則不允許執行擴充資料碟的操作。

磁碟擴充功能只能擴容資料盤,無法擴容系統磁碟或本機磁碟(本機 SSD 磁碟等)。

本文以一個高效能雲端碟的資料盤和一個運行CentOS 7.3 64位元的 ECS 實例為例,說明如何擴容資料碟並使擴容後的容量可用。

您可以依照下列步驟完成擴充操作:

步驟1. 在控制台上擴充資料磁碟的磁碟空間

步驟2. 登入實例擴充檔案系統

步驟1. 在控制台上擴充磁碟機的磁碟空間

#依照下列步驟在控制台上擴充資料磁碟的磁碟空間:

登入ECS管理控制台。

在左側導覽列裡,選擇 儲存 > 雲端碟。

說明

如果您需要擴容的資料碟已經掛載在某個實例上,您可以按一下實例,找到對應實例後,進入實例詳情頁,並按一下本實例磁碟.

選擇地域。

找到需要擴充的磁碟,並在 操作 列中,選擇 更多 > 磁碟擴容。

在 磁碟擴容 頁面上,設定 擴容後容量,在本範例中為30 GiB。擴容後容量只能比目前容量大。

待頁面上顯示費用資訊後,按一下 確定擴充功能。

說明

擴充功能成功後,磁碟清單裡即顯示擴容後的容量。但是,如果您的資料碟已經掛載到實例上,只有在控制台上 重新啟動實例 後,登入實例才能看到新的磁碟空間容量。

在控制台上擴充資料碟的磁碟空間後,

如果資料碟已經掛載到實例上,您必須執行 步驟 2. 登入實例擴充檔案系統。

如果資料碟未掛載到執行個體上,您必須先掛載資料磁碟(請參閱掛載雲端磁碟),再根據資料磁碟的實際情況執行不同的操作:

#如果這是一個未格式化的資料盤,您必須格式化資料盤。詳細信息,請參見 Linux 格式化和掛載資料碟。

如果這個資料盤之前已經格式化並且分割區,您必須 步驟 2. 登入實例擴充檔案系統。

步驟2. 登入實例擴充檔案系統

在ECS控制台上完成磁碟擴充後,磁碟每個分割區的檔案系統並未擴容。您需要登入實例擴容檔案系統。

在本範例中,假設資料碟掛載在一台Linux實例上,實例的作業系統為CentOS 7.3 64位,未擴充前的資料碟只有一個主分割區(/dev/vdb1,ext4檔案系統),檔案系統的掛載點為/resizetest,檔案系統擴充完成後,資料碟仍只有一個主分割區。

使用使用者名稱密碼驗證連線 Linux 實例。

執行 umount 指令卸載主分割區。

umount /dev/vdb1
登入後複製

說明

使用 df -h 查看是否卸載成功,如果看不到 /dev/vdb1 的資訊表示卸載成功。以下為範例輸出結果。

[root@iXXXXXX ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 1.5G 36G 4% /
devtmpfs 487M 0 487M 0% /dev
tmpfs 497M 0 497M 0% /dev/shm
tmpfs 497M 312K 496M 1% /run
tmpfs 497M 0 497M 0% /sys/fs/cgroup
tmpfs 100M 0 100M 0% /run/user/0
登入後複製

使用fdisk 指令刪除原先的分割區並建立新分割區:

說明

如果您使用parted 工具操作分割區,不能與fdisk 交叉使用,否則會導致分割區的起始扇區不一致。關於 parted 工具的使用說明可以參考這裡。

執行指令 fdisk -l 羅列分割區資訊並記錄擴充前資料碟的最終容量、起始磁區(First sector)位置。

運行指令 fdisk [資料盤設備名稱] 進入 fdisk 介面。本範例中,指令為 fdisk /dev/vdb。

輸入 d 並按下回車鍵,刪除原先的分割區。

說明

刪除分割區不會造成資料盤內資料的遺失。

輸入 n 並按下回車鍵,開始建立新的分區。

输入 p 并按回车键,选择创建主分区。因为创建的是一个单分区数据盘,所以只需要创建主分区。

说明

如果要创建4个以上的分区,您应该创建至少一个扩展分区,即选择 e。

输入分区编号并按回车键。因为这里仅创建一个分区,所以输入 1。

输入第一个可用的扇区编号:为了保证数据的一致性,First sector需要与原来的分区保持一致。在本示例中,按回车键采用默认值。

说明

如果发现First sector显示的位置和之前记录的不一致,说明之前可能使用 parted 来分区,那么就停止当前的 fdisk 操作,使用 parted 重新操作。

输入最后一个扇区编号:因为这里仅创建一个分区,所以按回车键采用默认值。

输入 wq 并按回车键,开始分区。

[root@iXXXXXX ~]# 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.
Command (m for help): d
Selected partition 1
Partition 1 is deleted
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p):
Using default response p
Partition number (1-4, default 1):
First sector (2048-62914559, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-62914559, default 62914559):
Using default value 62914559
Partition 1 of type Linux and of size 30 GiB is set
Command (m for help): wq
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
登入後複製

说明

如果您使用的是 parted 工具,进入 parted 界面后,输入 p 罗列当前的分区情况。如果有分区,则使用 rm+ 序列号来删除老的分区表,然后使用 unit s 定义起始位置,单位使用扇区个数计量,最后使用 mkpart 命令来创建即可,如下图所示。

如何擴容資料盤並使擴容後的容量可用

部分操作系统里,修改分区后可能会重新自动挂载文件系统。建议先执行 df -h 重新查看文件系统空间和使用情况。如果文件系统重新被挂载,执行 umount [文件系统名称] 再次卸载文件系统。

检查文件系统,并变更文件系统大小。

e2fsck -f /dev/vdb1 # 检查文件系统
resize2fs /dev/vdb1 # 变更文件系统大小
登入後複製

说明

使用 e2fsck 时,由于系统需要检查并订正文件系统元数据,所以速度较慢、耗时较长,请耐心等待。

正确使用 e2fsck 和 resize2fs 指令,不会造成原有数据丢失。

以下为示例输出结果。

[root@iXXXXXX ~]# e2fsck -f /dev/vdb1
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/vdb1: 11/1835008 files (0.0% non-contiguous), 159218/7339776 blocks
[root@iXXXXXX ~]# resize2fs /dev/vdb1
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/vdb1 to 7864064 (4k) blocks.
The filesystem on /dev/vdb1 is now 7864064 blocks long.
登入後複製

将扩容完成的文件系统挂载到原来的挂载点(如本示例中的 /resizetest)。

mount /dev/vdb1 /resizetest
登入後複製

查看文件系统空间和使用情况:运行命令 df -h。如果出现扩容后的文件系统信息,说明挂载成功,可以使用扩容后的文件系统了。

说明

挂载操作完成后,不需要在控制台上重启实例即可开始使用扩容后的文件系统。

以下为示例输出结果。

[root@iXXXXXX ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 1.5G 36G 4% /
devtmpfs 487M 0 487M 0% /dev
tmpfs 497M 0 497M 0% /dev/shm
tmpfs 497M 312K 496M 1% /run
tmpfs 497M 0 497M 0% /sys/fs/cgroup
tmpfs 100M 0 100M 0% /run/user/0
/dev/vdb1 30G 44M 28G 1% /resizetest
登入後複製

以上是如何擴容資料盤並使擴容後的容量可用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1655
14
CakePHP 教程
1413
52
Laravel 教程
1306
25
PHP教程
1252
29
C# 教程
1226
24
Linux體系結構:揭示5個基本組件 Linux體系結構:揭示5個基本組件 Apr 20, 2025 am 12:04 AM

Linux系統的五個基本組件是:1.內核,2.系統庫,3.系統實用程序,4.圖形用戶界面,5.應用程序。內核管理硬件資源,系統庫提供預編譯函數,系統實用程序用於系統管理,GUI提供可視化交互,應用程序利用這些組件實現功能。

vscode終端使用教程 vscode終端使用教程 Apr 15, 2025 pm 10:09 PM

vscode 內置終端是一個開發工具,允許在編輯器內運行命令和腳本,以簡化開發流程。如何使用 vscode 終端:通過快捷鍵 (Ctrl/Cmd ) 打開終端。輸入命令或運行腳本。使用熱鍵 (如 Ctrl L 清除終端)。更改工作目錄 (如 cd 命令)。高級功能包括調試模式、代碼片段自動補全和交互式命令歷史。

git怎麼查看倉庫地址 git怎麼查看倉庫地址 Apr 17, 2025 pm 01:54 PM

要查看 Git 倉庫地址,請執行以下步驟:1. 打開命令行並導航到倉庫目錄;2. 運行 "git remote -v" 命令;3. 查看輸出中的倉庫名稱及其相應的地址。

vscode在哪寫代碼 vscode在哪寫代碼 Apr 15, 2025 pm 09:54 PM

在 Visual Studio Code(VSCode)中編寫代碼簡單易行,只需安裝 VSCode、創建項目、選擇語言、創建文件、編寫代碼、保存並運行即可。 VSCode 的優點包括跨平台、免費開源、強大功能、擴展豐富,以及輕量快速。

notepad怎麼運行java代碼 notepad怎麼運行java代碼 Apr 16, 2025 pm 07:39 PM

雖然 Notepad 無法直接運行 Java 代碼,但可以通過借助其他工具實現:使用命令行編譯器 (javac) 編譯代碼,生成字節碼文件 (filename.class)。使用 Java 解釋器 (java) 解釋字節碼,執行代碼並輸出結果。

Linux的主要目的是什麼? Linux的主要目的是什麼? Apr 16, 2025 am 12:19 AM

Linux的主要用途包括:1.服務器操作系統,2.嵌入式系統,3.桌面操作系統,4.開發和測試環境。 Linux在這些領域表現出色,提供了穩定性、安全性和高效的開發工具。

vscode上一步下一步快捷鍵 vscode上一步下一步快捷鍵 Apr 15, 2025 pm 10:51 PM

VS Code 一步/下一步快捷鍵的使用方法:一步(向後):Windows/Linux:Ctrl ←;macOS:Cmd ←下一步(向前):Windows/Linux:Ctrl →;macOS:Cmd →

vscode終端命令不能用 vscode終端命令不能用 Apr 15, 2025 pm 10:03 PM

VS Code 終端命令無法使用的原因及解決辦法:未安裝必要的工具(Windows:WSL;macOS:Xcode 命令行工具)路徑配置錯誤(添加可執行文件到 PATH 環境變量中)權限問題(以管理員身份運行 VS Code)防火牆或代理限制(檢查設置,解除限制)終端設置不正確(啟用使用外部終端)VS Code 安裝損壞(重新安裝或更新)終端配置不兼容(嘗試不同的終端類型或命令)特定環境變量缺失(設置必要的環境變量)

See all articles