日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

parted新建分区_扩展分区及文件系统(Linux)

發布時間:2024/10/8 linux 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 parted新建分区_扩展分区及文件系统(Linux) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

操作場景

云硬盤是云上可擴展的存儲設備,您可以在創建云硬盤后隨時擴展其大小,以增加存儲空間,同時不失去云硬盤上原有的數據。
云硬盤擴容 完成后,需要將擴容部分的容量劃分至已有分區內,或者將擴容部分的容量格式化成一個獨立的新分區。

注意事項

擴容文件系統操作不慎可能影響已有數據,因此強烈建議您在操作前手動 創建快照 備份數據。

前提條件

  • 已擴容云硬盤空間。
  • 該云硬盤已掛載 到 Linux 云服務器并已創建文件系統。
  • 已登錄待擴展分區及文件系統的 Linux 云服務器。

操作步驟

確認擴展方式

以 root 用戶執行以下命令,查詢云硬盤使用的分區形式。

  • fdisk -l
  • 若結果如下兩圖所示(根據操作系統不同略有不同),則說明使用 GPT 分區形式。

    • 若結果如下圖所示(根據操作系統不同略有不同),則說明使用 MBR 分區形式。注意:
      MBR 分區形式支持的磁盤最大容量為2TB。如果您的硬盤分區為 MBR 格式,且需要擴容到超過 2TB 時,建議您重新創建并掛載一塊數據盤,使用 GPT 分區方式后將數據拷貝至新盤上。對于 Linux 操作系統而言,當磁盤分區形式選用 GPT 時,fdisk 分區工具將無法使用,需要采用 parted 工具。

分區形式操作指引說明GPT將擴容部分的容量劃分至原有分區(GPT)同樣適用于未分區直接格式化的場景。將擴容部分的容量格式化成獨立的新分區(GPT)可保持原有分區不變。MBR將擴容部分的容量劃分至原有分區(MBR)同樣適用于未分區直接格式化的場景。將擴容部分的容量格式化成獨立的新分區(MBR)可保持原有分區不變。

將擴容部分的容量劃分至原有分區(GPT)

以 root 用戶執行以下命令,確認云硬盤的容量變化。

  • parted <磁盤路徑> print
    本文以磁盤路徑是/dev/vdb為例,則執行:
  • parted /dev/vdb print
    若在過程中提示如下圖所示信息,請輸入Fix。


如下圖所示,擴容后的云硬盤大小為107GB,已有分區的大小為10.7GB。

執行以下命令,確認該云硬盤是否還有分區已掛載。

  • mount | grep '<磁盤路徑>'
    本文以磁盤路徑是/dev/vdb為例,則執行:
  • mount | grep '/dev/vdb'
    如下圖所示,云硬盤上有一個分區(vdb1)掛載在/data上。

執行以下命令,解掛數據盤。

  • umount <掛載點>
    本文以掛載點是/data為例,則執行:
  • umount /data
    說明:
    請將云硬盤上所有分區的文件系統都解掛,。可重復執行以下命令,確認該硬盤上所有分區的文件系統都已解掛。
  • mount | grep '/dev/vdb'

執行以下命令,進入 parted 分區工具。

  • parted '<磁盤路徑>'
    本文以磁盤路徑是/dev/vdb為例,則執行:
  • parted '/dev/vdb'
  • 執行以下命令,將顯示和操縱單位變成 sector(默認為GB)。
  • unit s
  • 輸入 print,查看分區信息,并記錄已有分區的 Start 值。
    注意:
    刪除分區并新建后,Start 值必須保持不變,否則將會引起數據丟失。

執行以下命令,刪除原有分區。

  • rm <分區 Number>
    例如,由上圖可知云硬盤上有一個分區,Number 為“1”,則執行:
  • rm 1
    回顯信息如下圖所示。

