DBUS-MONITOR(1) دستورهای کاربری DBUS-MONITOR(1)

dbus-monitor - مانیتورینگ و رصد پیامهای گذرگاه D-Bus

dbus-monitor [--system | --session | --address آدرس] [--profile | --monitor | --pcap | --binary] [الگوی_تطبیق...]

دستور dbus-monitor پیامهای عبوری از گذرگاه پیام D-Bus را دریافت کرده و در خروجی استاندارد نمایش میدهد. برای اطلاعات بیشتر و دید کلی پیرامون پروژه به نشانی زیر مراجعه فرمایید:

<https://www.freedesktop.org/wiki/Software/dbus>

دو گذرگاه پیام شناخته‌شده وجود دارند: گذرگاه پیام سراسری کل سیستم (که در بسیاری از سیستم‌ها در قالب سرویس «messagebus» نصب و اجرا می‌شود) و گذرگاه پیام ویژهٔ نشست ورود هر کاربر (که با هر بار ورود کاربر به محیط سیستم آغاز به کار می‌کند). گزینه‌های --system و --session به دستور dbus-monitor اعلام می‌کنند که به ترتیب گذرگاه سیستم یا نشست را پایش کند. در صورتی که هیچ‌یک مشخص نشوند، dbus-monitor به‌طور پیش‌فرض گذرگاه نشست را رصد خواهد کرد.

دستور dbus-monitor دارای دو حالت خروجی متنی متمایز است: حالت پایش سبک «کلاسیک» (classic)، و حالت پروفایل‌سازی (profiling). فرمت پروفایل‌سازی قالبی فشرده و تک‌خطی برای هر پیام به همراه اطلاعات زمانی با دقت میکروثانیه ارائه می‌دهد. گزینه‌های --profile و --monitor به ترتیب این دو شیوه خروجی را فعال می‌کنند.

همچنین dbus-monitor دارای دو حالت خروجی باینری (دودویی) است: حالت باینری که با سوییچ --binary انتخاب می‌شود، کل جریان خام پیام‌های باینری را (بدون دست‌تکانی اولیه احراز هویت) در خروجی می‌ریزد. حالت PCAP که با سوییچ --pcap انتخاب می‌شود، یک هدر فایل PCAP به ابتدای جریان خروجی و یک هدر بستهٔ PCAP به ابتدای هر پیام الصاق می‌کند؛ با هدایت این خروجی به یک فایل، پرونده‌ای تولید می‌شود که مستقیماً در نرم‌افزارهای تحلیل شبکه نظیر Wireshark قابل بارگذاری و بررسی است.

اگر هیچ حالتی تعیین نشود، dbus-monitor از قالب مانیتورینگ متنی استفاده می‌نماید.

به منظور هدایت dbus-monitor برای دریافت و نمایش پیام‌های مورد نظر شما، می‌توانید مجموعه‌ای از «عبارت‌های نظارت» یا الگوهای تطبیق (watch expressions / match rules) را مشابه آنچه به تابع dbus_bus_add_match ارسال می‌شود، در آرگومان‌های خط فرمان وارد کنید.

پیکربندی امنیتی گذرگاه پیام ممکن است مانع از دسترسی و مشاهده تمامی پیام‌ها توسط dbus-monitor گردد، به‌ویژه در حالتی که دستور را به عنوان کاربر عادی (غیر ریشه / non-root) اجرا می‌کنید.

--system

پایش و نظارت بر گذرگاه پیام سراسری سیستم.

--session

پایش و نظارت بر گذرگاه پیام نشست کاربری جاری. (حالت پیش‌فرض)

--address آدرس

پایش یک گذرگاه پیام دلخواه که نشانی آن در آرگومان آدرس مشخص شده است.

--profile

استفاده از قالب خروجی پروفایل‌سازی (تک‌خطی و فشرده با مهر زمانی دقیق بر حسب میکروثانیه).

--monitor

استفاده از قالب خروجی مانیتورینگ استاندارد و با جزئیات کامل متنی. (حالت پیش‌فرض)

--pcap

تولید خروجی در قالب فایل ضبط بستهٔ PCAP به همراه هدرهای مربوطه به منظور تجزیه و تحلیل در ابزارهایی مانند Wireshark.

--binary

ارسال مستقیم کل جریان باینری و بدون ساختار پیام‌ها به خروجی (بدون اعمال دست‌تکانی اولیه ارتباط).

الگوهای تطبیق (فیلترها) به شما اجازه می‌دهند تنها پیام‌های خاصی را شنود کنید. یک الگوی تطبیق از یک رشته حاوی کلیدها و مقادیر تشکیل شده که با کاما از یکدیگر جدا می‌شوند. کلیدهای معتبر عبارتند از:

نوع پیام عبوری، مانند signal (سیگنال)، method_call (فراخوانی متد)، method_return (پاسخ متد) یا error (خطا).
نام سرویس یا نشانی فرستنده پیام در گذرگاه (مانند org.freedesktop.DBus یا نام منحصر‌به‌فرد مانند :1.42).
نام رابط یا واسط کاربری هدف پیام (مانند org.gnome.TypingMonitor).
نام متد یا نام سیگنال ارسالی.
مسیر شیء D-Bus که پیام به آن تعلق دارد (مانند /org/freedesktop/DBus).
تطبیق تمامی اشیایی که مسیر آن‌ها با پیشوند مشخص‌شده آغاز می‌شود.
نام سرویس یا شناسه منحصر‌به‌فرد دریافت‌کننده پیام.
تطبیق آرگومان‌های ابتدایی موجود در بدنه پیام با مقدار مشخص‌شده.

در اینجا مثالی از شنود اعلان‌ها و سیگنال‌های مانیتور تایپ گنوم آورده شده است:

dbus-monitor "type='signal',sender='org.gnome.TypingMonitor',interface='org.gnome.TypingMonitor'"

پایش فراخوانی‌های متد در گذرگاه سیستم:

dbus-monitor --system "type='method_call'"

ذخیره پیام‌های گذرگاه سیستم در قالب فایل PCAP جهت باز کردن در Wireshark:

dbus-monitor --system --pcap > dbus_capture.pcap

دستور dbus-monitor توسط Philip Blundell نوشته شده است. حالت خروجی پروفایل‌سازی نیز توسط Olli Salli اضافه گردید.

لطفاً گزارش‌های اشکال و باگ‌ها را به فهرست پستی D-Bus یا سامانه پیگیری اشکالات ارسال کنید:

<https://www.freedesktop.org/wiki/Software/dbus>

dbus-daemon(1), dbus-send(1)

سپتامبر ۲۰۲۲ D-Bus