هذا هو الأمر gnuserv الذي يمكن تشغيله في موفر الاستضافة المجاني OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
gnuserv و gnuclient - خادم وعملاء لـ Emacs و XEmacs
موجز
العبقري [-عرض العرض] [-q] [-v] [-مكتبة l] [-دفعة] [وظيفة -f] [نموذج التقييم]
[-h hostname] [-p port] [-r remote-pathhname] [[+ line] file] ...
غنودويت [-Q] النموذج المرفق
جنوسيرف
غنواتاش تمت إزالته اعتبارًا من gnuserv 3.x.
الوصف
العبقري يسمح للمستخدم بطلب عملية Emacs أو XEmacs قيد التشغيل لتحرير الملف المسمى
الملفات أو الدلائل و/أو تقييم نماذج اللثغة. اعتمادا على البيئة الخاصة بك، يمكن أن يكون
إطار X أو إطار TTY. أحد الاستخدامات النموذجية لذلك هو الاتصال الهاتفي بشبكة
الجهاز الذي تعمل عليه حاليًا عملية Emacs أو XEmacs.
غنودويت عبارة عن واجهة أمامية لبرنامج نصي لـ "gnuclient -batch -eval form". استخدامه هو
إهمال. حاول التعود على استدعاء gnuclient مباشرة.
جنوسيرف هو برنامج الخادم الذي تم تشغيله بواسطة Emacs أو XEmacs للتعامل مع كل شيء
الطلبات الواردة والصادرة. لا يتم عادةً استدعاءه مباشرة، ولكن يبدأ منه
Emacs أو XEmacs عن طريق تحميل ملف جنوسيرف حزمة وتقييم نموذج Lisp (gnuserv-
يبدأ).
غنواتاش لم يعد موجودا.
OPTIONS
العبقري يدعم أكبر قدر ممكن من خيارات سطر الأوامر الخاصة بـ Emacs في هذا الأمر
سياق. بالإضافة إلى أنها تضيف القليل من تلقاء نفسها.
يمكن أيضًا تحديد الخيارات ذات الأسماء الطويلة باستخدام واصلة مزدوجة بدلاً من واصلة مفردة
.
-عرض عرض، --عرض عرض
إذا تم إعطاء هذا الخيار أو تم تعيين متغير البيئة "DISPLAY" بعد ذلك
سيطلب gnuclient من Emacs تحرير الملفات في إطار على جهاز X المحدد.
-q يعلم هذا الخيار العبقري للخروج بمجرد إجراء الاتصال مع
عملية XEmacs. عادة العبقري ينتظر حتى كافة الملفات الموجودة في الأمر
تم الانتهاء من الخط بـ (تم قتل المخازن المؤقتة الخاصة بهم) بواسطة عملية XEmacs ، وجميع
تم تقييم النماذج.
-v عندما يتم تحديد هذا الخيار العبقري سيطلب الملفات المحددة لتكون
تمت مشاهدتها بدلاً من تحريرها.
-l مكتبة
أخبر Emacs بتحميل المكتبة المحددة.
-حزمة أخبر Emacs بعدم فتح أي إطارات. ما عليك سوى تحميل المكتبات وتقييم كود lisp. لو
لا توجد ملفات للتنفيذ أو وظائف للاتصال أو نماذج للتقييم يتم تقديمها باستخدام -l,
-f أو - العصور خيارات ، ثم تتم قراءة النماذج المراد تقييمها من STDIN.
-f وظيفة،
اجعل إيماكس ينفذ وظيفة اللثغة.
- العصور النموذج المرفق
اجعل إيماكس ينفذ شكل اللثغة.
-h اسم المضيف
يستخدم هذا الخيار فقط مع مآخذ توصيل مجال الإنترنت، ويحدد الجهاز المضيف
التي يجب أن تعمل جنوسيرف. إذا لم يتم تحديد هذا الخيار ثم قيمة
يتم استخدام متغير البيئة GNU_HOST إذا تم تعيينه. إذا لم يتم تحديد اسم مضيف ، و
لم يتم تعيين المتغير GNU_HOST، ولن تتم محاولة الاتصال بالإنترنت.
NB: جنوسيرف لا يسمح باتصالات الإنترنت ما لم تكن مصادقة XAUTH
المستخدم أو تم تحديد متغير GNU_SECURE ويشير إلى قائمة الملفات
كل المضيفين الموثوق بهم. (انظر الأمان أدناه.)
لاحظ أنه قد يتم تحديد عنوان إنترنت بدلاً من اسم المضيف الذي يمكنه ذلك
تسريع الاتصالات بالخادم بنسبة لا بأس بها، خاصة إذا كان العميل
الجهاز يعمل على YP.
لاحظ أيضًا أن اسم مضيف يونيكس يمكن استخدامها لتحديد أن الاتصال
يجب أن يستخدم الخادم مقبس مجال Unix (إذا كان مدعومًا) بدلاً من الإنترنت-
مقبس المجال.
-p ميناء يستخدم هذا الخيار فقط مع مآخذ توصيل مجال الإنترنت، ويحدد منفذ الخدمة
يستخدم للتواصل بين الخادم والعملاء. إذا لم يتم تحديد هذا الخيار،
ثم يتم استخدام قيمة متغير البيئة GNU_PORT، إذا تم تعيينه، وإلا أ
يتم البحث عن خدمة تسمى "gnuserv" في قاعدة بيانات الخدمات. وأخيرا، إذا لا
يمكن العثور على قيمة أخرى للمنفذ، ثم يتم استخدام المنفذ الافتراضي وهو
عادة 21490 + uid.
لاحظ أنه منذ ذلك الحين جنوسيرف لا يسمح بخيارات سطر الأوامر ، فسيسمح المنفذ الخاص بذلك
يجب تحديدها بإحدى الطرق البديلة.
-r اسم المسار
يُستخدم فقط مع مآخذ توصيل مجال الإنترنت، وقد تكون هناك حاجة إلى وسيطة اسم المسار
أبلغ Emacs بكيفية الوصول إلى الدليل الجذر لجهاز بعيد. العبقري
يلحق هذه السلسلة بكل وسيطة مسار محددة. على سبيل المثال، إذا كنت تحاول
لتحرير ملف على جهاز عميل يسمى Otter، والذي كان دليله الجذري هو
يمكن الوصول إليه من جهاز الخادم عبر المسار /net/otter، ثم هذه الوسيطة
يجب ضبطه على "/net/otter". إذا تم حذف هذا الخيار، فسيتم أخذ القيمة
من متغير البيئة GNU_NODE ، إذا تم تعيينه ، أو السلسلة الفارغة بخلاف ذلك.
[+ ن] ملف
وهذا هو مسار الملف المراد تحريره. إذا كان الملف عبارة عن دليل، فإن
عادةً ما يتم استدعاء متصفحات الدليل dired أو Monkey بدلاً من ذلك. تم وضع المؤشر
في رقم السطر 'n' إذا تم تحديده.
SETUP
جنوسيرف يتم حزمه بشكل قياسي مع الإصدارات الحديثة من XEmacs. لذلك، يجب أن تكون
قادر على بدء تشغيل الخادم ببساطة عن طريق تقييم نموذج XEmacs Lisp (gnuserv-start)، أو
بالتساوي عن طريق كتابة "Mx gnuserv-start".
CONFIGURATION
يتم التحكم في سلوك مجموعة البرامج هذه في الغالب من جانب اللثغة في Emacs و
يمكن تخصيص سلوكه إلى حد كبير. اكتب `Mx تخصيص المجموعة RET gnuserv
RET 'لسهولة الوصول. يمكن العثور على مزيد من الوثائق في ملف "gnuserv.el"
مثال
gnuclient -q -f mh-smail
gnuclient -h الوقواق -r / ange @ otter: / تمة /*
gnuclient ../src/listproc.c
يتم توفير المزيد من الأمثلة ونماذج البرامج النصية المجمعة في الدليل etc/gnuserv الخاص بملف
تركيب ايماكس.
SYSV IPC
يتم استخدام SysV IPC للتواصل بين العبقري و جنوسيرف إذا كان الرمز SYSV_IPC هو
تم تعريفه في الجزء العلوي من gnuserv.h. وهذا غير متوافق مع كل من نطاق Unix وInternet-
اتصال مقبس المجال كما هو موضح أدناه. ملف يسمى / tmp / gsrv ؟؟؟ تم إنشاؤه كملف
مفتاح قائمة انتظار الرسائل، وإذا تمت إزالته فسوف يؤدي إلى الاتصال بين الخادم و
فشل العميل حتى يتم إعادة تشغيل الخادم.
نطاق UNIX مآخذ
يتم استخدام مقبس مجال Unix للتواصل بين العبقري و جنوسيرف إذا كان الرمز
يتم تعريف UNIX_DOMAIN_SOCKETS في الجزء العلوي من gnuserv.h. ملف يسمى
تم إنشاء /tmp/gsrvdir؟؟؟؟/gsrv للاتصال. إذا تم تعيين الرمز USE_TMPDIR على
يتم استخدام الجزء العلوي من gnuserv.h، $TMPDIR، عند تعيينه، بدلاً من /tmp. إذا كان هذا الملف
تم حذفه، أو أن TMPDIR له قيم مختلفة للخادم والعميل، والاتصال
بين الخادم والعميل سوف تفشل. لن يتمكن من ذلك سوى المستخدم الذي يقوم بتشغيل gnuserv
الاتصال بالمقبس.
نطاق الانترنت مآخذ
يتم استخدام مآخذ مجال الإنترنت للتواصل فيما بينها العبقري و جنوسيرف إذا كان
يتم تعريف الرمز INTERNET_DOMAIN_SOCKETS في الجزء العلوي من gnuserv.h. كلا مجال الإنترنت
ويمكن استخدام مآخذ مجال Unix في نفس الوقت. إذا تم تحديد اسم مضيف عبر -h أو
عبر متغير البيئة GNU_HOST ، العبقري إنشاء اتصالات باستخدام الإنترنت
مقبس المجال. إذا لم يكن الأمر كذلك، فستتم محاولة الاتصال المحلي عبر مقبس مجال يونكس أو
SYSV IPC.
الأمن
باستخدام مآخذ توصيل مجال الإنترنت، هناك حاجة إلى شكل أكثر قوة من الأمان، وهو ما لم يكن موجودًا
ضروري إما مع مآخذ مجال Unix أو SysV IPC. حاليا، وهما المصادقة
يتم دعم البروتوكولات لتوفير هذا: MIT-MAGIC-COOKIE-1 (استنادًا إلى X11 com.xauth(1)
البرنامج) وآلية بسيطة للتحكم في الوصول تعتمد على المضيف ، تسمى فيما بعد GNUSERV-1. ال
بروتوكول GNUSERV-1 متاح دائمًا، في حين أن دعم MIT-MAGIC-COOKIE-1 قد يكون أو قد يكون
لم يتم تمكينها (عبر #define في الجزء العلوي من gnuserv.h) في وقت الترجمة.
جنوسيرف، باستخدام GNUSERV-1، ينفذ شكلاً محدودًا من التحكم في الوصول على مستوى الجهاز.
بشكل افتراضي، لا يتم فتح أي مقبس لمجال الإنترنت. إذا كان من الممكن العثور على المتغير GNU_SECURE
in جنوسيرفبيئة ، ويسمي اسم ملف قابل للقراءة، ثم يتم فتح هذا الملف و
من المفترض أن تكون قائمة بالمضيفين، واحد في كل سطر، والتي سيسمح الخادم بالطلبات منها.
سيتم رفض الاتصالات من أي مضيف آخر. حتى الجهاز الذي جنوسيرف is
لا يُسمح للتشغيل بإجراء اتصالات عبر مقبس الإنترنت إلا إذا كان اسم المضيف الخاص به
تم تحديده بشكل واضح في هذا الملف. لاحظ أن المضيف قد يكون عنوان IP رقميًا
أو اسم مضيف ، وذاك أي وقت يمكن للمستخدم الموجود على مضيف معتمد الاتصال بـ gnuserv و
تنفيذ elisp بشكل تعسفي (على سبيل المثال، حذف جميع ملفاتك). إذا كان هذا الملف يحتوي على الكثير من
hostnames ثم قد يستغرق الخادم وقتًا طويلاً لبدء التشغيل.
عند تمكين بروتوكول MIT-MAGIC-COOKIE-1 ، يكون مقبس الإنترنت is مفتوح بشكل افتراضي.
جنوسيرف سيقبل الاتصال من أي مضيف، وسينتظر "ملف تعريف الارتباط السحري"
(بشكل أساسي ، كلمة مرور) ليقدمها العميل. إذا لم يقدم العميل ملف
ملف تعريف الارتباط، أو إذا كان ملف تعريف الارتباط خاطئًا، فسيتم اعتبار مصادقة العميل موجودة
فشل. عند هذه النقطة. جنوسيرف يعود إلى بروتوكول GNUSERV-1؛ إذا كان العميل
الاتصال من مضيف مدرج في ملف GNU_SECURE، سيتم قبول الاتصال،
وإلا فسيتم رفضه.
باستخدام MIT-MAGIC-COOKIE-1 المصادقة
عندما جنوسيرف عند بدء تشغيل الخادم، فإنه يبحث عن ملف تعريف الارتباط المحدد للعرض 999 عليه
الجهاز الذي يعمل عليه. إذا تم العثور على ملف تعريف الارتباط، فسيتم تخزينه للاستخدام كـ
ملف تعريف ارتباط المصادقة. يتم تحديد ملفات تعريف الارتباط هذه في ملف تفويض (عادةً
~ /. السلطة) يتم التلاعب به بواسطة X11 com.xauth(1) برنامج. على سبيل المثال ، آلة
"كالي" التي تدير emacs التي تستدعي جنوسيرف يجب الرد على النحو التالي (في
موجه قذيفة) عند الإعداد بشكل صحيح.
قائمة كالي٪ xauth
GS65.SP.CS.CMU.EDU:0 MIT-MAGIC-COOKIE-1 11223344
KALI.FTM.CS.CMU.EDU:999 MIT-MAGIC-COOKIE-1 1234
في الحالة المذكورة أعلاه ، يحدد ملف التفويض اثنين من ملفات تعريف الارتباط. الثانية ، محددة
للشاشة 999 على جهاز الخادم ، تستخدم لمصادقة gnuserv.
من ناحية جهاز العميل، يجب أن يحتوي ملف التفويض على سطر مماثل،
تحديد الخادم بسكويت. وبعبارة أخرى ، على آلة "foobar" التي ترغب في
اتصل بـ "kali"، يجب أن يحتوي إخراج "قائمة xauth" على السطر:
KALI.FTM.CS.CMU.EDU:999 MIT-MAGIC-COOKIE-1 1234
لإنشاء ملف تعريف الارتباط ، يمكنك استخدام أمر مثل
xauth إضافة `hostname`: 999 MIT-MAGIC-COOKIE-1` head -c512 / dev / urandom | md5sum`
لمزيد من المعلومات حول ملفات التفويض ، ألق نظرة على ملف com.xauth(1X11) صفحة الرجل،
أو استدعاء xauth بشكل تفاعلي (بدون أي وسائط) واكتب "مساعدة" في الموجه.
تذكر تلك الحالة باسم بروتوكول التفويض (أي MIT-MAGIC-
ملف تعريف الارتباط -1 ') is بارز!
البيئة
عرض جهاز X الافتراضي لوضع إطار التحرير.
استخدم gnuserv عبر الإنترنت باستخدام خدمات onworks.net