lvextend + ファイルシステムをlvextendするために変数を使用する

lvextend + ファイルシステムをlvextendするために変数を使用する

複数のLinuxマシンがあり、各Linuxマシンには異なるパーティションサイズが必要です

スクリプトによってルートファイルシステムまたはvarファイルシステムを拡張するには、lvextend変数として次の構文を使用します。PARTITION_VAL_SIZE

 PARTITION_VAL_SIZE=100
 lvextend -L"$PARTITION_VAL_SIZE"G /dev/vg-data/lv-var
 PARTITION_VAL_SIZE=30
 lvextend -L"$PARTITION_VAL_SIZE"G /dev/vg-data/lv-root
 .
 .
 PARTITION_VAL_SIZE=50
 lvextend -L"$PARTITION_VAL_SIZE"G /dev/vg-data/lv-var
 PARTITION_VAL_SIZE=20
 lvextend -L"$PARTITION_VAL_SIZE"G /dev/vg-data/lv-root

 .
 .

lvextendGIGAの値を使用しているため、コマンドに「G」を追加します

もっと良い方法がありますか? それとも、変数を使用して Linux パーティションを増やすには、私たちのアプローチで十分でしょうか?

答え1

を使用してドキュメントを確認するとman lvextend

-L|--size [+]Size[m|UNIT]LV の新しいサイズを指定します。--sizeおよび--extentsオプションは、サイズを指定するための代替方法です。 […] プラス+またはマイナスの-プレフィックスが使用される場合、値は絶対サイズではなく相対サイズであり、現在のサイズから加算または減算されます。

また同じページから、

Size[UNIT] Sizeは、オプションの単位を受け入れる入力数値です。入力単位は常に 2 進数として扱われます […]。UNITその他の可能な入力単位を表します: […] g|Gは GiB […] です。

したがって、次のように書くと:

PARTITION_VAL_SIZE=100
lvextend -L"$PARTITION_VAL_SIZE"G /dev/vg-data/lv-var

シェルはこれを次のように展開することに注意してください。

lvextend -L100G /dev/vg-data/lv-var

そしてこれはパーティションのサイズを100ギビバイトに変更する。 それではない平均パーティションをさらに100ギビバイト拡張するGiB > GB であることを覚えておいてください。ただし、サイズを 10 nではなく2 nで考えている場合は問題ありません。

好みとしては、--sizeの代わりに here を使用することをお勧めします-L。同じものですが、読みやすくなります。

lvextend --size 100G /dev/vg-data/lv-var

関連情報