割り当てられていないすべての領域を使用するように最後のパーティションを自動的に拡張し、バッチモードで parted を使用します。

割り当てられていないすべての領域を使用するように最後のパーティションを自動的に拡張し、バッチモードで parted を使用します。

簡単に言えば、ブート時に(組み込みシステム)このタスクを自動的に実行する必要があります。

私たちのエンジニアは画像を生産機器にフラッシュします。これらのイメージには小さなパーティションテーブルが含まれます。起動時にディスクで利用可能なすべての領域を使用するには、最後のパーティション(#3)を自動的に拡張する必要があります。

これがディスクの空き容量を見ればわかるのです。

> parted /dev/sda print free
Model: Lexar JumpDrive (scsi)
Disk /dev/sda: 32.0GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name     Flags
        17.4kB  1049kB  1031kB  Free Space
 1      1049kB  25.3MB  24.2MB  fat16        primary  legacy_boot
        25.3MB  26.2MB  922kB   Free Space
 2      26.2MB  475MB   449MB   ext4         primary
 3      475MB   1549MB  1074MB  ext4         primary
        1549MB  32.0GB  30.5GB  Free Space

パーティション3をN(30.5 GB)バイトに拡張する必要があります。

メッセージを表示せずにこの手順を自動化するにはどうすればよいですか?これは、3番目のパーティション以降の空き領域の動的サイズと組み合わせて使用​​する必要があります。

ベストアンサー1

partedスクリプトを正しく書くことができなかったので(パーティションがマウントされたために確認を要求しましたが、理解できなかったか、私が見つけた他の答えとは-1s反対です100%)。成長部分ツールこれがまさにそのことです。

使い方は簡単です(growpart /dev/sda 3thenresize2fs /dev/sda3または使用されているファイルシステムタイプの他の適切なコマンド)。

DebianとUbuntuでは、次のようにパッケージ化されています。クラウドゲストユーティリティ

おすすめ記事