xinit - مُهيئ نظام نافذة X
ملخص
xinit [ [ العميل ] الخيارات ... ] [ -- [ الخادم ] [ العرض ] الخيارات ... ]
الوصف
يُستخدم برنامج xinit لبدء خادم نظام نافذة X وبرنامج عميل أول على الأنظمة التي لا تستخدم مدير عرض مثل xdm(1) أو في البيئات التي تستخدم أنظمة نوافذ متعددة. عندما يخرج هذا العميل الأول، سيقوم xinit بقتل خادم X ثم إنهاء البرنامج.
إذا لم يتم تحديد برنامج عميل معين في سطر الأوامر، فسيقوم xinit بالبحث عن ملف في دليل المستخدم الرئيسي يسمى .xinitrc لتشغيله كبرنامج نصي للبدء ببرامج العميل. إذا لم يكن هناك مثل هذا الملف، فسيستخدم xinit ما يلي كإعداد افتراضي:
xterm -geometry +1+1 -n login -display :0
إذا لم يتم تحديد برنامج خادم معين في سطر الأوامر، فسيقوم xinit بالبحث عن ملف في دليل المستخدم الرئيسي يسمى .xserverrc لتشغيله كبرنامج نصي لبدء تشغيل الخادم. إذا لم يكن هناك مثل هذا الملف، فسيستخدم xinit ما يلي كإعداد افتراضي:
X :0
لاحظ أن هذا يفترض وجود برنامج يسمى X في مسار البحث الحالي. لذلك، يجب على مسؤول الموقع إنشاء ارتباط للنوع المناسب من الخوادم على الجهاز، أو إنشاء برنامج نصي يقوم بتشغيل xinit مع الخادم المناسب.
لاحظ، عند استخدام برنامج نصي .xserverrc، تأكد من استخدام الأمر ``exec`` للخادم X الفعلي. قد يؤدي عدم القيام بذلك إلى إبطاء بدء الخادم X وإنهائه. على سبيل المثال:
exec Xdisplaytype
النقطة المهمة هي أن البرامج التي يتم تشغيلها بواسطة .xinitrc يجب تشغيلها في الخلفية إذا لم تخرج على الفور، حتى لا تمنع بدء تشغيل البرامج الأخرى. ومع ذلك، يجب ترك البرنامج الأخير الذي يعمل لفترة طويلة (عادةً مدير النوافذ أو محاكي الطرفية) في المقدمة حتى لا يخرج البرنامج النصي (مما يشير إلى أن المستخدم قد انتهى ويجب إنهاء xinit).
يمكن تحديد عميل و/أو خادم بديل في سطر الأوامر. يجب إعطاء اسم برنامج العميل وأوامره كأول وسائط لسطر الأوامر إلى xinit. لتحديد سطر أوامر خادم معين، قم بإلحاق شرطتين (--) في سطر أوامر xinit (بعد أي عميل وأوامر) متبوعًا بأمر الخادم المطلوب.
يجب أن يبدأ كل من اسم برنامج العميل واسم برنامج الخادم بشرطة مائلة (/) أو نقطة (.). وإلا، فسيتم التعامل معها كوسائط لإلحاقها بأسطر البدء الخاصة بها. وهذا يجعل من الممكن إضافة وسائط (على سبيل المثال، ألوان المقدمة والخلفية) دون الحاجة إلى إعادة كتابة سطر الأوامر بأكمله.
إذا لم يتم تحديد اسم خادم صريح، وكان الوسيط الأول بعد الشرطتين (--)، عبارة عن نقطتين متبوعتين برقم، فسيستخدم xinit هذا الرقم كـ "رقم العرض" بدلاً من الصفر. يتم إلحاق جميع الوسائط المتبقية بسطر أوامر الخادم.
أمثلة
فيما يلي بعض الأمثلة حول كيفية استخدام وسائط سطر الأوامر في xinit.
xinit سيبدأ هذا خادمًا باسم X ويقوم بتشغيل ملف .xinitrc الخاص بالمستخدم، إذا كان موجودًا، وإلا فإنه سيبدأ xterm.
xinit -- /usr/bin/Xvnc :1
هذه هي الطريقة التي يمكن بها بدء نوع معين من الخوادم على عرض بديل.
xinit -geometry =80x65+10+10 -fn 8x13 -j -fg white -bg navy
سيبدأ هذا خادمًا باسم X، وسيقوم بإلحاق الوسائط المعطاة بأوامر xterm الافتراضية. سيتجاهل .xinitrc.
xinit -e widgets -- ./Xorg -l -c
سيستخدم هذا الأمر ./Xorg -l -c لبدء الخادم وسيقوم بإلحاق الوسائط -e widgets بأوامر xterm الافتراضية.
xinit /usr/bin/ssh -X fasthost cpupig -- :1 -a 2 -t 5
سيبدأ هذا خادمًا باسم X على العرض 1 بالوسائط -a 2 -t 5. ثم سيبدأ shell بعيدًا على جهاز fasthost، حيث سيقوم بتشغيل الأمر cpupig، لإعراض النتائج على محطة العمل المحلية.
فيما يلي نموذج لملف .xinitrc الذي يبدأ ساعة، وعدة أطراف، ويترك مدير النوافذ قيد التشغيل باعتباره "التطبيق الأخير". بافتراض أن مدير النوافذ قد تم تكوينه بشكل صحيح، يختار المستخدم بعد ذلك "الخروج" من القائمة لإيقاف تشغيل X.
xrdb -load $HOME/.Xresources
xsetroot -solid gray &
xclock -g 50x50-0+0 -bw 0 &
xload -g 50x50-50+0 -bw 0 &
xterm -g 80x24+0+0 &
xterm -g 80x24+0-0 &
twm
يمكن للمواقع التي ترغب في إنشاء بيئة بدء مشتركة ببساطة إنشاء ملف .xinitrc افتراضي يشير إلى ملف بدء موقع واسع النطاق:
#!/bin/sh
. /etc/X11/xinit/site.xinitrc
نهج آخر هو كتابة برنامج نصي يبدأ xinit باستخدام برنامج نصي shell محدد. عادة ما تسمى هذه البرامج النصية x11 أو xstart أو startx، وهي طريقة مريحة لتوفير واجهة بسيطة للمستخدمين المبتدئين:
#!/bin/sh
xinit /etc/X11/xinit/site.xinitrc -- /usr/bin/X -br
متغيرات البيئة
DISPLAY هذا المتغير يتم تعيينه على اسم العرض الذي يجب أن تتصل به العملاء.
XINITRC يحدد هذا المتغير ملف بدء يحتوي على أوامر shell لبدء تشغيل النوافذ الأولية. افتراضيًا، سيتم استخدام ملف .xinitrc في الدليل الرئيسي.
الملفات
.xinitrc برنامج نصي افتراضي للعميل
xterm عميل للتشغيل إذا لم يكن ملف .xinitrc موجودًا
.xserverrc برنامج نصي افتراضي للخادم
X خادم للتشغيل إذا لم يكن ملف .xserverrc موجودًا
انظر أيضًا
X(7)، startx(1)، Xserver(1)، Xorg(1)، xorg.conf(5)، xterm(1)
المؤلف
بوب شيفر، مختبر MIT لعلم الحاسوب