Bagaimana cara menambahkan lebih banyak perangkat / dev / loop * di Fedora 19


11

Bagaimana cara menambahkan lebih banyak perangkat / dev / loop * di Fedora 19? Saya lakukan:

# uname -r
3.11.2-201.fc19.x86_64
# lsmod |grep loop

# ls /dev/loop*
/dev/loop0  /dev/loop1  /dev/loop2  /dev/loop3  /dev/loop4  /dev/loop5  /dev/loop6  /dev/loop7  /dev/loop-control
# modprobe loop max_loop=128
# ls /dev/loop*
/dev/loop0  /dev/loop1  /dev/loop2  /dev/loop3  /dev/loop4  /dev/loop5  /dev/loop6  /dev/loop7  /dev/loop-control

Jadi tidak ada yang berubah.


loop bukan modul di fedora 19, yang dikompilasi dalam.
Sirex

1
Anda mungkin akan menggunakan mknod. tetapi mengapa Anda ingin membuat lebih banyak file loop tanpa menghubungkannya dengan apa pun?
strugee

Jawaban:


9

Anda harus membuat simpul perangkat /devdengan mknod. Perangkat node devmemiliki tipe (blok, karakter dan sebagainya), sejumlah besar dan sejumlah kecil. Anda dapat mengetahui jenis dan nomor utama dengan melakukan ls -l /dev/loop0:

user@foo:/sys# ls -l /dev/loop0
brw-rw---- 1 root disk 7, 0 Oct  8 08:12 /dev/loop0

Ini berarti simpul-simpul perangkat simpul harus memiliki tipe blok dan angka utama 7. Angka-angka minor bertambah satu untuk setiap simpul perangkat, mulai dari 0, jadi loop0 hanya 0 dan loop7 adalah 7.

Untuk membuat loop8 Anda jalankan, sebagai root, perintah mknod -m 0660 /dev/loop8 b 7 8. Ini akan membuat simpul perangkat /dev/loop8dengan izin yang ditentukan di sepanjang -msakelar (itu tidak perlu karena Anda mungkin menjalankan sistem desktop, tapi sebaiknya jangan biarkan semua orang membaca dan menulis simpul perangkat Anda).


1
Anda lupa jenis simpul setelah nama, jadi perintahnya seharusnya mknod -m 0660 /dev/loop8 b 7 8.
Vasilis Lourdas

11

Ketika Anda menjalankannya sebagai root, losetup -fsecara otomatis akan membuat perangkat loop sesuai kebutuhan jika tidak ada yang gratis.

Jadi daripada melakukannya sendiri mknod, cara termudah untuk membuat perangkat loop baru adalah dengan sudo losetup -f. Pendekatan itu akan memberi Anda perangkat loop yang ada gratis jika ada, atau secara otomatis membuat yang baru jika diperlukan.


Pesan kesalahan yang Anda dapatkan ketika berjalan losetup -fsebagai pengguna non-root saat ini tidak terlalu membantu, jadi saya mengajukan bugzilla.redhat.com/show_bug.cgi?id=1215370 untuk menyarankan peningkatan itu.
ncoghlan

4

Heh, tidak lengkap :) Cukup gunakan skrip ini untuk menambahkan / dev / loop baru. Ingat untuk mengubah angka, skrip dibuat ke loop ke-63, dimulai dari tanggal 8 karena 0 -7 dibuat secara default. Perhatikan, hak disalin dari / dev / loop0 :)

for i in {8..63}; do if [ -e /dev/loop$i ]; then continue; fi; \
mknod /dev/loop$i b 7 $i; chown --reference=/dev/loop0 /dev/loop$i; \
chmod --reference=/dev/loop0 /dev/loop$i; done
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.