- trixie-backports 4.31.0-1~bpo13+1
- testing 4.31.0-1
- unstable 4.31.0-1
| VARLINKCTL(1) | varlinkctl | VARLINKCTL(1) |
الاسم¶
varlinkctl - استكشف واستدعِ خدمات Varlink
موجز¶
varlinkctl [خيارات...] معلومات العنوان
varlinkctl [خيارات...] قائمة-الواجهات العنوان
varlinkctl [خيارات...] قائمة-الطرق العنوان [الواجهة...]
varlinkctl [خيارات...] استكشف العنوان [الواجهة...]
varlinkctl [خيارات...] استدعِ العنوان الطريقة [الوسائط]
varlinkctl [خيارات...] تحقق-من-idl [الملف]
الوصف¶
يمكن استخدام varlinkctl لاستكشاف واستدعاء خدمات Varlink[1].
يتم الإشارة إلى الخدمات بواحد مما يلي:
للتسهيل، يتم دعم هاتين الصيغتين الأبسط (المكررة) لعنوان الخدمة أيضًا:
الأوامر¶
الأوامر التالية مفهومة:
info العنوان
أُضيف في الإصدار 255.
list-interfaces العنوان
أُضيف في الإصدار 255.
list-methods ADDRESS [INTERFACE...]
أُضيف في الإصدار 257.
introspect ADDRESS [INTERFACE...]
أُضيف في الإصدار 255.
call ADDRESS METHOD [ARGUMENTS]
تُكتب معاملات الرد ككائن JSON إلى STDOUT.
أُضيف في الإصدار 255.
validate-idl [FILE]
أُضيف في الإصدار 255.
help
أُضيف في الإصدار 255.
الخيارات¶
الخيارات التالية مفهومة:
--more
إذا فعّل هذا الوضع، يُحوّل الإخراج آليًا إلى وضع JSON-SEQ، بحيث يمكن تمييز كائنات الرد الفردية بسهولة.
لا يؤثر هذا المفتاح على مهلة استدعاء الأسلوب المطبقة مبدئيًا: بغض النظر عما إذا كان --more محددًا أم لا، ستكون المهلة المبدئية 45 ثانية. استخدم --timeout= (انظر أدناه) لتغيير المهلة أو تعطيلها. عند استدعاء استدعاء أسلوب يعيد التحديثات باستمرار، يكون من المرغوب عادةً تعطيل المهلة باستخدام --timeout=infinity. من ناحية أخرى، عند استدعاء استدعاء أسلوب --more لغرض تعداد الكائنات (والذي من المحتمل أن يكتمل بسرعة)، يكون من المفيد عادةً ترك منطق المهلة مفعلاً، لأسباب تتعلق بالمتانة.
أُضيف في الإصدار 255.
-E
أُضيف في الإصدار 257.
--collect
أُضيف في الإصدار 256.
--oneway
أُضيف في الإصدار 255.
--json=وضع
أُضيف في الإصدار 255.
-j
أُضيف في الإصدار 255.
--quiet، -q
أُضيف في الإصدار 257.
--graceful=
أُضيف في الإصدار 257.
--timeout=
أُضيف في الإصدار 257.
--no-pager
-h، --help
--version
أمثلة¶
مثال 1. التحقيق في خدمة
تفحص الأوامر الثلاثة التالية خدمة "io.systemd.Resolve" المنفذة بواسطة systemd-resolved.service(8)، وتسرد معلومات الخدمة العامة والواجهات المنفذة، ثم تعرض تعريف الواجهة للواجهة الرئيسية الخاصة بها:
$ varlinkctl info /run/systemd/resolve/io.systemd.Resolve
Vendor: The systemd Project
Product: systemd (systemd-resolved)
Version: 254 (254-1522-g4790521^)
URL: https://systemd.io/ Interfaces: io.systemd
io.systemd.Resolve
org.varlink.service $ varlinkctl list-interfaces /run/systemd/resolve/io.systemd.Resolve io.systemd io.systemd.Resolve org.varlink.service $ varlinkctl introspect /run/systemd/resolve/io.systemd.Resolve io.systemd.Resolve interface io.systemd.Resolve type ResolvedAddress(
ifindex: ?int,
...
(تم اقتطاع تعريف الواجهة في المثال أعلاه، من أجل الإيجاز.)
مثال 2. استدعاء طريقة
الأمر التالي يحل اسم مضيف عبر استدعاء الأسلوب ResolveHostname الخاص بـ systemd-resolved.service(8).
$ varlinkctl call /run/systemd/resolve/io.systemd.Resolve io.systemd.Resolve.ResolveHostname '{"name":"systemd.io","family":2}' -j
{
"addresses" : [
{
"ifindex" : 2,
"family" : 2,
"address" : [
185,
199,
111,
153
]
}
],
"name" : "systemd.io",
"flags" : 1048577
}
مثال 3. التحقيق في ملف تنفيذي لخدمة
الأمر التالي يفحص الملف التنفيذي /usr/lib/systemd/systemd-pcrextend وواجهات برمجة التطبيقات IPC التي يوفرها. ثم يستدعي أسلوبًا عليه:
# varlinkctl info /usr/lib/systemd/systemd-pcrextend
Vendor: The systemd Project
Product: systemd (systemd-pcrextend)
Version: 254 (254-1536-g97734fb)
URL: https://systemd.io/ Interfaces: io.systemd
io.systemd.PCRExtend
org.varlink.service # varlinkctl introspect /usr/lib/systemd/systemd-pcrextend io.systemd.PCRExtend interface io.systemd.PCRExtend method Extend(
pcr: int,
text: ?string,
data: ?string ) -> () # varlinkctl call /usr/lib/systemd/systemd-pcrextend io.systemd.PCRExtend.Extend '{"pcr":15,"text":"foobar"}' {}
مثال 4. استدعاء أسلوب عن بُعد عبر SSH
الأمر التالي يحصل على تقرير حول هوية مضيف بعيد "somehost" من systemd-hostnamed.service(8) عبر الاتصال عبر SSH بمقبس AF_UNIX الذي تستمع عليه الخدمة:
# varlinkctl call ssh-unix:somehost:/run/systemd/io.systemd.Hostname io.systemd.Hostname.Describe '{}'
لاستدعاء ملف ثنائي لخدمة Varlink مباشرة على المضيف البعيد، بدلاً من التحدث إلى خدمة عبر AF_UNIX، يمكن القيام بذلك كالتالي:
# varlinkctl call ssh-exec:somehost:/usr/bin/systemd-creds org.varlink.service.GetInfo '{}'
انظر أيضًا¶
busctl(1), Varlink[1]
ملاحظات¶
- 1.
- Varlink
ترجمة¶
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>
هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.
إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.
| systemd 257.13 |