'\" t .\" Title: nvme-admin-passthru .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 02/16/2026 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: Persian .\" .TH "NVME\-ADMIN\-PASSTHR" "1" "02/16/2026" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" nvme\-admin\-passthru \- ارسال مستقیم دستور مدیریت NVMe به دستگاه .SH "خلاصه دستور (SYNOPSIS)" .sp .nf \fInvme\-admin\-passthru\fR [\-\-opcode= | \-O ] [\-\-flags= | \-f ] [\-rsvd= | \-R ] [\-\-namespace\-id= | \-n ] [\-\-cdw2= | \-2 ] [\-\-cdw3= | \-3 ] [\-\-cdw10= | \-4 ] [\-\-cdw11= | \-5 ] [\-\-cdw12= | \-6 ] [\-\-cdw13= | \-7 ] [\-\-cdw14= | \-8 ] [\-\-cdw15= | \-9 ] [\-\-data\-len= | \-l ] [\-\-metadata\-len= | \-m ] [\-\-input\-file= | \-i ] [\-\-read | \-r] [\-\-write | \-w] [\-\-timeout= | \-t ] [\-\-show\-command | \-s] [\-\-dry\-run | \-d] [\-\-raw\-binary | \-b] [\-\-prefill= | \-p ] [\-\-latency | \-T] [\-\-output\-format= | \-o ] [\-\-verbose | \-v] .fi .SH "توضیحات (DESCRIPTION)" .sp یک دستور دلخواه مدیریت NVMe را ارسال کرده و نتایج مربوطه را بازمی‌گرداند\&. این خروجی ممکن است صرفاً نتیجه و وضعیت دستور باشد، یا در صورتی که دستور بافری را برگرداند شامل بافر نیز باشد\&. این دستور هیچ‌گونه تفسیری روی کدهای عملیاتی (opcodes) یا گزینه‌ها انجام نمی‌دهد\&. .sp پارامتر اجباری است و می‌تواند یک دستگاه کاراکتری NVMe (مانند /dev/nvme0) یا یک دستگاه بلوکی فضای نام (مانند /dev/nvme0n1) باشد\&. .sp در صورت موفقیت، ساختار بازگردانده‌شده (در صورت وجود) بسته به فلگ‌های گزینه ممکن است به یکی از چندین روش بازگردانده شود؛ ساختار ممکن است توسط برنامه به‌صورت یک دامپ هگزادسیمال (hex dump) چاپ شود، یا ممکن است به‌صورت یک بافر خام برای تجزیه توسط برنامه‌ای دیگر به stdout ارسال گردد\&. .SH "گزینه‌ها (OPTIONS)" .PP \-O , \-\-opcode= .RS 4 کد عملیاتی (opcode) مربوط به NVMe جهت ارسال به دستگاه در دستور\&. از آنجا که این پارامتر اجباری است، ارائهٔ آرگومان الزامی می‌باشد\&. .RE .PP \-f , \-\-flags= .RS 4 فلگ‌های دستور NVMe جهت ارسال به دستگاه در دستور\&. .RE .PP \-R , \-\-rsvd= .RS 4 مقدار فیلد رزروشده (reserved) در دستور\&. .RE .PP \-n , \-\-namespace\-id= .RS 4 مقدار شناسهٔ فضای نام (ns\-id) در دستور\&. .RE .PP \-[2\-9] , \-\-cdw[2\-3,10\-15]= .RS 4 مقدار dword دستور را برای مدخل مشخص‌شده در دستور تعیین می‌کند\&. .RE .PP \-r, \-\-read, \-w, \-\-write .RS 4 برای جهت داده‌ها (data\-direction) در دستور استفاده می‌شود و برای دستوراتی که داده ارسال یا دریافت می‌کنند الزامی است\&. هرگز از هر دو گزینهٔ خواندن (read) و نوشتن (write) به‌طور هم‌زمان استفاده نکنید\&. .RE .PP \-i , \-\-input\-file= .RS 4 اگر دستور از نوع خروج داده (data\-out / نوشتن) باشد، از این فایل برای پر کردن بافر ارسالی به دستگاه استفاده می‌شود\&. در صورت عدم تعیین فایل، فرض می‌شود از STDIN استفاده می‌شود\&. .RE .PP \-l , \-\-data\-len= .RS 4 طول داده برای بافر مورد استفاده در این دستور\&. .RE .PP \-m , \-\-metadata\-len= .RS 4 طول متاداده برای بافر مورد استفاده در این دستور\&. .RE .PP \-s, \-\-show\-cmd .RS 4 دستوری را که قرار است ارسال شود، چاپ می‌کند\&. .RE .PP \-d, \-\-dry\-run .RS 4 دستور را در عمل ارسال نمی‌کند\&. در صورت تمایل به استفاده از گزینهٔ \-\-dry\-run، گزینهٔ \-\-show\-cmd \fIباید\fR تنظیم شده باشد؛ در غیر این صورت گزینهٔ \-\-dry\-run \fIنادیده گرفته خواهد شد\fR\&. .RE .PP \-b, \-\-raw\-binary .RS 4 در صورتی که دستور یک ساختار را برگرداند، بافر خام بازگردانده‌شده را در stdout چاپ می‌کند\&. .RE .PP \-p, \-\-prefill .RS 4 پر کردن اولیهٔ بافر با یک مقدار بایت از پیش تعیین‌شده\&. مقدار پیش‌فرض 0 است\&. این گزینه زمانی مفید است که داده‌های در حال نوشتن کوتاه‌تر از بافر مورد نیاز باشند و لازم باشد آن را با یک مقدار مشخص پر (pad) کنید\&. همچنین اگر نیاز داشته باشید بررسی کنید که آیا دستگاه در یک دستور ورود داده (data\-in) بافر را بازنویسی می‌کند یا خیر، کاربردی است\&. .RE .PP \-T, \-\-latency .RS 4 میزان تاخیر اجرای فراخوانی IOCTL را چاپ می‌کند (بر حسب میکروثانیه)\&. .RE .PP \-o , \-\-output\-format= .RS 4 تنظیم قالب گزارش‌دهی روی \fInormal\fR، \fIjson\fR یا \fIbinary\fR\&. در هر بار تنها یک قالب خروجی می‌تواند استفاده شود\&. .RE .PP \-v, \-\-verbose .RS 4 افزایش جزئیات اطلاعات در خروجی\&. .RE .PP \-t , \-\-timeout= .RS 4 بازنویسی مقدار مهلت زمانی پیش‌فرض\&. بر حسب میلی‌ثانیه\&. .RE .SH "مثال‌ها (EXAMPLES)" .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} دستور زیر یک دستور مدیریتی را با opcode=6 و cdw10=1 اجرا می‌کند که معادل با دستور شناسایی کنترلر (identify controller) است\&. این مثال نیازمند این است که پارامتر data\-len برابر با 4096 باشد که اندازهٔ ساختار بازگردانده‌شده است\&. گزینهٔ \-r به این دلیل استفاده شده است که این یک دستور ورود داده (data\-in) می‌باشد: .sp .if n \{\ .RS 4 .\} .nf # nvme admin\-passthru /dev/nvme0 \-\-opcode=06 \-\-data\-len=4096 \-\-cdw10=1 \-r .fi .if n \{\ .RE .\} .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} یا در صورتی که بخواهید آن ساختار را در یک فایل ذخیره کنید: .sp .if n \{\ .RS 4 .\} .nf # nvme admin\-passthru /dev/nvme0 \-\-opcode=06 \-\-data\-len=4096 \-\-cdw10=1 \-r \-b > id_ns\&.raw .fi .if n \{\ .RE .\} .RE .SH "NVME" .sp بخشی از مجموعهٔ nvme\-user