| virt-df(1) | Virtualization Support | virt-df(1) |
نام (NAME)
virt-df - نمایش فضای آزاد دیسک در سیستمهای فایل ماشینهای مجازی
خلاصه دستور (SYNOPSIS)
همه ماشینهای میهمان:
virt-df [--options]
یک ماشین میهمان منفرد:
virt-df [--options] -d domname virt-df [--options] -a disk.img [-a disk.img ...]
سبک قدیمی:
virt-df [--options] domname virt-df [--options] disk.img [disk.img ...]
توضیحات (DESCRIPTION)
دستور "virt-df" ابزاری خط فرمانی برای نمایش فضای آزاد در سیستمهای فایل ماشین مجازی است. برخلاف سایر ابزارها، این دستور صرفاً اندازه دیسک اختصاصیافته به یک ماشین مجازی را نشان نمیدهد، بلکه میتواند به درون ایمیجهای دیسک نگاه کند تا ببیند چه مقدار فضا واقعاً در حال استفاده است.
اگر بدون هیچ آرگومان -a یا -d استفاده شود، "virt-df" با libvirt ارتباط برقرار کرده تا فهرستی از تمام ماشینهای میهمان فعال و غیرفعال دریافت کند، و به نوبت عملیاتی از نوع "df" را روی هر یک انجام داده و نتایج را چاپ میکند.
اگر هر یک از آرگومانهای -a یا -d مشخص شوند، "virt-df" عملیاتی از نوع "df" را یا روی دامنه نامبرده منفرد libvirt یا روی ایمیج(های) دیسک فهرستشده در خط فرمان (که همگی باید متعلق به یک ماشین مجازی واحد باشند) انجام میدهد. در این حالت (با آرگومانها)، "virt-df" فقط برای یک ماشین میهمان منفرد کار خواهد کرد. اگر میخواهید آن را روی چندین ماشین میهمان اجرا کنید، باید "virt-df" را چندین بار فراخوانی کنید.
از گزینه --csv برای دریافت قالبی استفاده کنید که بتواند به راحتی توسط برنامههای دیگر پردازش و تجزیه شود. سایر گزینهها مشابه دستور استاندارد df(1) هستند.
مثالها (EXAMPLES)
نمایش مصرف دیسک برای یک ماشین میهمان libvirt به نام "F14x64". خوانا کردن خروجی برای انسان (human-readable):
# virt-df -d F14x64 -h Filesystem Size Used Available Use% F14x64:/dev/sda1 484M 66M 393M 14% F14x64:/dev/vg_f13x64/lv_root 7.4G 3.4G 4.0G 46%
نمایش مصرف دیسک برای یک فایل ایمیج دیسک به نام test.img:
$ virt-df -a test1.img Filesystem 1K-blocks Used Available Use% test1.img:/dev/sda1 99099 1551 92432 2%
اگر یک ماشین میهمان چندین دیسک دارد، از گزینه -a به صورت مکرر استفاده کنید. یک علامت مثبت ("+") برای هر دیسک اضافی نمایش داده میشود. نکته: این کار را با دیسکهای نامرتبط ماشینهای میهمان انجام ندهید.
$ virt-df -a Win7x32TwoDisks-a -a Win7x32TwoDisks-b Filesystem 1K-blocks Used Available Use% Win7x32TwoDisks-a+:/dev/sda1 102396 24712 77684 25% Win7x32TwoDisks-a+:/dev/sda2 12478460 7403416 5075044 60% Win7x32TwoDisks-a+:/dev/sdb1 521212 55728 465484 11%
گزینهها (OPTIONS)
- --help
- نمایش راهنمای خلاصه.
- -a FILE
- --add FILE
- افزودن
"FILE" که
باید یک
ایمیج دیسک
از ماشین
مجازی باشد.
اگر ماشین
مجازی
چندین
دستگاه
بلوکی
دارد، باید
همه آنها
را با
گزینههای
جداگانه -a
ارائه دهید.
قالب ایمیج دیسک به طور خودکار شناسایی میشود. برای نادیده گرفتن این رفتار و تحمیل یک قالب خاص، از گزینه --format=.. استفاده کنید.
- -a URI
- --add URI
- افزودن دیسک راه دور. به "ADDING REMOTE STORAGE" در guestfish(1) مراجعه کنید.
- --blocksize=512
- --blocksize=4096
- --blocksize
- این پارامتر اندازه بخش (sector size) ایمیج دیسک را تنظیم میکند. این گزینه بر تمام دیسکهای بعدی که به صراحت پس از این پارامتر اضافه میشوند تأثیر میگذارد. استفاده از --blocksize بدون آرگومان، اندازه سکتور دیسک را به مقدار پیشفرض تغییر میدهد که معمولاً ۵۱۲ بایت است. همچنین به "guestfs_add_drive_opts" در guestfs(3) مراجعه کنید.
- -c URI
- --connect URI
- در صورت
استفاده از
libvirt، به URI
مشخصشده
متصل
میشود. در
صورت حذف،
به
هایپروایزر
پیشفرض libvirt
متصل
میشویم.
اگر دستگاههای بلوکی میهمان را مستقیماً (-a) مشخص کنید، libvirt به هیچ وجه استفاده نمیشود.
- --csv
- نوشتن نتایج در قالب CSV (مقادیر جداشده با کاما). این قالب میتواند به راحتی به پایگاههای داده و صفحات گسترده وارد شود، اما بخش "نکتهای درباره قالب CSV" را در زیر بخوانید.
- -d guest
- --domain guest
- افزودن تمام دیسکها از ماشین میهمان libvirt نامبرده. به جای نامها میتوان از UUIDهای دامنه استفاده کرد.
- --format=raw|qcow2|..
- --format
- حالت
پیشفرض
برای گزینه
-a تشخیص
خودکار
قالب ایمیج
دیسک است.
استفاده از
این گزینه،
قالب دیسک
را برای
گزینههای
-a که در خط
فرمان بعد
از آن
میآیند
تحمیل
میکند.
استفاده از
--format بدون
آرگومان،
تشخیص را
برای
گزینههای
بعدی -a به
حالت
خودکار
برمیگرداند.
برای مثال:
virt-df --format=raw -a disk.img
قالب raw (بدون تشخیص خودکار) را برای disk.img تحمیل میکند.
virt-df --format=raw -a disk.img --format -a another.img
قالب raw (بدون تشخیص خودکار) را برای disk.img تحمیل کرده و برای another.img به تشخیص خودکار بازمیگردد.
اگر ایمیجهای دیسک میهمان با قالب خام (raw) غیرقابل اعتماد دارید، باید از این گزینه برای مشخص کردن قالب دیسک استفاده کنید. این کار از یک مشکل امنیتی احتمالی با ماشینهای میهمان مخرب جلوگیری میکند (CVE-2010-3851).
- -h
- --human-readable
- چاپ
اندازهها
در قالب
خوانا برای
انسان (human-readable).
مجاز به استفاده همزمان از -h و --csv نیستید.
- -i
- --inodes
- چاپ اینودها (inodes) به جای بلوکها.
- --one-per-guest
- از زمان libguestfs 1.22، این حالت پیشفرض است. این گزینه هیچ کاری انجام نمیدهد و برای سازگاری با نسخههای قدیمیتر اسکریپتها در اینجا باقی مانده است.
- -P nr_threads
- از زمان libguestfs 1.22،
دستور virt-df
چندنخی (multithreaded)
است و
ماشینهای
میهمان را
به صورت
موازی
بررسی
میکند. به
طور
پیشفرض،
تعداد
نخها بر
اساس میزان
حافظه آزاد
در دسترس در
زمان شروع virt-df
انتخاب
میشود. با
استفاده از
گزینه -P
میتوانید
virt-df را مجبور
کنید
حداکثر از
"nr_threads" نخ
استفاده
کند.
توجه داشته باشید که -P 0 به معنی تشخیص خودکار و -P 1 به معنی استفاده از یک نخ منفرد است.
- --uuid
- چاپ UUIDها به
جای نامها.
این گزینه
برای دنبال
کردن یک
ماشین
میهمان حتی
زمانی که
ماشین
مهاجرت
داده شده یا
تغییر نام
یافته، یا
زمانی که دو
ماشین
میهمان
اتفاقاً
نام یکسانی
دارند مفید
است.
توجه داشته باشید که فقط دامنههایی که از libvirt واکشی میکنیم دارای UUID هستند. برای ایمیجهای دیسک، حتی با مشخص کردن این گزینه، همچنان نام ایمیج دیسک را چاپ میکنیم.
- -v
- --verbose
- فعالسازی پیامهای پرجزئیات برای اشکالزدایی.
- -V
- --version
- نمایش شماره نسخه و خروج.
- -x
- فعالسازی ردیابی فراخوانیهای API در libguestfs.
اعداد STATVFS (STATVFS NUMBERS)
دستور "virt-df" (و df(1)) اطلاعات را با صدور یک فراخوانی سیستمی statvfs(3) به دست میآورند. شما میتوانید همان اطلاعات را مستقیماً چه از سیستم میزبان (با استفاده از libguestfs) یا از داخل ماشین میهمان به دست آورید:
- از سیستم میزبان
- اجرای این
دستور:
guestfish --ro -d GuestName -i statvfs /
(برای مشاهده آمار سایر سیستمهای فایل، / را تغییر دهید).
- از داخل ماشین میهمان
- اجرای این
دستور:
python -c 'import os; s = os.statvfs ("/"); print s'(برای مشاهده آمار سایر سیستمهای فایل، / را تغییر دهید).
نکتهای درباره قالب CSV (NOTE ABOUT CSV FORMAT)
قالب مقادیر جداشده با کاما (CSV) قالبی فریبنده است. به نظر میرسد که تجزیه آن باید آسان باشد، اما قطعاً تجزیه آن ساده نیست.
باور غلط: کافیست فیلدها را بر اساس کاما جدا کنید. واقعیت: این روش به صورت قابل اعتماد کار نمیکند. این مثال دو ستون دارد:
"foo,bar",baz
باور غلط: فایل را خط به خط بخوانید. واقعیت: این روش به صورت قابل اعتماد کار نمیکند. این مثال یک سطر دارد:
"foo bar",baz
برای اسکریپتهای پوسته، از "csvtool" (https://github.com/Chris00/ocaml-csv که در توزیعهای عمده لینوکس نیز بستهبندی شده است) استفاده کنید.
برای زبانهای دیگر، از یک کتابخانه پردازش CSV استفاده کنید (مانند "Text::CSV" برای Perl یا کتابخانه توکار csv در Python).
بیشتر صفحات گسترده و پایگاههای داده میتوانند CSV را مستقیماً وارد کنند.
وضعیت خروج (EXIT STATUS)
این برنامه در صورت موفقیت مقدار ۰ و در صورت بروز خطا مقداری غیر صفر برمیگرداند.
همچنین ببینید (SEE ALSO)
df(1), guestfs(3), guestfish(1), virt-drivers(1), virt-filesystems(1), http://libguestfs.org.
نویسنده (AUTHOR)
Richard W.M. Jones http://people.redhat.com/~rjones
حق نشر (COPYRIGHT)
Copyright (C) 2009-2025 Red Hat Inc.
مجوز (LICENSE)
این برنامه یک نرمافزار آزاد است؛ شما میتوانید آن را تحت شرایط «مجوز عمومی همگانی گنو» (GNU GPL) که توسط بنیاد نرمافزارهای آزاد منتشر شده است، چه نسخه ۲ مجوز یا (به انتخاب خودتان) هر نسخه بالاتر دیگری، مجدداً توزیع کرده یا تغییر دهید.
این برنامه با این امید توزیع شده است که مفید واقع شود، اما بدون هرگونه ضمانت؛ حتی بدون ضمانت ضمنی تجاری بودن یا مناسب بودن برای یک هدف مشخص. برای جزئیات بیشتر به «مجوز عمومی همگانی گنو» مراجعه کنید.
شما باید یک نسخه از «مجوز عمومی همگانی گنو» را به همراه این برنامه دریافت کرده باشید؛ در غیر این صورت، به آدرس زیر مکاتبه کنید: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
اشکالات (BUGS)
برای دریافت فهرستی از اشکالات موجود در libguestfs، از این پیوند استفاده کنید: <https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools>
برای گزارش یک اشکال جدید در libguestfs، از این پیوند استفاده کنید: <https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools>
هنگام گزارش اشکال، لطفاً موارد زیر را ارائه دهید:
- نسخه libguestfs.
- محل دریافت libguestfs (مثلاً کدام توزیع لینوکس، کامپایل از منبع و غیره).
- توصیف دقیق اشکال و روش بازتولید آن.
- دستور libguestfs-test-tool(1) را اجرا کرده و خروجی کامل و بدون ویرایش آن را در گزارش اشکال قرار دهید.
| 2026-07-11 | guestfs-tools-1.56.0 |