virt-make-fslibguestfs qcow2উদাহরণ থেকে
https://serverfault.com/a/332114/163884 এটি উল্লেখ করেছে, তবে এখানে একটি সম্পূর্ণ উদাহরণ:
sudo apt-get install libguestfs-tools
# Workarounds for Ubuntu 18.04 bugs. See section below.
sudo rm -rf /var/cache/.guestfs-*
echo dash | sudo tee /usr/lib/x86_64-linux-gnu/guestfs/supermin.d/zz-dash-packages
sudo chmod +r /boot/vmlinuz-*
mkdir sysroot
# Just a test file.
dd if=/dev/urandom of=sysroot/myfile bs=1024 count=1024
virt-make-fs --format=qcow2 --type=ext2 sysroot sysroot.ext2.qcow2
sudoইনস্টলেশন এবং উবুন্টু বাগ কাজের ক্ষেত্রগুলি বাদে কীভাবে প্রয়োজনীয় নয় তা নোট করুন ।
আমি তখন যাচাই করেছিলাম যে কিউইএমইউ এটির সাথে পড়তে পারে:
qemu-system-x86_64 -drive file=sysroot.ext2.qcow2,format=qcow2,if=virtio,snapshot ...
আমি তখন কিউএমইউ লিনাক্সের মধ্যে চিত্রটি মাউন্ট করতে এবং ফাইলটি পড়তে সক্ষম হয়েছি।
virt-make-fs ext উদাহরণ
এই দুর্দান্ত সরঞ্জামটি কাঁচা এক্স ফাইল ফাইলগুলিও তৈরি করতে পারে, যেমন:
virt-make-fs --format=raw --type=ext2 sysroot sysroot.ext2
virt-make-fs --format=raw --type=ext4 sysroot sysroot.ext4
যা আমরা সরাসরি হোস্টের সাথে যাচাই করতে পারি:
mkdir -p mnt
dev="$(sudo losetup --show -f -P sysroot.ext4)"
sudo mount -o loop "$dev" mnt
cmp sysroot/myfile mnt/myfile
চিত্রের আকার হ্রাস
এর সত্যই একটি ভাল বৈশিষ্ট্য virt-make-fsহ'ল এটি যদি আমরা চান তবে এটি স্বয়ংক্রিয়ভাবে চিত্রের আকার হ্রাস করার চেষ্টা করে:
অতিরিক্ত স্থান কমানোর জন্য ভার্ট-মেক-এফএস ডিফল্ট, তবে আপনি যদি চাইলে ফাইল সিস্টেমে স্থান ছেড়ে দিতে --size পতাকাটি ব্যবহার করতে পারেন।
তাই:
df -h
আমাকে জানান যে চিত্রটি 82% ভরাট:
/dev/loop17 1.5M 1.1M 244K 82% /home/ciro/test/guestfs/mnt
আমরা সহজেই এর সাথে সর্বনিম্নের উপরে কিছু অতিরিক্ত স্থান যুক্ত করতে পারি --size-=+:
virt-make-fs --format=raw --size=+8M --type=ext2 sysroot sysroot.ext2
ext4 জার্নাল ওভারহেড
ম্যানুয়ালটিতে আরও উল্লেখ করা হয়েছে:
নোট করুন যে ext3 ফাইল সিস্টেমগুলিতে একটি জার্নাল থাকে, সাধারণত 1-32 এমবি আকারের। আপনি যদি জার্নালটির প্রয়োজন হয় এমন পদ্ধতিতে ফাইল সিস্টেমটি ব্যবহার না করে থাকেন তবে এটি কেবল ওভারহেড নষ্ট।
এবং এটি দিয়ে যাচাই করা আকর্ষণীয়:
du -bs *
যা উত্পাদন করে:
1052672 sysroot
1446297 sysroot.ext2
2599731 sysroot.ext4
সুতরাং আমরা দেখতে পাচ্ছি যে ext4 উল্লেখযোগ্যভাবে বড় হয়েছে।
libguestfs উবুন্টু বাগ
এখন ডাউনসাইডের জন্য: বর্তমানে কোনও উবুন্টু রক্ষণাবেক্ষণকারী উপস্থিত নেই এবং গ্রন্থাগারটি সাধারণত উবুন্টুতে বগি।
sudoতাত্ত্বিকভাবে প্রয়োজনীয় নয়, তবে এটি উবুন্টু প্যাকেজিং বাগের কারণে প্রয়োজনীয় যদি না হয় আমরা যদি কাজ না করি তবে: /ubuntu/1046828/how-to-run-libguestfs-tools-tools-such-as- হলে virt-মেক-FS-ছাড়া-উবুন্টু / 1046829 # 1046829
libguestfs: error: /usr/bin/supermin exited with error status 1.
To see full error messages you may need to enable debugging.
Do:
export LIBGUESTFS_DEBUG=1 LIBGUESTFS_TRACE=1
and run the command again. For further information, read:
http://libguestfs.org/guestfs-faq.1.html#debugging-libguestfs
You can also run 'libguestfs-test-tool' and post the *complete* output
into a bug report or message to the libguestfs mailing list.
libguestfs: error: /usr/bin/supermin exited with error status 1.
এরপরে, আমাদের কর্মসীমা ছাড়াই 18.04 (তবে 16.04 নয়) এর সাথে ব্যর্থ হয়: https://bugzilla.redhat.com/show_bug.cgi?id=1591617
libguestfs: error: tar_in: write error on directory: /:
ইতিমধ্যে প্রবাহের স্থির করা একটি বাগের কারণে।
উবুন্টু 18.04 তে পরীক্ষা করা হয়েছে, libguestfs-tools 1: 1.36.13-1ubuntu3, QEMU 1: 2.11 + dfsg-1ubuntu7.3।
qemu-imgএবংfallocateএর চেয়ে কিছুটা বেশি সুবিধাজনকdd।