NVME-ID-CTRL(1) راهنمای NVMe NVME-ID-CTRL(1) نام (NAME) nvme-id-ctrl - ارسال دستور شناسایی کنترلر NVMe و بازگرداندن نتیجه و ساختار خلاصه دستور (SYNOPSIS) nvme id-ctrl [--vendor-specific | -V] [--raw-binary | -b] [--output-format= | -o ] [--verbose | -v] توضیحات (DESCRIPTION) برای دستگاه NVMe داده‌شده، یک دستور شناسایی کنترلر (identify controller) ارسال می‌کند و نتیجه و ساختار بازگردانده‌شده را ارائه می‌دهد. پارامتر الزامی است و می‌تواند دستگاه کاراکتری NVMe (مانند: /dev/nvme0) یا یک دستگاه بلوکی فضای‌نام (مانند: /dev/nvme0n1) باشد. در صورت موفقیت، بسته به فلگ‌های گزینه، ساختار ممکن است به یکی از چندین روش بازگردانده شود؛ ساختار می‌تواند توسط برنامه تجزیه شود یا بافر خام در stdout چاپ شود. گزینه‌ها (OPTIONS) -b, --raw-binary چاپ بافر خام در خروجی استاندارد (stdout). ساختار توسط برنامه تجزیه نمی‌شود. این گزینه بر گزینه‌های vendor specific و human readable تقدم دارد و آن‌ها را لغو می‌کند. -V, --vendor-specific علاوه بر تجزیه فیلدهای شناخته‌شده، این گزینه بخش اختصاصی سازنده (vendor specific) ساختار را به صورت هگزادسیمال همراه با تفسیر اسکی دامپ می‌کند. -H, --human-readable این گزینه بسیاری از فیلدهای بیتی را تجزیه کرده و در قالب‌های خوانا برای انسان قالب‌بندی می‌کند. -o , --output-format= تنظیم قالب گزارش به normal، json یا binary. در هر زمان تنها یک قالب خروجی قابل استفاده است. -v, --verbose افزایش جزئیات اطلاعات در خروجی. مثال‌ها (EXAMPLES) • تفسیر بافر بازگردانده‌شده توسط برنامه و نمایش فیلدهای شناخته‌شده در قالبی خوانا برای انسان: # nvme id-ctrl /dev/nvme0 • علاوه بر نمایش فیلدهای شناخته‌شده، برنامه فیلد منحصربه‌فرد سازنده را نیز نمایش دهد: # nvme id-ctrl /dev/nvme0 --vendor-specific # nvme id-ctrl /dev/nvme0 -V دستور فوق بافر vs را به صورت هگزادسیمال دامپ می‌کند، زیرا نحوه تفسیر آن را نمی‌داند. • بازگرداندن ساختار خام به صورت دودویی (binary) توسط برنامه: # nvme id-ctrl /dev/nvme0 --raw-binary > id_ctrl.raw # nvme id-ctrl /dev/nvme0 -b > id_ctrl.raw عدم تغییر مسیر خروجی استاندارد (stdout) هنگام استفاده از این حالت احتمالاً ایده خوبی نیست. • همچنین ممکن است بخواهید داده‌ها را به برنامه دیگری ارسال کنید که بتواند بافر خام را تجزیه کند. # nvme id-ctrl /dev/nvme0 --raw-binary | nvme_parse_id_ctrl برنامه تجزیه‌کننده در مثال بالا می‌تواند برنامه‌ای باشد که ساختار را به شیوه دلخواه شما نشان دهد. برنامه زیر نمونه‌ای از این دست است که آن را تجزیه می‌کند و می‌تواند خروجی را از طریق لوله (pipe)، '|'، همان‌طور که در مثال بالا نشان داده شده دریافت کند، یا می‌توانید با 'cat' یک بافر خروجی ذخیره‌شده را به آن هدایت کنید. /* File: nvme_parse_id_ctrl.c */ #include #include #include int main(int argc, char **argv) { unsigned char buf[sizeof(struct nvme_id_ctrl)]; struct nvme_id_ctrl *ctrl = (struct nvme_id_ctrl *)buf; if (read(STDIN_FILENO, buf, sizeof(buf))) return 1; printf("vid : %#x\n", ctrl->vid); printf("ssvid : %#x\n", ctrl->ssvid); return 0; } NVME بخشی از مجموعه nvme-user همچنین ببینید (SEE ALSO) nvme(1) NVMe 02/16/2026 NVME-ID-CTRL(1)