web-dev-qa-db-ja.com

マウント:空きループデバイスが見つかりませんでした

ISOイメージをmount -o loopでマウントしようとすると、

マウント:空きループデバイスが見つかりませんでした

実行中のlosetup -a番組

/ dev/loop0:[0005]:2464(/ dev/sda1)
/dev/loop1:[0005]:3439(/ dev/loop0)
/dev/loop2:[0005]:4482(/ dev/loop1)
/dev/loop3:[0005]:4486(/ dev/loop2)
/dev/loop4:[0005]:4490(/ dev/loop3)
/dev/loop5:[0005]:4494(/ dev/loop4)
/dev/loop6:[0005]:4498(/ dev/loop5)
/dev/loop7:[0005]:4502(/ dev/loop6)

sda1を参照するループデバイスの目的は何ですか?そして、前のものを参照する他のすべてのループデバイスの目的は何ですか?

これらのループデバイスを取り外して使用できるようにしても安全ですか?もしそうなら、どうすればいいですか? (losetup -d /dev/loop[0-7]を実行するとloop device is busyが得られます。)これらを切断できない場合、ISOイメージのマウントに使用できる新しいループデバイスを作成するにはどうすればよいですか?

pS私はDebian "wheezy" v 7.1.0を実行しています。

4
Code-Guru

上記のループバックデバイスを使用しているマウントがあるかどうかを確認してください。 mountコマンドを使用してこれを確認できます。

$ mount

マウントされている場合は、losetup -d <loopdevice>をデタッチする前に、マウント解除(umount)する必要がある可能性があります。

$ umount /dev/some/mount

安全であるかどうかは、これらが何に使用されているかによります。ループデバイスのマウントを解除する前に、これらのループデバイスが何であるかをよく理解できるようになるまで、私は延期するでしょう。推測ではありますが、暗号化されたドライブと関係がある可能性があります。

したがって、私は安全のためだけに別のものを作成します。

別のループデバイスを作る

手順は次のとおりです。

$ Sudo mknod -m640 /dev/loop8 b 7 8
  • -m640デバイスの権限を定義します
  • /dev/loop8デバイスの名前を定義します
  • bは、特殊ブロックデバイスの作成用
  • 7 8数値7と8は、メジャーとマイナーを定義します

ループが作成されているかどうかを確認します。

$ ls -l /dev/loop8
brw-r----- 1 root root 7, 8 Oct 3 14:54 /dev/loop8

次に、デバイスの所有権を設定します。

$ Sudo chown root:disk /dev/loop8

参考文献

4
slm

参考までに、前の回答で参照されているマイナー番号は、ループ番号とともにインクリメントする必要があります。たくさんのISOをマウントしているので、たくさんのデバイスが必要です。次の短いスクリプトを作成して、デバイス8〜30を作成します。

    #!/bin/bash
    for i in {8..30};
    do
        /bin/mknod -m640 /dev/loop$i b 7 $i
        /bin/chown root:disk /dev/loop$i
    done

また、間違えた場合、またはデバイスを削除する必要がある場合は、デバイスをrmすることができます。
例えば: Sudo rm /dev/loop8

3
jars99