執行以下命令,新建一個主分區。

  • mkpart primary <原分區起始扇區> 100%
    其中,100%表示此分區到磁盤的最末尾。
    例如,主分區從第2048個扇區開始(必須與刪除之前的分區一致,即 Start 值為2048s),則執行:
  • mkpart primary 2048s 100%
    如果出現如下圖所示的狀態,請輸入Ignore。

執行以下命令,查看新分區是否已創建成功。

  • print
    返回結果如下圖所示,即表示新分區已創建成功。

執行以下命令,退出 parted 工具。

  • quit
  • 執行以下命令,檢查擴容后的分區。
  • e2fsck -f <分區路徑>
    本文以新建分區是1(即分區路徑是/dev/vdb1)為例,則執行:
  • e2fsck -f /dev/vdb1
    返回如下圖所示結果。

執行以下命令,對新分區上 EXT 文件系統進行擴容操作。

  • resize2fs <分區路徑>
    本文以分區路徑是/dev/vdb1為例,則執行:
  • resize2fs /dev/vdb1

執行以下命令,對新分區上 XFS 文件系統進行擴容操作。

  • xfs_growfs <分區路徑>
    本文以分區路徑是/dev/vdb1為例,則執行:
  • xfs_growfs /dev/vdb1
  • 執行以下命令,手動掛載新分區。
  • mount <分區路徑> <掛載點>
    本文以分區路徑是/dev/vdb1,掛載點是/data為例,則執行:
  • mount /dev/vdb1 /data
  • 執行以下命令,查看新分區。
  • df -h
    返回如下圖信息說明掛載成功,即可以查看到數據盤。

