
論理ボリューム(LVMのlv)内のすべてのパーティションを消去しました(デバイスから削除しました)。それから私はそうしましたpartprobe -s
(そして他同様のコマンド:&を表すpartprobe
出力は返されません。私が経験している問題は、次のいずれかを実行できないことです。partx
partition: none
failed to read partition table
mkfs /dev/vg/lv
なぜなら/dev/vg/lv is apparently in use by the system; will not make a filesystem here!
lvremove /dev/vg/lv
この装置はLogical volume vg/lv is used by another device.
これは、カーネルがまだ lv ブロックデバイスにパーティションを表示するためです。
# grep dm /proc/partitions
254 0 85852160 dm-0
254 1 84850688 dm-1
そして
# ls -lh /dev/dm-*
brw-rw---T 1 root disk 254, 0 May 23 14:32 /dev/dm-0
brw-rw---T 1 root disk 254, 1 May 23 14:08 /dev/dm-1
最終的にマシンを再起動し、問題が解決しました(カーネルはもはや存在しないパーティションを見ませんでした)。
再起動せずにこの問題を解決する方法を知っていますか?
3.2 カーネルでテストされました。
答え1
LVMデバイス(または通常はデバイスマッパー)は、デバイスsd
と同じ意味でパーティションをサポートしません。を使用すると、partx
一般タイプのパーティションのみを管理できます。 LVMデバイスでは、次の方法でパーティションを管理する必要がありますkpartx
。
kpartx -d /dev/vg/lv
マンページはkpartx
少し簡潔です。これを確認するために、私の仮説に一致する使用例を見つけました。https://bugzilla.redhat.com/show_bug.cgi?id=187781