Làm cách nào để thiết lập hơn 10 thiết bị loopback?


9

Từ câu trả lời này, giải pháp là

modprobe loop max_loop=64

Điều đó khiến tôi được phép sử dụng 64 thiết bị loopback sau đó

mknod -m 660 /dev/loop8 b 7 8

Để tạo các thiết bị. Tôi đã làm điều này cho 8, 9, 10 và 8,9 công việc nhưng 10 thì không.

Sau đó tôi đã thử loopa vào loopf và thử gắn thiết bị thứ 11 và tôi gặp lỗi

Error: Failed to set up a loop device:

Làm cách nào để tạo> 10 thiết bị lặp?


Hãy chắc chắn rằng bạn đang chạy mknod -m 660 /dev/loop10 b 7 10. Nó làm việc tốt cho tôi. Bạn đang sử dụng bản phân phối nào?
sparticvs

@sparticvs: Rất tiếc, tôi đã sử dụng 8 làm giá trị cuối cùng cho tất cả các vars. Tôi tự hỏi tại sao nó cho phép tôi gắn thiết bị thứ 9 và 10 của mình nếu tôi làm sai. Tôi đang sử dụng Ubuntu, tôi đang thử nghiệm ngay bây giờ. vâng nó làm việc Tôi sẽ chấp nhận nếu bạn trả lời

Bạn có thể tạo nhiều mục hệ thống tập tin cho cùng một thiết bị. Tất cả đều chỉ định cùng một thiết bị. Bạn đã gặp lỗi này khi bạn gọi losetuphoặc mount -o looptrên một thiết bị lặp đã được sử dụng (ngay cả khi bạn tiếp cận thiết bị đó thông qua một tên khác).
Gilles 'SO- ngừng trở nên xấu xa'

Điều tôi không thích về câu hỏi này là nó không hỏi làm thế nào để biết max_loop có được đặt thành 64 đúng không. Và không nơi nào tôi có thể tìm thấy thông tin về cách cho biết max được đặt là gì.
áo đậu

Câu trả lời:


13

Hãy chắc chắn rằng bạn đang chạy mknod -m 660 /dev/loop10 b 7 10. Định dạng là mknod -m 660 /dev/loop<ID> b 7 <ID>nơi ID giống nhau.

Cập nhật [07/10/2014]

Tôi cũng tìm thấy một bài viết blog tốt để luôn có nhiều hơn khi khởi động. Xem https://yeri.be/xen-fails-to-find-an-unuse-loop-device

Cập nhật [25/05/2016]

Tôi chạy một máy chủ CentOS và tôi thấy rằng bài đăng này cũng hữu ích khi các phương pháp khác không hoạt động.

Điều này làm cho phương pháp yêu thích mới của tôi:

MAKEDEV /dev/loop

Nó tạo ra 256 thiết bị lặp (là mức tối đa mà không sửa đổi kernel).


0

Nếu bạn muốn tìm một số thiết bị vòng lặp chính miễn phí giữa các tên thiết bị vòng lặp không được đánh số (ví dụ /dev/loop-something), bạn có thể sử dụng lệnh này để tìm số lớn nhất và thêm 1:

find /dev -type b -print0 | xargs -0L1 bash -c 'stat -c "%t %T" "$1" | awk "/^7 / { print(\$2); }"' '' | sort -nru | head -n1

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.