losetup -P
स्वचालन
Https://superuser.com/a/684707/128124 (यूज़-लिनेक्स v2.21 में जोड़ा गया, उबंटू 16.04 जोड़ा गया) द्वारा उल्लिखित विधि , यहाँ इसे और स्वचालित करने के लिए कार्य किए गए हैं। उपयोग:
$ los my.img
/dev/loop0
/mnt/loop0p1
/mnt/loop0p2
$ ls /mnt/loop0p1
/whatever
/files
/youhave
/there
$ sudo losetup -l
NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO
/dev/loop1 0 0 0 0 /full/path/to/my.img
$ # Cleanup.
$ losd 0
$ ls /mnt/loop0p1
$ ls /dev | grep loop0
loop0
स्रोत:
los() (
img="$1"
dev="$(sudo losetup --show -f -P "$img")"
echo "$dev"
for part in "$dev"?*; do
if [ "$part" = "${dev}p*" ]; then
part="${dev}"
fi
dst="/mnt/$(basename "$part")"
echo "$dst"
sudo mkdir -p "$dst"
sudo mount "$part" "$dst"
done
)
losd() (
dev="/dev/loop$1"
for part in "$dev"?*; do
if [ "$part" = "${dev}p*" ]; then
part="${dev}"
fi
dst="/mnt/$(basename "$part")"
sudo umount "$dst"
done
sudo losetup -d "$dev"
)
लूप मॉड्यूल max_part config
उपयोग-लाइन v2.21 से पहले निर्णय विधि।
loop
एक कर्नेल मॉड्यूल है, जिसे Ubuntu 14.04 में कर्नेल में बनाया गया है।
यदि आप इसे सही तरीके से कॉन्फ़िगर करते हैं, तो लिनक्स स्वचालित रूप से आपके लिए उपकरणों को विभाजित करता है।
cat /sys/module/loop/parameters/max_part
कहते हैं कि कितने विभाजन loop
डिवाइस उत्पन्न कर सकते हैं।
यह 0
14.04 Ubuntu पर डिफ़ॉल्ट रूप से होता है, यही वजह है कि कोई भी ऑटो-स्प्लिटिंग नहीं होती है।
इसे बदलने के लिए, हम या तो जोड़ सकते हैं:
options loop max_part=31
/etc/modprobe
या में एक फ़ाइल के लिए :
GRUB_CMDLINE_LINUX="loop.max_part=31"
करने के लिए /etc/default/grub
और उसके बाद sudo update-grub
।
मॉड्यूल पैरामीटर सेट करने का तरीका भी इसमें शामिल है: https://askubuntu.com/questions/51226/how-to-add-kernel-module-parameters
रिबूट के बाद, जब आप करते हैं:
sudo losetup -f --show my.img
यह एक /dev/loopX
डिवाइस के लिए छवि mounts , और स्वचालित रूप से /dev/loopXpY
उपकरणों के लिए विभाजन mounts ।
यदि आप रिबूट करने के इच्छुक हैं तो यह सबसे सुविधाजनक तरीका है।
यह भी देखें