クラウドディスク拡張は、専用のファイルシステムの拡張せずにストレージ容量を拡張します
まず、準備作業
拡張データディスク拡張パーティションとファイルシステムの前に、先に次のタスクを完了します。
-
スナップショットの作成、データの損失につながる動作不良を防ぐために、データをバックアップするために。
-
ECSコンソールまたはAPIによって拡張クラウドディスク容量。
第二に、パーティションのフォーマットやファイルシステムを確認
例ECSオペレーティングシステムのCentOS 6.8 64ビットデータディスク装置名前は/ dev / VDB。
1つのランデータディスクパーティションかどうかを確認します。fdisk -lu <DeviceName>
"System"="Linux"
場合は、MBR仕切りプレートフォーマットを使用してデータを示している"System"="GPT"
ディスクのデータは、GPTフォーマットを使用します。
[ルート@テスト〜]#のfdisk -lu / DEV / VDB ディスク/ dev / VDB:1374.4ギガバイト、1374389534720のバイト 16のヘッド、63個のセクタ/トラック、2663050気筒、総2684354560のセクタ 単位= 1×512 = 512バイトのセクタ セクタサイズ(論理/物理):512のバイト/ 512バイト I / Oサイズ(最小/最適):512のバイト/ 512バイト ディスク識別子:0x7c4016b5 デバイスのブート開始終了ブロックIDは、システム の/ dev / VDB1 63 2147483519 1073741728+ 83のLinux
図2は、ファイル名を指定して実行BLKIDは<のPartitionName>ファイルシステムの種類を確認します。
[ルート@テスト〜]#blkidには/ dev / VDB1 は/ dev / VDB1:UUID = "ee04ddf2-ad0f-40bc-9b5c-984be7e19283" TYPE = "ext4の"
[ルート@ TEST2〜]#blkidには/ dev / VDB1 [ルート@のTEST2〜]#
ファイルシステムの状態を確認するには、次のコマンドを実行します。
-
EXT *ファイルシステム:
e2fsck -n <dst_dev_part_path>
-
XFSファイルシステム:
xfs_repair -n <dst_dev_part_path>
[ルート@テスト〜]#e2fsckは-nは/ dev / VDB1 e2fsckを1.41.12(17-月-2010) は/ dev / VDB1:クリーン、67108864分の115952個のファイル、268435432分の140800686個のブロック
第三に、既存のMBRパーティションを拡張
- カーネルのバージョン<3.6の例としては:最初のパーティションをアンマウントして、パーティションテーブル、ファイルシステムの最後の拡張を変更します。
- カーネルバージョン≥3.6の例は:対応するパーティションテーブルを変更し、カーネルは、パーティションテーブル、ファイルシステムの最後の拡張を更新通知します。
既存のMBRパーティションの拡張のための新たなスペースは、次の手順では、例の拡大を完了した場合:
1、パーティションテーブルを変更します
ビューのディスク情報
[ルート@テスト〜]#のfdisk -lu / DEV / VDB ディスク/ dev / VDB:1374.4ギガバイト、1374389534720のバイト 16のヘッド、63個のセクタ/トラック、2663050気筒、総2684354560のセクタ 単位= 1×512 = 512バイトのセクタ セクタサイズ(論理/物理):512のバイト/ 512バイト I / Oサイズ(最小/最適):512のバイト/ 512バイト ディスク識別子:0x7c4016b5 デバイスのブート開始終了ブロックIDは、システム の/ dev / VDB1 63 2147483519 1073741728+ 83のLinux
マウントパスデータディスクをチェックし、ファイルパスに応じてパーティションをアンマウント完全にアンマウントされたパーティションまで、返されます。
[ルート@テスト〜]#マウント| grepの"は/ dev / VDB" は/ dev / VDB1 /データ型のext4の上(RW、がrelatime、データ=注文) [ルート@テスト〜]#umountのは/ dev / VDB1 [ルート@テスト〜]#マウント| grepの"は/ dev / VDB"
使用する古いパーティションを削除するためのfdiskツールを。
- 実行
fdisk -u /dev/vdb
:ディスクパーティションのデータを。 - 入力p:パーティションテーブルを印刷します。
- 入力d:パーティションを削除します。
- 入力p:パーティションが削除されたことを確認。
- 入力w:変更を保存して終了します。
[ルート@テスト〜]#fdiskの-uは/ dev / VDB WARNING:DOS互換モードは廃止されました。それを強くすることをお勧めします モード(コマンド「C」)をオフにします。 コマンド(mでヘルプ):p個の ディスク/ dev / VDB:1374.4ギガバイト、1374389534720バイト 16のヘッド、63セクタ/トラック、2663050気筒、総2684354560のセクタ 単位= 1×512 = 512バイトのセクタ セクタサイズ(論理/物理) :512のバイト/ 512バイト I / Oサイズ(最小/最適):512のバイト/ 512バイトの ディスク識別子:0x7c4016b5 デバイスのブート開始終了ブロックIDは、システム の/ dev / VDB1 63 2147483519 1073741728+ 83のLinux コマンド(mでヘルプ):D 選択したパーティション1つの コマンド(mでヘルプ):P ディスク/ dev / VDB:1374.4ギガバイト、1374389534720のバイト 16のヘッド、63個のセクタ/トラック、2663050気筒、総2684354560のセクタ 単位= 1×512 = 512バイトのセクタ セクタサイズ(論理/物理):512バイト/ 512バイト I / Oサイズ(最小/最適):512のバイト/ 512バイトの ディスク識別子:0x7c4016b5 デバイスのブート開始終了ブロックIDは、システム コマンド(mでヘルプ):wの パーティションテーブルが変更されました! ioctl()を呼び出すためにパーティションテーブルを再読み込み。 ディスクを同期。
使用して新しいパーティションを作成するために、fdiskコマンドを。
- 実行
fdisk -u /dev/vdb
:ディスクパーティションのデータを。 - 入力p:パーティションテーブルを印刷します。
- 入力n:新しいパーティションを。
- 入力p:パーティションの種類のプライマリパーティションを選択します。
- 入力<分区号>:パーティション番号を選択します。例1は、この選択されました。
新しいパーティション開始位置の警告と古いパーティションの開始位置は、それ以外の場合は、障害の拡大につながる、古いパーティションの終了位置よりも大きくなければなりません終了位置と同じでなければなりません。
- 入力w:変更を保存して終了します。
この例では、1280ジブの膨張によっては/ dev / VDB1 1024ジブ。
[ルート@テスト〜]#fdiskの-uは/ dev / VDB WARNING:DOS互換モードは廃止されました。それを強くすることをお勧めします モード(コマンド「C」)をオフにします。 コマンド(mでヘルプ):p個の ディスク/ dev / VDB:1374.4ギガバイト、1374389534720バイト 16のヘッド、63セクタ/トラック、2663050気筒、総2684354560のセクタ 単位= 1×512 = 512バイトのセクタ セクタサイズ(論理/物理) :512のバイト/ 512バイト I / Oサイズ(最小/最適):512のバイト/ 512バイトの ディスク識別子:0x7c4016b5 デバイスブート開始終了ブロックIDは、システム コマンド(mでヘルプ):nの コマンドアクション 電子拡張 p基本パーティション(1- 4) Pの パーティション番号(1-4):W パーティション番号(1-4):1つの 最初のセクタ(63から2684354559、デフォルト63): デフォルト値63使用する 最後のセクタ、セクタ+または+サイズ{K、M、G}(63から2684354559、2684354559デフォルトの) 使用して、デフォルト値2684354559 コマンド(mでヘルプ):wの パーティションテーブルに変更されました! ioctl()を呼び出すためにパーティションテーブルを再読み込み。 ディスクを同期。
実行パーティションテーブルが増加していることを確認します。lsblk /dev/vdb
実行してパーティションの拡張が確認した後、ファイルシステム、ファイルシステムの状態を確認し、再びきれい。e2fsck -n /dev/vdb1
2、カーネルの更新にパーティションテーブルを知らせます
ランニングpartprobe <dst_dev_path>
やpartx -u <dst_dev_path>
カーネルデータディスクパーティションテーブルを知らせるためには、更新を同期する必要があり、変更されています。
3、ファイルシステムの拡張
EXT *(などのext3やext4のような)ファイルシステム:実行resize2fs /dev/vdb1
してパーティションを再マウントします。
[ルート@テスト〜]#resize2fsのは/ dev / VDB1 resize2fsの1.42.9(28日- 2013) 7864320(4K)ブロックへの/ dev / VDB1上のファイルシステムのサイズを変更します。 / dev / VDB1上のファイルシステムは現在、7864320個のブロックの長さです。 [ルート@テスト〜]#マウントは/ dev / VDB1 /データ
XFSファイルシステム:実行するmount /dev/vdb1 /data/
コマンドを、その後、実行しますxfs_growfs /dev/vdb1
。
[ルート@テスト〜]#マウントは/ dev / VDB1 /データ/ [ルート@テスト〜]#xfs_growfsの/ dev / VDB1 メタデータ=は/ dev / VDB1 ISIZE = 512 agcount = 4、agsize = 1310720 BLKS = sectsz = 512 ATTR = 2、projid32bit = 1 = CRC = 1 finobt = 0 spinodes = 0 = BSIZE = 4096ブロック= 5242880、imaxpct = 25データ = SUnitは= 0 swidth = 0 BLKS 命名=バージョン2 BSIZE = 4096 ASCII-CI = 0 FTYPE = 1つの = 4096ブロック= 2560、バージョン= 2ログ=内部BSIZE = sectsz = 512 SUnitは= 0 BLKS、遅延カウント= 1つの リアルタイム=なしextsz = 4096ブロック= 0、rtextents = 0 データ・ブロックは、7864320に5242880から変更しました
第四に、新しいMBRのパーティションとフォーマット
実施例中の膨張工程の完了後、新しいMBRパーティションを追加するための新しいスペースの場合:
実行fdisk -u /dev/vdb
コマンド新しいパーティション。
この例では、新しいパーティションとして、20GiB添加するの/ dev / vdb2を用います。
[ルート@テスト〜]#fdiskの-uは/ dev / VDB (UTIL-linuxの2.23.2)FDISKへようこそ。 あなたが書き込みを決定するまで変更は、専用メモリ内に残ります。 書き込みcommadを使用する前に注意してください。 コマンド(mでヘルプ):P ディスク/ dev / VDB:42.9ギガバイト、42949672960バイト、83886080セクタ 単位= 1×512 = 512バイトのセクタの セクタサイズ(論理/物理):512のバイト/ 512バイト I / Oサイズ(最小/最適):512のバイト/ 512バイトの ディスクラベルタイプ:ドス ディスク識別子:0x2b31a2a3 デバイスのブート開始終了ブロックIDは、システム の/ dev / VDB1 2048 41943039 20970496 83 Linuxの コマンド(mでヘルプ):nは パーティションの種類: p主(1つのプライマリー、0が3自由、拡張) eは、拡張 の選択(デフォルトP):p個の パーティション番号(2-4、デフォルト2):2 最初のセクタ(41943040から83886079、デフォルト41943040): 使用して、デフォルト値41943040を 最後のセクタ、+セクターまたは+サイズ{K、M、G}(41943040から83886079、デフォルト83886079): 使用してデフォルト値83886079 に設定されている20ジブタイプのLinux及びサイズのパーティション2 コマンド(mでヘルプ):wの パーティションテーブルが有します変更されて! ioctl()を呼び出すためにパーティションテーブルを再読み込み。 ディスクを同期。
コマンドを実行しlsblk /dev/vdb
、パーティションを表示します。
[ルート@テスト〜]#lsblkの/ dev / VDB NAME MAJ:MIN RMサイズRO TYPE MOUNTPOINT VDB 253:16 0 40G 0ディスク ├─vdb1253:17 0 0 20G部 18 0 20G 0一部:253└─vdb2
新しいパーティションをフォーマットします。
ext4ファイルシステムを作成します。mkfs.ext4 /dev/vdb2
[ルート@テスト〜]#mkfs.ext4は/ dev / vdb2 mke2fsの1.42.9(28〜12月- 2013) ファイルシステムのラベル= OSの種類:Linuxの ブロック・サイズは= 4096(ログイン= 2) フラグメントサイズ= 4096(= 2を記録) ストライド= 0ブロック、ストライプ幅= 0ブロック 1310720のiノード、5242880のブロック スーパーユーザのために予約262144個のブロック(5.00%) = 0最初のデータブロック の最大ファイルシステムブロック= 2153775104 160ブロックグループ グループあたり32768個のブロックを、グループ当たり32768のフラグメント 8192件のinodeグループごと :スーパーブロックのブロックに保存されたバックアップ 32768、98304、163840、229376、294912、819200、884736、1605632、2654208、 4096000は、 グループテーブルの割り当て:行わ 済:iノードテーブルを書きます ジャーナル(32768ブロック)を作成:行わ 書き込みスーパーブロックとファイルシステムの会計情報を:行われ ます。[root @テスト〜]#blkidには/ dev / vdb2 は/ dev / vdb2:UUID = "e3f336dc-d534-4fdd - **** - b6ff1a55bdbb" TYPE = "ext4の"
ext3ファイルシステムを作成します。mkfs.ext3 /dev/vdb2
[ルート@テスト〜]#のmkfs.ext3は/ dev / vdb2 mke2fsの1.42.9(28〜12月- 2013) ファイルシステムのラベル= OSの種類:Linuxの ブロック・サイズは= 4096(ログイン= 2) フラグメントサイズ= 4096(= 2を記録) ストライド= 0ブロック、ストライプ幅= 0ブロック 1310720のiノード、5242880のブロック スーパーユーザのために予約262144個のブロック(5.00%) = 0最初のデータブロック の最大ファイルシステムブロック= 4294967296 160ブロックグループ グループあたり32768個のブロックを、グループ当たり32768のフラグメント 8192件のinodeグループごと :スーパーブロックのブロックに保存されたバックアップ 32768、98304、163840、229376、294912、819200、884736、1605632、2654208、 4096000は、 グループテーブルの割り当て:行わ 済:iノードテーブルを書きます ジャーナル(32768ブロック)の作成:行わ スーパーブロックとファイルシステムの会計情報を書き込む:行って [ルート@ ecshost〜]#blkidには/ dev / vdb2 は/ dev / vdb2:UUID = "dd5be97d-a630-4593 - **** - 5056def914ea" SEC_TYPE = "EXT2" TYPE = "ext3の"
XFSファイルシステムの作成:mkfs.xfs -f /dev/vdb2
[ルート@テスト〜]#mkfs.xfs -f / DEV / vdb2 メタデータ=は/ dev / vdb2 ISIZE = 512 agcount = 4、agsize = 1310720 BLKS = sectsz = 512 ATTR = 2、projid32bit = 1 = CRC = 1 finobt = 0、疎= 0 データ= BSIZE = 4096ブロック= 5242880、imaxpct = 25 = SUnitは= 0 swidth = 0 BLKS 命名=バージョン2 BSIZE = 4096 ASCII-CI = 0 FTYPE = 1 ログ=内部ログBSIZE = 4096個のブロック= 2560、バージョン= 2 = sectsz = 512 SUnitは= 0 BLKS、遅延カウント= 1つの リアルタイム=なしextsz = 4096ブロック= 0、rtextents = 0 [ルート@テスト〜]#BLKIDの/ dev / vdb2 / dev / vdb2:UUID = "66251477-3ae4-4b44 - **** - 5604420dbecb" TYPE = "XFS"
btrfsファイルシステムを作成します。mkfs.btrfs /dev/vdb2
[ルート@テスト〜]#mkfs.btrfsは/ dev / vdb2 のbtrfs-progsのv4.9.1は、 より多くの情報のためhttp://btrfs.wiki.kernel.orgを参照してください。 レーベル:(ヌル) UUID:6fb5779b-57d7-4aaf-bf09-82b46f54a429 ノードサイズ:16384 セクタサイズ:4096 ファイルシステムサイズ:20.00GiB ブロックグループプロファイル: データ:単一8.00MiB メタデータ:DUP 1.00GiB システム:DUP 8.00MiB SSD検出:なし INCOMPAT機能しない:EXTREF、スキニー、メタデータ デバイスの数:1つの デバイス: IDサイズパス 1 20.00GiBは/ dev / vdb2 [ルート@テスト〜]#blkidには/ dev / vdb2 は/ dev / vdb2:UUID = "6fb5779b-57d7-4aaf - **** - 82b46f54a429" UUID_SUB = "9bdd889a-ab69-4653 - **** - d1b6b8723378" TYPE = "のbtrfs"
実行mount /dev/vdb2 /mnt
ファイルシステムをマウントします。
実行してdf -h
、現在のデータとディスクスペースの使用状況を見ること。
[ルート@テスト〜]#dfの-h 無駄使用%は上のマウントに使用ファイルシステムサイズ の5%は/は/ dev / VDA1 40G 1.6G 36G 3.9G 0 3.9G 0%の/ devをdevtmpfs / 3.9G 0 3.9G 0%の/ dev tmpfsのSHM 3.9G 460K 3.9G 1%/実行TMPFS TMPFSの3.9G 0 3.9G 0%/ SYS / FS / cgroup内 の/ dev / vdb2 9.8G 37M 9.2G 1%/ MNT 783M 0 783M 0%/実行/ユーザ/ 0 TMPFS
第五に、ここでの焦点は、何のディスクパーティションが存在しない場合、そのデータがどのように行う、どのように行うには?
図1は、ディスクケースを表示します
[ルート@テスト〜]#のfdisk -lu / DEV / VDB ディスク/ dev / VDB:1374.4ギガバイト、1374389534720のバイト 16のヘッド、63個のセクタ/トラック、2663050気筒、総2684354560のセクタ 単位= 1×512 = 512バイトのセクタ セクタサイズ(論理/物理):512のバイト/ 512バイト I / Oサイズ(最小/最適):512のバイト/ 512バイトの ディスク識別子:0x00000000の [ルート@テスト〜]#BLKIDの/ dev / VDB は/ dev / VDB:UUID = "c7a3bad3-c0f9-4cdc 9778-15abb90953ab" SEC_TYPE = "EXT2" TYPE = "EXT3" [ルート@テスト〜]#lsblkの/ dev / VDB NAMEのMAJ:MIN RMサイズRO TYPE MOUNTPOINT VDB 252:16 0 0 1.3Tディスク
2、直接膨張
[ルート@テスト〜]#e2fsckは-fは/ dev / VDB e2fsckを1.41.12(17-月-2010) 1を渡す:チェックのinode、ブロック、およびサイズは、 2を渡し:チェックディレクトリ構造の パス3:チェックディレクトリの接続 パス4:チェック参照カウントが 5パス:チェックグループの要約情報 は/ dev / VDB:67108864分の115952個のファイル(32.8%非連続)、268435432分の140800686個のブロックを [ルート@テスト〜]# [ルート@テスト〜]#resize2fsのは/ dev / VDB resize2fsの1.41.12(17-月-2010) 335544312(4K)ブロックには/ dev / VDB1上のファイルシステムのサイズを変更します。 / dev / VDB上のファイルシステムは、今335544312個のブロックの長さです。