LVM論理ボリュームは、最初は連続した範囲を持ちますが、連続していない範囲に拡張できます。

LVM論理ボリュームは、最初は連続した範囲を持ちますが、連続していない範囲に拡張できます。

使う予定ですLVMは拡張MBRを置き換えます。パーティションとその論理ボリューム。 LVMは私にとってやや新しい概念なので(これが存在することを知っていますが、以前にこのオプションを使用したことがないという意味で)助けが必要です。

質問

私は〜を持つでしょう1つのボリュームグループのみ着る単一の物理ボリューム。欲しい初期拡張私の論理ボリュームの数は次のとおりです。近い(ボリュームは最初は連続しています)。必要なすべての論理ボリュームを作成した後PVの末尾にスペースがあります。後で使用するには(必要に応じてLVを拡張してください)、したがって、後で初期サイズを拡張するLVの一部のみがこれらのLVの初期スペースに隣接しません。今説明した目的に使用されるlvcreateコマンドオプションは何--allocですか?--type

考えられる解決策

オプション:

--alloc contiguous|cling|cling_by_tags|normal|anywhere|inherit

--type linear|striped|snapshot|mirror|raid|thin|cache|thin-pool|cache-pool

おそらくオプションがあるでしょうPE 範囲を明示的に指定注文したとおりpvmoveですがしかし、論理ボリュームを作成し、それ以降ではありませんそれを作りますか?

それは次のとおりです。

pvmove /dev/sdb2:501-800   /dev/sdb2:1001-1300
pvmove /dev/sdb2:101-300   /dev/sdb2:1301-1500
pvmove /dev/sdb2:4001-5500 /dev/sdb2:1501-3000

...しかし一緒に一つ lvcreate上記の順序の代わりにコマンドを使用すると、不必要に時間がかかることがあります。

lvcreate /dev/sdb2:1001-3000 -n home vg1

...以下の代わりに、上記のコマンドラインと同じサイズのスキャッタLVを生成することが可能です(上記の構文が正しい場合)。

lvcreate -l 2000 -n home vg1

理由

その理由は、論理ボリューム(およびそのボリュームの大容量ファイル)が断片化されすぎないようにするためです。 1つのオプションは非常に大きな拡張子(64MiBまたは128MiB)を使用することですが、ドライブ全体にわたってファイルの断片化と分散をさらに減らすオプションがあると思います。

要するに

  • --alloc--typeオプションの違いは何ですか?
  • どちらを使用し、どのパラメータで使用する必要がありますか?
  • これらのオプションのいずれも目的の結果が得られない場合は、分散ボリュームを作成し、ボリューム全体が連続するpvmoveように各範囲を移動(押す)する代わりにどうすればよいですか。
  • PE生成時にPEの初期範囲を指定できますか?

答え1

新しいPVで始まる場合、LVを生成すると、デフォルトでPEが連続的に割り当てられます。--alloc contiguousLVを作成するときに指定する必要はありません。

あなたが言ったようにLVを拡張すると、PEはもはや連続しません。最終的にあなたが探しているアクションは、LVMがデフォルトで実行するアクションです。

ただし、次のようにすると、この動作をより明確にすることができます。

  1. 以下を使用してLVを作成します。--alloc contiguous
  2. LVの割り当てポリシーを再び一般に変更しますlvchange。 LVが作成された後はいつでもこれを行うことができます。

関連情報