انجمنهای فارسی اوبونتو
کمک و پشتیبانی => نصب، راهاندازی و بروزآوری => نویسنده: obontu در 22 دی 1400، 12:17 قظ
-
سلام
ایا در اوبونتو میشه VHDX ساخت با چه دستوری؟
-
اگه منظورت دیسک مجازیه، با dd. مثلاًبرای ساخت و استفاده از یه فضای ۱۰۰ مگابایتی:
sudo dd if=/dev/zero of=/home/danialbehzadi/disk.img bs=1000K count=100
sudo losetup /dev/loop0 disk.img
sudo mkfs.ext4 /dev/loop0
sudo mount /dev/loop0 /mnt
الآن تو مسیر /mnt سوار شده و میشه ازش استفاده کرد.
-
ولی اینجوری به صورت خام ایجاد میشه. به صورت vhdx ایجاد نمیشه.
-
چیزی که من فهمیدم، vhd مخفف virtual hard disk است.
-
ممنون
مثل ویندوز پسوندش vhd.* یا vhdx.* نیست؟
طوری باشه که تو ویندوز هم بشه mount کرد
تو ویندوز vhdx طوری هست که میزان فضایی که اشغال میکنه بستگی به میزان اطلاعات داخش داره .
الان vhdx و vhd دارم میخوام تو اوبنتو مانت کنم.
-
منطقاً img رو میشه هر جایی سوار کرد. قالب استاندار دیسکهاست.
-
من vmdk ویم ویر رو نتونستم توی ویرچوال باکس بیارم بوت نشد صفحه سیاه میاورد
-
ممنون
مثل ویندوز پسوندش vhd.* یا vhdx.* نیست؟
طوری باشه که تو ویندوز هم بشه mount کرد
تو ویندوز vhdx طوری هست که میزان فضایی که اشغال میکنه بستگی به میزان اطلاعات داخش داره .
الان vhdx و vhd دارم میخوام تو اوبنتو مانت کنم.
به پسوند کاری نداشته باشید. پسوند جز اسم هست و خیلی راحت میشه تغییرش داد. توی گنو/لینوکس، نوع فایل با توجه به اطلاعات داخلش تشخیص داده میشه.
اگه منظورتون از پسوند، اینه که یه فایل vhdx یا vhd تولید میشه، بدونید اینجوری نیست.
اگه img رو به صورت خام ایجاد کنید، تمام حجمی که مشخص کردید رو اشغال میکنه. اینجوری نیست که فقط برای چیزی که استفاده شده، حجم بگیره.
برای اینکه بخواهید فقط به اندازه اطلاعات ذخیره شده جا بگیره، باید از قالببندیهایی (فرمت) مثل vhdx ،qcow2 ،vdi و ... استفاده کنید.
اینکه میخواهید فایل vhdx یا vhd رو توی اوبونتو سوار کنید، واضح نیست. میخواهید از اونها توی ماشینمجازی استفاده کنید؟ یا اینکه مستقیم توسط همین اوبونتو، به اطلاعاتش دسترسی پیدا کنید؟
من vmdk ویم ویر رو نتونستم توی ویرچوال باکس بیارم بوت نشد صفحه سیاه میاورد
خب مشخصه چرا نشده. vmdk مال vmware هست و ویرچوال باکس نمیتونه اون رو بخونه.
قالببندی که ویرچوالباکس برای دیسکها استفاده میکنه، vdi هست. فکر کنم از فرمت خام (raw) هم پشتیبانی میکنه.
با استفاده از ابزار qemu-img میتونید دیسکهای مجازی با قالببندیهای متفاوت رو به هم تبدیل کنید. مثلا vmdk رو به vdi
ابزار بالا همراه بسته qemu-utils قرار داره. میتونید اینجوری نصبش کنید.
sudo apt install qemu-utils
چندین ابزار دیگه هم همراه بسته بالا هستند.
اینجوری میتونید با qemu-img، یه دیسک مجازی رو از یه قالببندی به یه قالببندی دیگه تبدیل کنید.
qemu-img convert -f source-format -O output-format source-file output-file
به جای source-file، قالببندی فایل مبدا رو قرار بدید. به جای output-format، قالببندی خروجی رو.
به جای source-file، مسیر به فایل مبدا و به جای output-file، مسیر به فایل خروجی رو قرار بدید.
مثلا فرض کنید شما یه فایل vmdk دارید و میخواهید اون رو به vdi تبدیل کنید. فرض کنید اسم فایل اول، virtual-disk.vmdk هست و توی دایرکتوری هوم شما قرار داره. میخواهید فایل خروجی رو توی دایرکتوری Downloads توی هوم خودتون و با اسم converted-virtual-disk.vdi ذخیره کنید.
در این حالت، اینجوری باید از دستور استفاده کنید.
qemu-img convert -f vmdk -O vdi ~/virtual-disk.vmdk ~/Downloads/converted-virtual-disk.vdi
اون پسوندهای vmdk. و vdi. مهم نیستند. فقط برای فهم قرار دادم. لازم نیست اسم فایل، حتما اونها رو داشته باشه.
اگه نمیدونید قالببندی فایل مبدا چی هست، خروجی دستور qemu-img info filename میتونه به شما کمک کنه. همینطور خروجی دستور file filename هم میتونه کمک کننده باشه. به جای filename، باید اسم فایل مورد نظر رو بذارید. دستور file میتونه نوع یه فایل رو مشخص کنه.
این ابزار از قالببندیهای متفاوتی پشتیبانی میکنه. در مورد vhd و vhdx، نمیدونم پشتیبانی میشن یا نه. خودتون امتحان کنید.
-
قبلا تو ویندوز با خود منیجر ویندوز یک vhdx ساختم به حجم یک ترا الان همینو میخوام تو لینوکس مستقیما باز کنم
{ تو خود ویندوز میشه مستقیم باز کرد کافی دابل کلیک کنی همین (ویندوز ده) }
-
اینجا (https://serverok.in/how-to-open-a-vhd-or-vhdx-file-in-linux) رو ببینید.
اگه جایی رو متوجه نشدید، بگید تا توضیح بدیم.
-
اینجا (https://serverok.in/how-to-open-a-vhd-or-vhdx-file-in-linux) رو ببینید.
اگه جایی رو متوجه نشدید، بگید تا توضیح بدیم.
سلام ترمینال را در همون پوشه ای که فایل مورد نظرم بود باز کردم.
sudo virt-list-partitions 00094153-0000-0000-0000-100000000000.vhdx
/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. at /usr/bin/virt-list-partitions line 175.
-
موقع اجرا، یه جایی سعی کرده فایل زیر رو اجرا کنه ولی اون فایل با کد خروجی 1 به پایان رسیده.
/usr/bin/supermin
اگه کد خروجی یه برنامه 0 باشه، یعنی اون برنامه با موفقیت اجرا شده. هر کد دیگه به این معنی هست که یه جایی مشکل پیش اومده. ممکنه برنامهها برای خطاهای مختلف، کدهای خروجی متفاوتی داشته باشند. در مورد خطاهای معمول، بیشتر 1 استفاده میشه.
عیبیابی libguestfs رو فعال و برنامه رو دوباره اجرا کنید. ببینید چی میگه. خروجی رو اینجا قرار بدید.
برای فعال شدن عیبیابی libguestfs، باید متغییرهای محیطی LIBGUESTFS_DEBUG و LIBGUESTFS_TRACE صادر شده باشند. (export، مناسبترین چیزی بود که به ذهنم رسید) و مقدار هر دو اونها برابر 1 باشه. برای اینکار، اینجوری عمل کمید.
export LIBGUESTFS_DEBUG=1 LIBGUESTFS_TRACE=1
بعد دوباره برنامه رو اجرا کنید و خروجی رو اینجا قرار بدید.
sudo virt-list-partitions 00094153-0000-0000-0000-100000000000.vhdx
توی دستور بالا فرض کردیم که vhdx، توی دایرکتوری جاری قرار داره. اگه اینطور نیست، یا برید جایی که فایل قرار داره، یا مسیر فایل رو بنویسید.
موقع نوشتن دستورات و خروجی برنامهها توی انجمن، از تگ کد استفاده کنید تا متن درست نمایش داده بشه. برای اینکار موقع نوشتن، توی دکمههای بالا، روی اون که علامت # داره بزنید تا یه تگ کد داخل متن قرار بگیره. بعد خروجی یا دستور مورد نظر رو بین اون تگ قرار بدید. از قابلیت پیشنمایش استفاده کنید تا ببینید ارسال شما تقریبا چجوری نمایش داده میشه.