.\" Man page generated from reStructuredText .\" by the Docutils 0.23 manpage writer. . . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .TH "bpftool-feature" "8" "" "" .SH "نام (NAME)" bpftool-feature \- بررسی و وارسی قابلیت‌های پشتیبانی‌شده BPF در هسته .SH "خلاصه دستور (SYNOPSIS)" .sp \fBbpftool\fP [\fIOPTIONS\fP] \fBfeature\fP \fICOMMAND\fP .sp \fIOPTIONS\fP := { { \fB\-j\fP | \fB\-\-json\fP } [{ \fB\-p\fP | \fB\-\-pretty\fP }] | { \fB\-d\fP | \fB\-\-debug\fP } } .sp \fICOMMANDS\fP := { \fBprobe\fP | \fBhelp\fP } .SH "دستورات (COMMANDS)" .nf \fBbpftool\fP \fBfeature probe\fP [\fICOMPONENT\fP] [\fBfull\fP] [\fBunprivileged\fP] [\fBmacros\fP [\fBprefix\fP \fIPREFIX\fP]] \fBbpftool\fP \fBfeature list_builtins\fP \fIGROUP\fP \fBbpftool\fP \fBfeature help\fP \fICOMPONENT\fP := { \fBkernel\fP | \fBdev\fP \fINAME\fP } \fIGROUP\fP := { \fBprog_types\fP | \fBmap_types\fP | \fBattach_types\fP | \fBlink_types\fP | \fBhelpers\fP } .fi .sp .SH "توضیحات (DESCRIPTION)" .INDENT 0.0 .TP .B bpftool feature probe [kernel] [full] [macros [prefix \fIPREFIX\fP]] هسته در حال اجرا را بررسی و کاوش کرده و تعدادی از پارامترهای مرتبط با eBPF مانند در دسترس بودن فراخوانی سیستمی \fBbpf\fP()، وضعیت JIT، دسترسی‌پذیری انواع برنامه‌های eBPF، دسترسی‌پذیری توابع کمکی eBPF و موارد دیگر را تخلیه (dump) می‌کند. .sp به‌طور پیش‌فرض، bpftool \fBکاوش‌ها را اجرا نمی‌کند\fP برای توابع کمکی \fBbpf_probe_write_user\fP() و \fBbpf_trace_printk\fP() که هشدارهایی را در لاگ‌های هسته چاپ می‌کنند. برای فعال‌سازی آن‌ها و اجرای تمام کاوش‌ها، باید از کلمه کلیدی \fBfull\fP استفاده شود. .sp اگر کلمه کلیدی \fBmacros\fP (اما نه گزینه \fB\-j\fP) ارسال شود، زیرمجموعه‌ای از خروجی به عنوان فهرستی از ماکروهای \fB#define\fP تخلیه می‌شود که برای مثال آماده گنجانده شدن در یک پرونده سرآیند C هستند. علاوه بر این، اگر از \fBprefix\fP برای تعریف یک \fIPREFIX\fP استفاده شود، رشته ارائه‌شده به عنوان پیشوند نام‌های ماکروها استفاده خواهد شد: این می‌تواند برای جلوگیری از تداخل نام ماکروها هنگام گنجاندن خروجی این دستور به عنوان پرونده سرآیند استفاده شود. .sp کلمه کلیدی \fBkernel\fP می‌تواند حذف شود. اگر هیچ هدفی برای کاوش مشخص نشده باشد، کاوش هسته رفتار پیش‌فرض است. .sp هنگامی که از کلمه کلیدی \fBunprivileged\fP استفاده می‌شود، bpftool تنها قابلیت‌های در دسترس کاربری را تخلیه می‌کند که قابلیت (capability) \fBCAP_SYS_ADMIN\fP را تنظیم نکرده باشد. قابلیت‌های در دسترس در آن حالت معمولاً نشان‌دهنده زیرمجموعه کوچکی از پارامترهای پشتیبانی‌شده توسط سیستم هستند. کاربران غیر ممتاز (unprivileged) حتماً باید از کلمه کلیدی \fBunprivileged\fP استفاده کنند: این کار برای جلوگیری از تشخیص نادرست در صورتی است که bpftool به عنوان مثال ناخواسته به عنوان غیر ریشه (non-root) اجرا شود. اگر bpftool بدون libcap کامپایل شده باشد، این کلمه کلیدی در دسترس نیست. .TP .B bpftool feature probe dev \fINAME\fP [full] [macros [prefix \fIPREFIX\fP]] افزاره شبکه را برای قابلیت‌های پشتیبانی‌شده eBPF بررسی و کاوش کرده و نتایج را در کنسول تخلیه می‌کند. .sp کلمات کلیدی \fBfull\fP، \fBmacros\fP و \fBprefix\fP نقشی مشابه با زمان کاوش هسته دارند. .TP .B bpftool feature list_builtins \fIGROUP\fP مواردی را که برای bpftool شناخته شده‌اند فهرست می‌کند. این موارد می‌توانند انواع برنامه BPF (\fBprog_types\fP)، انواع نقشه BPF (\fBmap_types\fP)، انواع الصاق (\fBattach_types\fP)، انواع پیوند (\fBlink_types\fP)، یا توابع کمکی BPF (\fBhelpers\fP) باشند. این دستور سیستم را کاوش نمی‌کند، بلکه صرفاً عناصری را که bpftool از زمان کامپایل می‌شناسد (همان‌طور که از طریق libbpf برای همه انواع شیءها یا از سرآیند BPF UAPI برای فهرست توابع کمکی ارائه شده است) فهرست می‌کند. این مورد می‌تواند در اسکریپت‌ها برای پیمایش روی انواع BPF یا توابع کمکی استفاده شود. .TP .B bpftool feature help چاپ پیام راهنمای کوتاه. .UNINDENT .SH "گزینه‌ها (OPTIONS)" .INDENT 0.0 .TP .B \-h\fP,\fB \-\-help چاپ پیام راهنمای کوتاه (مشابه \fBbpftool help\fP). .TP .B \-V\fP,\fB \-\-version چاپ شماره نسخه bpftool (مشابه \fBbpftool version\fP)، شماره نسخه libbpf در حال استفاده، و ویژگی‌های اختیاری که هنگام کامپایل bpftool گنجانده شده‌اند. ویژگی‌های اختیاری شامل پیوند با LLVM یا libbfd برای ارائه دیزاسمبلر برای برنامه‌های JIT شده (\fBbpftool prog dump jited\fP) و استفاده از اسکلت‌های BPF (برخی ویژگی‌ها مانند \fBbpftool prog profile\fP یا نمایش pidهای مرتبط با شیءهای BPF ممکن است به آن متکی باشند) می‌شود. .TP .B \-j\fP,\fB \-\-json تولید خروجی JSON. برای دستوراتی که نمی‌توانند JSON تولید کنند، این گزینه هیچ تأثیری ندارد. .TP .B \-p\fP,\fB \-\-pretty تولید خروجی JSON خوانا برای انسان. مستلزم \fB\-j\fP است. .TP .B \-d\fP,\fB \-\-debug چاپ تمام لاگ‌های موجود، حتی اطلاعات سطح اشکال‌زدایی (debug-level). این شامل لاگ‌های libbpf و همچنین وارسی‌کننده (verifier) هنگام تلاش برای بارگذاری برنامه‌ها می‌شود. .UNINDENT .SH "همچنین ببینید (SEE ALSO)" .sp \fBbpf\fP(2), \fBbpf\-helpers\fP(7), \fBbpftool\fP(8), \fBbpftool\-btf\fP(8), \fBbpftool\-cgroup\fP(8), \fBbpftool\-gen\fP(8), \fBbpftool\-iter\fP(8), \fBbpftool\-link\fP(8), \fBbpftool\-map\fP(8), \fBbpftool\-net\fP(8), \fBbpftool\-perf\fP(8), \fBbpftool\-prog\fP(8), \fBbpftool\-struct_ops\fP(8), \fBbpftool\-token\fP(8) .\" End of generated man page.