GNU/Linux >> Linux の 問題 >  >> Cent OS

「device-mapper:ioctl の再開に失敗しました:無効な引数」 – lvcreate/lvresize/lvextend の実行時のエラー

問題

論理ボリュームで lvresize、lvextend、または lvcreate を実行できず、LVM コマンドの実行後に以下のエラーが表示されます:

device-mapper: resume ioctl on (major:minor) failed: Invalid argument
Unable to resume vgname-lvname (major:minor)
Failed to activate new LV

解決策

上記のエラーは、LVM で何らかの設定ミスがあった場合に発生します。この問題は、PSize が (物理サイズ) が DevSize よりも大きく設定されています (デバイスサイズ)。以下のコマンドの出力で確認できます:

# pvs -v
Scanning for physical volume names
PV        VG      Fmt   Attr  PSize    PFree   DevSize  PV  UUID
/dev/xvdc testvg1 lvm2  a-    10.00G   5.00G   5.00G        2XEI4w-LmJi-iR3B-xXVU-XxK3-dfTf-WPZXF6

ここでは、PSize が 10G に設定されていますが、実際のデバイス サイズは 5G のみであるため、PSize は DevSize 以下である必要があります。また、lvm アーカイブ ファイルを見ることで、加えられた変更を確認できます。

# cd /etc/lvm/archive
# less testvg1_00000-320386444.vg
description = "Created *before* executing 'pvresize --setphysicalvolumesize 10G /dev/xvdc'"

上記では、アーカイブ ファイルの物理ボリューム サイズが 10G に設定されているため、LVM 機能の破損またはロックが発生しました。

行動計画

注意 :サイズを縮小するため、最初に完全なバックアップを作成して、最悪の場合にデータが失われないようにしてください。これは非常に危険な方法であり、/root を同じ volgroup にセットアップしているからです。

1. 論理ボリュームに加えたすべての変更を元に戻し、元のサイズに戻します。
2.次に、命名規則に基づいて pvresize -v /dev/xxxxx/xxxxx を使用します。
3. pvs -v の出力をチェックして、PVSize と DEVSize が一致していることを確認します。
4.最後に lvresize を実行すると、動作するはずです。

物理ボリュームのサイズを増やしたい場合は、最初に新しいパーティションを作成してから、pvcreate で初期化し、vgextend でこのパーティションを既存の volgroup に追加して、lv 拡張の通常の手順を開始します。

以下は、上記の行動計画の例です:

1. LV で行われた変更を元に戻し、LVSize が Devsize 制限内であることを確認します。

# lvresize -L 4G /dev/testvg1/test_lv
WARNING: Reducing active logical volume to 4.00 GB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce test_lv? [y/n]: y
Reducing logical volume test_lv to 4.00 GB
Logical volume test_lv successfully resized

2. pvresize -v /dev/xxxx/xxxx を使用します

# pvresize -v /dev/xvdc
Using physical volume(s) on command line
Archiving volume group "testvg1" metadata (seqno 9).
Resizing physical volume /dev/xvdc from 2559 to 1279 extents.
Resizing volume "/dev/xvdc" to 10485376 sectors.
Updating physical volume "/dev/xvdc"
Creating volume group backup "/etc/lvm/backup/testvg1" (seqno 10).
Physical volume "/dev/xvdc" changed
1 physical volume(s) resized / 0 physical volume(s) not resized

3. pvs -v コマンドによる確認:

# pvs -v
Scanning for physical volume names
PV         VG      Fmt    Attr  PSize  PFree      DevSize  PV  UUID
/dev/xvdc  testvg1 lvm2   a-    5.00G  1020.00M   5.00G        2XEI4w-LmJi-iR3B-xXVU-XxK3-dfTf-WPZXF6

これで、PSize が DevSize と等しいことがわかります。

4. 次に、LVM でその他の通常の操作を実行してください。


Cent OS
  1. 「mdadm:構成ファイルに配列が見つかりません」 – 「mdadm –assembly –scan」の実行時のエラー

  2. ボリューム「test_vg/lvol0」はローカルでアクティブではありません – lvcreate の実行中にエラーが発生しました

  3. 「デバイス /dev/mappper/mpath25 が見つかりません (またはフィルタリングによって無視されます)」 – pvcreate で物理ボリュームを作成中にエラーが発生しました

  1. リポジトリ「AppStream」のメタデータのダウンロードに失敗しました[CentOS]

  2. Swapon が Swap のマウントに失敗 – 無効な引数エラーが発生する

  3. Swapon に失敗しました:Btrfs ファイルシステムを使用する Linux システムで引数が無効です

  1. 「mlock に失敗しました:メモリを割り当てることができません」CentOS/RHEL 7 での lvcreate コマンド エラー

  2. 「test.mount の開始に失敗しました:ユニットが正しくロードされていません:引数が無効です。」 – systemd を使用してファイルシステムをマウントしている間

  3. rpm:共有ライブラリのロード中にエラーが発生しました:ELF ヘッダーが無効です