たとえば、ディスク(GPTパーティション)があります/dev/sda
。
/dev/sda8
これはディスクのパーティションです。私はこのcfdisk
ユーティリティを/dev/sda8
。/dev/sda8p1
Linuxがパーティション内のパーティションを認識し、可能であればそれを自動化するにはどうすればよいですか?
答え1
パーティションがディスクのように自動的にスキャンされることを知らず、実際に手動でスキャンすることも不可能です。
partx --add - /dev/sda8
partx: /dev/sda8: error adding partitions 1-2
ただし、ループデバイスを使用してパーティションをデバイスに再マップでき、デバイスはディスクのように検索できます。/dev/sda8
2つのパーティションを持つデバイスの例:
losetup --show --find --partscan /dev/sda8
/dev/loop0
ls -1 /dev/loop0* # Arg is #1, not lowercase "L"
/dev/loop0
/dev/loop0p1
/dev/loop0p2
完了したら、ループデバイスを削除することを忘れないでください。
losetup -d /dev/loop0
答え2
これらのネストは、私が知っているパーティションテーブルの仕様の一部ではないため、これらのネストされたパーティション構造は自動的には認識されません。
ただしkpartx
、そのようなパーティション内パーティション用のデバイスマッパーベースのデバイスノードを作成するために使用できますpartx
。結果のパーティションデバイスは次のとおりです/dev/mapper/sda8p1
。
このようなネストされたパーティション構造できるたとえば、パーティションを仮想マシンの仮想ディスクにマップします。kpartx
仮想マシンに起動を妨げる問題がある場合は、ホストを介してこれらの仮想ディスクのパーティションにアクセスすると便利なトラブルシューティングツールになる可能性があります。
ただし、制限事項に注意してください。仮想マシンの実行中にホストシステムが仮想マシンのパーティションにアクセスしようとすると、ホストと仮想マシンのファイルシステムレベルのキャッシュが互いに通信できないため、ファイルシステムが破損する可能性があります。したがって、ある人の書き込み操作によって他の人がキャッシュしたデータの一部が無効になることを知ることは不可能です。