.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Podwrapper::Man 1.56.0 (Pod::Simple 3.45) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Required to disable full justification in groff 1.23.0. .if n .ds AD l .\" ======================================================================== .\" .IX Title "virt-cat 1" .TH virt-cat 1 2026-07-11 guestfs-tools-1.56.0 "Virtualization Support" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "نام (NAME)" virt\-cat \- نمایش سریع محتویات فایل‌های داخل ماشین مجازی .SH "خلاصه دستور (SYNOPSIS)" .IX Header "SYNOPSIS" .Vb 1 \& virt\-cat [\-\-options] \-d domname file [file ...] \& \& virt\-cat [\-\-options] \-a disk.img [\-a disk.img ...] file [file ...] .Ve .PP شیوه قدیمی: .PP .Vb 1 \& virt\-cat domname file \& \& virt\-cat disk.img file .Ve .SH "توضیحات (DESCRIPTION)" .IX Header "DESCRIPTION" دستور \&\f(CW\*(C`virt\-cat\*(C'\fR یک ابزار خط فرمان برای نمایش محتویات \&\f(CW\*(C`file\*(C'\fR است، به طوری که \&\f(CW\*(C`file\*(C'\fR درون ماشین مجازی (یا ایمیج دیسک) مشخص‌شده وجود دارد. .PP می‌توان چندین نام فایل را مشخص کرد که در این حالت محتوای آن‌ها به یکدیگر متصل و پشت سر هم نمایش داده می‌شوند. هر نام فایل باید یک مسیر کامل باشد که از دایرکتوری ریشه شروع می‌شود (با \*(Aq/\*(Aq آغاز می‌گردد). .PP ابزار \&\f(CW\*(C`virt\-cat\*(C'\fR می‌تواند برای مشاهده سریع یک فایل استفاده شود. برای ویرایش یک فایل، از \&\f(CW\*(C`virt\-edit\*(C'\fR استفاده کنید. برای موارد پیچیده‌تر باید به ابزار \&\fBguestfish\fR\|(1) نگاهی بیندازید (بخش "استفاده از GUESTFISH" در زیر را ببینید). .SH "مثال‌ها (EXAMPLES)" .IX Header "EXAMPLES" نمایش فایل \fI/etc/fstab\fR از داخل ماشین مجازی libvirt به نام \&\f(CW\*(C`mydomain\*(C'\fR: .PP .Vb 1 \& virt\-cat \-d mydomain /etc/fstab .Ve .PP یافتن بسته‌هایی که اخیراً نصب شده‌اند: .PP .Vb 1 \& virt\-cat \-d mydomain /var/log/yum.log | tail .Ve .PP یافتن اینکه چه کسی درون ماشین مجازی وارد سیستم شده است: .PP .Vb 2 \& virt\-cat \-d mydomain /var/run/utmp > /tmp/utmp \& who /tmp/utmp .Ve .PP یا چه کسانی قبلاً وارد سیستم شده بودند: .PP .Vb 2 \& virt\-cat \-d mydomain /var/log/wtmp > /tmp/wtmp \& last \-f /tmp/wtmp .Ve .SH "گزینه‌ها (OPTIONS)" .IX Header "OPTIONS" .IP \fB\-\-help\fR 4 .IX Item "--help" نمایش راهنمای خلاصه. .IP "\fB\-a\fR file" 4 .IX Item "-a file" .PD 0 .IP "\fB\-\-add\fR file" 4 .IX Item "--add file" .PD افزودن \fIfile\fR که باید یک ایمیج دیسک از ماشین مجازی باشد. اگر ماشین مجازی دارای چندین دستگاه بلوکی است، باید همه آن‌ها را با گزینه‌های جداگانه \fI\-a\fR مشخص کنید. .Sp فرمت ایمیج دیسک به صورت خودکار تشخیص داده می‌شود. برای لغو این حالت و اجبار یک فرمت خاص، از گزینه \fI\-\-format=..\fR استفاده کنید. .IP "\fB\-a URI\fR" 4 .IX Item "-a URI" .PD 0 .IP "\fB\-\-add URI\fR" 4 .IX Item "--add URI" .PD افزودن یک دیسک ریموت. بخش "ADDING REMOTE STORAGE" در \fBguestfish\fR\|(1) را ببینید. .IP \fB\-\-blocksize=512\fR 4 .IX Item "--blocksize=512" .PD 0 .IP \fB\-\-blocksize=4096\fR 4 .IX Item "--blocksize=4096" .IP \fB\-\-blocksize\fR 4 .IX Item "--blocksize" .PD این پارامتر اندازه سکتور ایمیج دیسک را تنظیم می‌کند. این گزینه بر تمام دیسک‌های بعدی که پس از این پارامتر به صورت صریح اضافه می‌شوند تأثیر می‌گذارد. استفاده از \&\fI\-\-blocksize\fR بدون آرگومان، اندازه سکتور دیسک را به مقدار پیش‌فرض که معمولاً ۵۱۲ بایت است تغییر می‌دهد. همچنین "guestfs_add_drive_opts" در \fBguestfs\fR\|(3) را ببینید. .IP "\fB\-c\fR URI" 4 .IX Item "-c URI" .PD 0 .IP "\fB\-\-connect\fR URI" 4 .IX Item "--connect URI" .PD در صورت استفاده از libvirt، به \fIURI\fR مشخص‌شده متصل می‌شود. در صورت حذف، به هایپروایزر پیش‌فرض libvirt متصل می‌شویم. .Sp اگر دستگاه‌های بلوکی مهمان را مستقیماً مشخص کنید (\fI\-a\fR)، دیگر از libvirt استفاده نمی‌شود. .IP "\fB\-d\fR guest" 4 .IX Item "-d guest" .PD 0 .IP "\fB\-\-domain\fR guest" 4 .IX Item "--domain guest" .PD افزودن تمام دیسک‌ها از مهمان libvirt مشخص‌شده. می‌توان به جای نام‌ها از UUID دامنه‌ها استفاده کرد. .IP \fB\-\-echo\-keys\fR 4 .IX Item "--echo-keys" هنگام درخواست کلیدها و گذرواژه‌ها، virt\-cat معمولاً بازتاب تایپ (echo) را خاموش می‌کند تا نتوانید آنچه را که تایپ می‌کنید ببینید. اگر نگران حملات Tempest نیستید و فرد دیگری در اتاق حضور ندارد، می‌توانید این فلگ را مشخص کنید تا آنچه را که تایپ می‌کنید ببینید. .IP \fB\-\-format=raw|qcow2|..\fR 4 .IX Item "--format=raw|qcow2|.." .PD 0 .IP \fB\-\-format\fR 4 .IX Item "--format" .PD حالت پیش‌فرض برای گزینه \fI\-a\fR تشخیص خودکار فرمت ایمیج دیسک است. استفاده از این گزینه، فرمت دیسک را برای گزینه‌های \fI\-a\fR که در ادامه خط فرمان می‌آیند اجبار می‌کند. استفاده از \fI\-\-format\fR بدون آرگومان، حالت تشخیص خودکار را برای گزینه‌های \fI\-a\fR بعدی بازمی‌گرداند. .Sp به عنوان مثال: .Sp .Vb 1 \& virt\-cat \-\-format=raw \-a disk.img file .Ve .Sp فرمت raw (بدون تشخیص خودکار) را برای \fIdisk.img\fR اجبار می‌کند. .Sp .Vb 1 \& virt\-cat \-\-format=raw \-a disk.img \-\-format \-a another.img file .Ve .Sp فرمت raw (بدون تشخیص خودکار) را برای \fIdisk.img\fR اجبار کرده و برای \fIanother.img\fR به حالت تشخیص خودکار بازمی‌گردد. .Sp اگر ایمیج‌های دیسک مهمان با فرمت raw و غیرقابل‌اعتماد دارید، باید از این گزینه برای تعیین فرمت دیسک استفاده کنید. این کار از یک مشکل امنیتی احتمالی با مهمان‌های مخرب جلوگیری می‌کند (CVE\-2010\-3851). .IP "\fB\-\-key\fR SELECTOR" 4 .IX Item "--key SELECTOR" تعیین یک کلید برای LUKS، جهت بازگشایی خودکار دستگاه LUKS هنگام استفاده از بازرسی (inspection). .RS 4 .IP "\fB\-\-key\fR NAME\fB:key:\fRKEY_STRING" 4 .IX Item "--key NAME:key:KEY_STRING" .PD 0 .IP "\fB\-\-key\fR UUID\fB:key:\fRKEY_STRING" 4 .IX Item "--key UUID:key:KEY_STRING" .IP "\fB\-\-key\fR \fBall:key:\fRKEY_STRING" 4 .IX Item "--key all:key:KEY_STRING" .PD عبارت \&\f(CW\*(C`NAME\*(C'\fR نام دستگاه در libguestfs است (مانند \f(CW\*(C`/dev/sda1\*(C'\fR). شناسه \&\f(CW\*(C`UUID\*(C'\fR شناسه یکتای دستگاه است. \&\f(CW\*(C`all\*(C'\fR به معنای امتحان کردن کلید روی تمام دستگاه‌های رمزگذاری‌شده است. .Sp از \&\f(CW\*(C`KEY_STRING\*(C'\fR مشخص‌شده به عنوان گذرواژه استفاده کنید. .IP "\fB\-\-key\fR NAME\fB:file:\fRFILENAME" 4 .IX Item "--key NAME:file:FILENAME" .PD 0 .IP "\fB\-\-key\fR UUID\fB:file:\fRFILENAME" 4 .IX Item "--key UUID:file:FILENAME" .IP "\fB\-\-key\fR \fBall:file:\fRFILENAME" 4 .IX Item "--key all:file:FILENAME" .PD خواندن گذرواژه از \fIFILENAME\fR. .IP "\fB\-\-key\fR NAME\fB:clevis\fR" 4 .IX Item "--key NAME:clevis" .PD 0 .IP "\fB\-\-key\fR UUID\fB:clevis\fR" 4 .IX Item "--key UUID:clevis" .IP "\fB\-\-key\fR \fBall:clevis\fR" 4 .IX Item "--key all:clevis" .PD تلاش برای بازگشایی قفل دستگاه بدون گذرواژه از طریق Clevis روی شبکه. لطفاً برای اطلاعات بیشتر درباره رمزگذاری دیسک متصل به شبکه (NBDE) به بخش "ENCRYPTED DISKS" در \fBguestfs\fR\|(3) مراجعه کنید. .Sp توجه داشته باشید که اگر هر یک از این گزینه‌ها در خط فرمان وجود داشته باشد، شبکه کاربری QEMU به صورت خودکار برای ابزار libguestfs فعال خواهد شد. .RE .RS 4 .RE .IP \fB\-\-keys\-from\-stdin\fR 4 .IX Item "--keys-from-stdin" خواندن پارامترهای کلید یا گذرواژه از ورودی استاندارد (stdin). حالت پیش‌فرض تلاش برای خواندن گذرواژه‌ها از کاربر با باز کردن \fI/dev/tty\fR است. .Sp اگر چندین دستگاه رمزگذاری‌شده وجود دارد، ممکن است لازم باشد چندین کلید را در stdin وارد کنید، هر کلید در یک سطر. .IP "\fB\-m\fR dev[:mountpoint[:options[:fstype]]]" 4 .IX Item "-m dev[:mountpoint[:options[:fstype]]]" .PD 0 .IP "\fB\-\-mount\fR dev[:mountpoint[:options[:fstype]]]" 4 .IX Item "--mount dev[:mountpoint[:options[:fstype]]]" .PD مونت کردن پارتیشن یا حجم منطقی نام‌برده‌شده روی نقطه مونت مشخص‌شده. .Sp اگر نقطه مونت حذف شود، مقدار پیش‌فرض آن \fI/\fR خواهد بود. .Sp مشخص کردن هر نقطه مونت، بازرسی سیستم مهمان و مونت شدن خودکار ریشه و تمام نقاط مونت آن را غیرفعال می‌کند؛ بنابراین مطمئن شوید تمام نقاط مونت مورد نیاز برای کار با نام فایل‌های داده‌شده به عنوان آرگومان را مونت کرده‌اید. .Sp اگر نمی‌دانید یک ایمیج دیسک شامل چه فایل‌سیستم‌هایی است، می‌توانید guestfish را بدون این گزینه اجرا کرده و سپس پارتیشن‌ها، فایل‌سیستم‌ها و LVهای موجود را لیست کنید (دستورات "list\-partitions"، "list\-filesystems" و "lvs" را ببینید)، یا می‌توانید از برنامه \&\fBvirt\-filesystems\fR\|(1) استفاده کنید. .Sp بخش سوم (و به ندرت استفاده‌شده) از پارامتر mount فهرستی از گزینه‌های مونت است که برای مونت کردن فایل‌سیستم زیربنایی استفاده می‌شود. اگر این مقدار داده نشود، گزینه‌های مونت یا یک رشته خالی خواهند بود یا \&\f(CW\*(C`ro\*(C'\fR (دومی در صورتی که فلگ \fI\-\-ro\fR استفاده شده باشد). با تعیین گزینه‌های مونت، این انتخاب پیش‌فرض را لغو می‌کنید. احتمالاً تنها زمانی که از این مورد استفاده می‌کنید، برای فعال‌سازی ACLها و/یا ویژگی‌های گسترش‌یافته (extended attributes) است، در صورتی که فایل‌سیستم از آن‌ها پشتیبانی کند: .Sp .Vb 1 \& \-m /dev/sda1:/:acl,user_xattr .Ve .Sp استفاده از این فلگ معادل استفاده از دستور \&\f(CW\*(C`mount\-options\*(C'\fR است. .Sp بخش چهارم پارامتر، درایور فایل‌سیستم مورد استفاده است، مانند \&\f(CW\*(C`ext3\*(C'\fR یا \&\f(CW\*(C`ntfs\*(C'\fR. این مورد به ندرت مورد نیاز است، اما اگر چندین درایور برای یک فایل‌سیستم معتبر باشند (مانند \f(CW\*(C`ext2\*(C'\fR و \f(CW\*(C`ext3\*(C'\fR)، یا اگر libguestfs یک فایل‌سیستم را به اشتباه تشخیص دهد، می‌تواند مفید باشد. .IP \fB\-v\fR 4 .IX Item "-v" .PD 0 .IP \fB\-\-verbose\fR 4 .IX Item "--verbose" .PD فعال‌سازی پیام‌های با جزئیات کامل برای اشکال‌زدایی. .IP \fB\-V\fR 4 .IX Item "-V" .PD 0 .IP \fB\-\-version\fR 4 .IX Item "--version" .PD نمایش شماره نسخه و خروج. .IP \fB\-x\fR 4 .IX Item "-x" فعال‌سازی ردیابی (tracing) فراخوانی‌های API در libguestfs. .SH "آرگومان‌های خط فرمان به سبک قدیمی (OLD\-STYLE COMMAND LINE ARGUMENTS)" .IX Header "OLD-STYLE COMMAND LINE ARGUMENTS" نسخه‌های قبلی virt\-cat به شما اجازه می‌دادند یکی از این دو حالت را بنویسید: .PP .Vb 1 \& virt\-cat disk.img [disk.img ...] file .Ve .PP یا .PP .Vb 1 \& virt\-cat guestname file .Ve .PP در حالی که در این نسخه باید به ترتیب از \fI\-a\fR یا \fI\-d\fR استفاده کنید تا از حالت گیج‌کننده‌ای که ممکن است یک ایمیج دیسک همنام یک ماشین مهمان باشد جلوگیری شود. .PP برای سازگاری، سبک قدیمی همچنان پشتیبانی می‌شود. .SH "فایل‌های لاگ (LOG FILES)" .IX Header "LOG FILES" برای فهرست کردن فایل‌های لاگ از سیستم‌های مهمان، ابزار مرتبط \&\fBvirt\-log\fR\|(1) را ببینید. این ابزار فرمت‌های باینری لاگ مانند ژورنال systemd را درک می‌کند. .PP برای دنبال کردن (tail) فایل‌های لاگ متنی، از \&\fBvirt\-tail\fR\|(1) استفاده کنید. .SH "مسیرهای ویندوز (WINDOWS PATHS)" .IX Header "WINDOWS PATHS" ابزار \&\f(CW\*(C`virt\-cat\*(C'\fR توانایی محدودی برای درک حروف درایو و مسیرهای ویندوز دارد (مانند \fIE:\efoo\ebar.txt\fR). .PP تنها و تنها در صورتی که سیستم مهمان در حال اجرای ویندوز باشد: .IP \(bu 4 پیشوندهای حرف درایو مانند \&\f(CW\*(C`C:\*(C'\fR در برابر رجیستری ویندوز به فایل‌سیستم صحیح نگاشت می‌شوند. .IP \(bu 4 هر نویسه بک‌اسلش (\f(CW\*(C`\e\*(C'\fR) در مسیر با اسلش جایگزین می‌شود تا libguestfs بتواند آن را پردازش کند. .IP \(bu 4 مسیر بدون حساسیت به حروف کوچک و بزرگ برای یافتن فایلی که باید نمایش داده شود بررسی و تعیین می‌شود. .PP چندین کاستی شناخته‌شده وجود دارد: .IP \(bu 4 برخی پیوندهای نمادین (symbolic links) در NTFS ممکن است به درستی دنبال نشوند. .IP \(bu 4 نقاط اتصال (junction points) در NTFS که از چندین فایل‌سیستم عبور می‌کنند دنبال نمی‌شوند. .SH "استفاده از GUESTFISH (USING GUESTFISH)" .IX Header "USING GUESTFISH" ابزار \&\fBguestfish\fR\|(1) یک ابزار قدرتمندتر و سطح پایین‌تر است که می‌توانید در زمانی که \&\f(CW\*(C`virt\-cat\*(C'\fR کار نمی‌کند از آن استفاده کنید. .PP استفاده از \&\f(CW\*(C`virt\-cat\*(C'\fR تقریباً معادل اجرای دستور زیر است: .PP .Vb 1 \& guestfish \-\-ro \-i \-d domname download file \- .Ve .PP که در آن \&\f(CW\*(C`domname\*(C'\fR نام مهمان libvirt، و \&\f(CW\*(C`file\*(C'\fR مسیر کامل فایل است. به علامت \&\f(CW\*(C`\-\*(C'\fR در انتها توجه کنید (به معنای "خروجی در stdout"). .PP دستور بالا از ویژگی بازرسی مهمان libguestfs استفاده می‌کند و بنابراین روی مهمان‌هایی که libguestfs قادر به بازرسی آن‌ها نیست، یا مواردی مانند ایمیج‌های دیسک دلخواه که شامل سیستم مهمان نیستند کار نمی‌کند. برای نمایش مستقیم یک فایل از یک ایمیج دیسک، از دستور زیر استفاده کنید: .PP .Vb 1 \& guestfish \-\-ro \-a disk.img \-m /dev/sda1 download file \- .Ve .PP که در آن \fIdisk.img\fR ایمیج دیسک، \fI/dev/sda1\fR فایل‌سیستم درون ایمیج دیسک، و \&\f(CW\*(C`file\*(C'\fR مسیر کامل فایل است. .SH "وضعیت خروج (EXIT STATUS)" .IX Header "EXIT STATUS" این برنامه در صورت موفقیت مقدار 0 و در صورت بروز خطا مقداری غیر از صفر را برمی‌گرداند. .SH "همچنین ببینید (SEE ALSO)" .IX Header "SEE ALSO" \&\fBguestfs\fR\|(3), \&\fBguestfish\fR\|(1), \&\fBvirt\-copy\-out\fR\|(1), \&\fBvirt\-edit\fR\|(1), \&\fBvirt\-log\fR\|(1), \&\fBvirt\-tail\fR\|(1), \&\fBvirt\-tar\-out\fR\|(1), http://libguestfs.org .SH "نویسنده (AUTHOR)" .IX Header "AUTHOR" Richard W.M. Jones http://people.redhat.com/~rjones .SH "حق نشر (COPYRIGHT)" .IX Header "COPYRIGHT" Copyright (C) 2010\-2025 Red Hat Inc. .SH "مجوز (LICENSE)" .IX Header "LICENSE" این برنامه یک نرم‌افزار آزاد است؛ شما می‌توانید آن را تحت شرایط «مجوز عمومی همگانی گنو» (GNU General Public License) که توسط «بنیاد نرم‌افزارهای آزاد» منتشر شده است؛ چه نسخه ۲ مجوز و چه (به انتخاب خودتان) هر نسخه بعدی دیگری، بازتوزیع کرده یا تغییر دهید. .PP این برنامه به این امید توزیع شده است که مفید واقع شود، اما بدون هیچ‌گونه ضمانتی؛ حتی بدون ضمانت ضمنی قابل فروش بودن یا مناسب بودن برای یک هدف خاص. برای جزئیات بیشتر به «مجوز عمومی همگانی گنو» مراجعه کنید. .PP شما باید همراه با این برنامه یک نسخه از «مجوز عمومی همگانی گنو» را دریافت کرده باشید؛ در غیر این صورت، به آدرس زیر مکاتبه کنید: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110\-1301 USA. .SH "گزارش اشکالات (BUGS)" .IX Header "BUGS" برای دریافت فهرست اشکالات مربوط به libguestfs، از پیوند زیر استفاده کنید: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools .PP برای گزارش یک اشکال جدید در libguestfs، از پیوند زیر استفاده کنید: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools .PP هنگام گزارش اشکال، لطفاً موارد زیر را ارائه دهید: .IP \(bu 4 نسخه libguestfs. .IP \(bu 4 محل تهیه libguestfs (مانند اینکه کدام توزیع لینوکس، کامپایل از سورس و غیره). .IP \(bu 4 توصیف دقیق اشکال و ارائه راهی برای بازتولید آن. .IP \(bu 4 اجرای \fBlibguestfs\-test\-tool\fR\|(1) و الصاق خروجی \fBکامل و ویرایش‌نشده\fR در گزارش اشکال.