將擴容部分的容量格式化成獨立的新分區(GPT)

  • 以 root 用戶執行以下命令, 確認云硬盤的容量變化。
    • parted <磁盤路徑> print
      本文以磁盤路徑是/dev/vdb為例,則執行:
    • parted /dev/vdb print
      若在過程中提示如下圖所示信息,請輸入 Fix。


    如下圖所示,擴容后的云硬盤大小為107GB,已有分區的大小為10.7GB。

    執行以下命令,確認該云硬盤是否還有分區已掛載。

    • mount | grep '<磁盤路徑>'
      本文以磁盤路徑是/dev/vdb為例,則執行:
    • mount | grep '/dev/vdb'
      如下圖所示,云硬盤上有一個分區(vdb1)掛載在/data上。

    執行以下命令,解掛數據盤。

    • umount <掛載點>
      本文以掛載點是/data為例,則執行:
    • umount /data
      說明:
      請將云硬盤上所有分區的文件系統都解掛。可重復執行以下命令,確認該硬盤上所有分區的文件系統都已解掛。
    • mount | grep '/dev/vdb'

    執行以下命令,進入 parted 分區工具。

    • parted '<磁盤路徑>'
      本文以磁盤路徑是/dev/vdb為例,則執行:
    • parted '/dev/vdb'
    • 執行以下命令,查看分區信息,并記錄已有分區的 End 值,以此值作為下一個分區的起始偏移值。
    • print

    執行以下命令,新建一個主分區。此分區將從已有分區的末尾開始,覆蓋硬盤所有的新增空間。

    • mkpart primary start end
      本文以 End 值是10.7GB為例,執行
    • mkpart primary 10.7GB 100%
    • 執行以下命令,查看新分區是否已創建成功。
    • print

    執行以下命令,退出 parted 工具。

    • quit
    • 執行以下命令,格式化新建的分區。
    • mkfs.<fstype> <分區路徑>
      您可以自行選擇文件系統的格式,例如 EXT2、EXT3 等。
      本文以文件系統是 EXT3 為例,則執行:
    • mkfs.ext3 /dev/vdb2

    將擴容部分的容量劃分至原有分區(MBR)

    fdisk/e2fsck/resize2fs 自動擴容工具適用于 Linux 操作系統,用于將新擴容的云硬盤空間添加到已有的文件系統中,擴容能夠成功必須滿足以下四個條件:

    • 文件系統是 EXT2/EXT3/EXT4/XFS。
    • 當前文件系統不能有錯誤。
    • 擴容后的磁盤大小不超過2TB。
    • 當前工具僅支持 Python 2 版本,不支持 Python 3 版本。

    以 root 用戶執行以下命令,卸載分區。

    • umount <掛載點>
      本文以掛載點是/data為例,則執行:
    • umount /data

    執行以下命令,下載工具。

    • wget -O /tmp/devresize.py https://raw.githubusercontent.com/tencentyun/tencentcloud-cbs-tools/master/devresize/devresize.py
    • 執行以下命令,使用擴容工具進行擴容。
    • python /tmp/devresize.py <硬盤路徑>
      本文以硬盤路徑是/dev/vdb且文件系統在 vdb1 上為例,則執行:
    • python /tmp/devresize.py /dev/vdb

    • 若輸出 “The filesystem on /dev/vdb1 is now XXXXX blocks long.”則表示擴容成功
    • 若輸出的是 “[ERROR] - e2fsck failed!!”,請執行以下步驟:

    a. 執行以下命令,修復文件系統所在分區。

    fsck -a <分區路徑>
    本文以硬盤路徑是/dev/vdb且文件系統在 vdb1 上為例,則執行:

        • fsck -a /dev/vdb1
          b. 修復成功后,再次執行以下命令,使用擴容工具進行擴容。
        • python /tmp/devresize.py /dev/vdb

    擴容成功日志devresize.log

    2019-08-23 19:18:38,867 - [DEBUG]- devresize.py:467 - user input:/tmp/devresize.py /dev/vdb 2019-08-23 19:18:39,227 - [DEBUG]- devresize.py:193 - device_size:107374182400device_sector_number:209715200logical_sector_size:512 2019-08-23 19:18:39,233 - [DEBUG]- devresize.py:285 - target_partition:/dev/vdb1 2019-08-23 19:18:39,359 - [INFO ]- devresize.py:308 - checking filesystem healthy 2019-08-23 19:18:39,457 - [DEBUG]- devresize.py:311 - e2fsck ret is 2048 2019-08-23 19:18:39,458 - [ERROR]- devresize.py:319 - File system /dev/vdb1 error! 2019-08-23 19:18:39,458 - [DEBUG]- devresize.py:451 - close fd 2019-08-23 19:18:59,163 - [DEBUG]- devresize.py:467 - user input:/tmp/devresize.py /dev/vdb1 2019-08-23 19:18:59,164 - [ERROR]- devresize.py:409 - The argument should be a whole disk, not a partition! Example: /dev/vdb 2019-08-23 19:19:40,508 - [DEBUG]- devresize.py:467 - user input:/tmp/devresize.py /dev/vdb1 2019-08-23 19:19:40,509 - [ERROR]- devresize.py:409 - The argument should be a whole disk, not a partition! Example: /dev/vdb 2019-08-23 19:19:43,310 - [DEBUG]- devresize.py:467 - user input:/tmp/devresize.py /dev/vdb 2019-08-23 19:19:43,344 - [DEBUG]- devresize.py:193 - device_size:107374182400device_sector_number:209715200logical_sector_size:512 2019-08-23 19:19:43,348 - [DEBUG]- devresize.py:285 - target_partition:/dev/vdb1 2019-08-23 19:19:43,408 - [INFO ]- devresize.py:308 - checking filesystem healthy 2019-08-23 19:19:44,131 - [DEBUG]- devresize.py:311 - e2fsck ret is 0 2019-08-23 19:19:59,257 - [DEBUG]- devresize.py:524 - Begin to change the partation 2019-08-23 19:19:59,258 - [DEBUG]- devresize.py:257 - Start h,s,c: 0 9 20End h,s,c: 1 196 95Partition Type Name:LinuxStart LBA: 2048Sector Number: 2097131522019-08-23 19:19:59,258 - [INFO ]- devresize.py:228 - Backup MBR to /tmp/MBR_vdb1_2019-08-23_19:19:59_bak 2019-08-23 19:20:00,272 - [INFO ]- devresize.py:341 - umount /dev/vdb1 2019-08-23 19:20:01,273 - [DEBUG]- devresize.py:375 - part_probe 2019-08-23 19:20:03,419 - [INFO ]- devresize.py:341 - umount /dev/vdb1 2019-08-23 19:20:03,420 - [INFO ]- devresize.py:348 - resize filesystem 2019-08-23 19:20:04,873 - [DEBUG]- devresize.py:350 - resize2fs ret is 0 2019-08-23 19:20:04,873 - [INFO ]- devresize.py:578 - Finished 2019-08-23 19:20:04,873 - [DEBUG]- devresize.py:451 - close fd

    執行以下命令,手動掛載擴容后的分區。

    • mount <分區路徑> <掛載點>
      本文以掛載點是/data為例。
    • 若擴容前已有分區且以分區路徑是/dev/vdb1為例,則執行:
      • mount /dev/vdb1 /data
    • 若擴容前沒有分區,則執行:
      • mount /dev/vdb /data
    • 執行以下命令,查看擴容后的分區容量。
    • df -h
      若返回類似如下圖所示的信息,說明掛載成功,即可以查看到數據盤:

  • 執行以下命令,查看擴容后原分區的數據信息,確認新增加的存儲空間是否擴容到文件系統中。
    • ll /data

    將擴容部分的容量格式化成獨立的新分區(MBR)

    以 root 用戶執行以下命令,查看已掛載的數據盤分區信息。

    • df -h

    執行以下命令,查看數據盤擴容后未分區的信息。

    • fdisk -l

    執行以下命令,解掛所有已掛載的分區。

    • umount <掛載點>
      本文以掛載點是/data為例,則執行:
    • umount /data
      說明:
      請將云硬盤上所有分區都解掛后
    • 執行以下命令,新建一個新分區。
    • fdisk <硬盤路徑>
      本文以磁盤路徑是/dev/xvdc為例,則執行:
    • fdisk /dev/xvdc
      按照界面的提示,依次輸入”p”(查看現有分區信息)、“n”(新建分區)、“p”(新建主分區)、“2”(新建第2個主分區),兩次回車(使用默認配置),輸入 “w”(保存分區表),開始分區。如下圖所示:

    說明:
    本文以創建一個分區為例,您也可以根據實際需求創建多個分區。

    執行以下命令,查看新分區。

    • fdisk -l
      如下圖所示,表示新的分區 xvdc2 已經創建完成。

    執行以下命令,格式化新分區并創建文件系統。

    • mkfs.<fstype> <分區路徑>
      您可以自行選擇文件系統的格式,例如 EXT2、EXT3 等。
      本文以文件系統是 EXT3 為例,則執行:
    • mkfs.ext3 /dev/xvdc2

    執行以下命令,創建新的掛載點。

    • mkdir <新掛載點>
      本文以新掛載點是/data1為例,則執行:
    • mkdir /data1
    • 執行以下命令,手動掛載新分區。
    • mount <新分區路徑> <新掛載點>
      本文以新分區路徑是/dev/xvdc2,新掛載點是/data1為例,則執行:
    • mount /dev/xvdc2 /data1
    • 執行以下命令,查看新分區信息。
    • df -h
      返回如下圖所示信息則說明掛載成功,即可以查看到數據盤。

    說明:
    若您希望云服務器在重啟或開機時能自動掛載數據盤。執行以下命令,添加信息。
      • echo '/dev/xvdc2 /data1 ext3 defaults 0 0' >> /etc/fstab

    執行以下命令,查看信息。

    • cat /etc/fstab
      若返回如下圖所示信息,則表示添加分區信息成功。

    解決device is busy

    王志強:無法umount問題(device is busy)?zhuanlan.zhihu.com

    原文鏈接:

    云硬盤 擴展分區及文件系統(Linux) - 操作指南 - 文檔中心 - 騰訊云?cloud.tencent.com

    總結

    以上是生活随笔為你收集整理的parted新建分区_扩展分区及文件系统(Linux)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。