Ito ang command na gnuclient.xemacs21 na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator
PROGRAMA:
NAME
gnuserv, gnuclient - Server at Mga Kliyente para sa XEmacs
SINOPSIS
mabait [-nw] [-display display] [-q] [-v] [-l library] [-batch] [-f function] [-eval
form] [-h hostname] [-p port] [-r remote-pathname] [[+line] file] ...
gnudoit [-q] anyo
gnuserv
gnuattach Inalis noong gnuserv 3.x
DESCRIPTION
mabait nagbibigay-daan sa user na humiling ng tumatakbong proseso ng XEmacs para i-edit ang mga pinangalanang file o
mga direktoryo at/o suriin ang mga lisp form. Depende sa iyong kapaligiran, maaari itong maging isang X
frame o isang TTY frame. Ang isang tipikal na gamit para dito ay sa isang dialup na koneksyon sa isang makina
kung saan kasalukuyang tumatakbo ang isang proseso ng XEmacs.
gnudoit ay isang shell script frontend sa ``gnuclient -batch -eval form''. Ang paggamit nito ay
hindi na ginagamit. Subukang masanay sa direktang pagtawag sa gnuclient.
gnuserv ay ang server program na itinakda na tumatakbo ng XEmacs upang pangasiwaan ang lahat ng papasok at
papalabas na mga kahilingan. Ito ay hindi karaniwang direktang tinatawag, ngunit sinimulan mula sa XEmacs ni
nilo-load ang gnuserv package at pagsusuri sa Lisp form (gnuserv-start).
gnuattach wala na. Ang pag-andar nito ay pinalitan ng mabait -nw.
Opsyon
mabait Sinusuportahan ang halos lahat ng mga opsyon sa command line ng Emacs na may katuturan dito
konteksto. Bilang karagdagan, nagdaragdag ito ng ilan sa sarili nitong.
Ang mga opsyon na may mahabang pangalan ay maaari ding tukuyin gamit ang isang dobleng gitling sa halip na isang solong
isa.
-nw Ginagawa ng pagpipiliang ito mabait kumilos bilang isang frontend na maaaring ilakip ng XEmacs sa
kasalukuyang TTY. Ang XEmacs ay magbubukas ng bagong TTY frame. Ang epekto ay katulad ng
pagsisimula ng bagong XEmacs sa TTY na ito gamit ang opsyong ``-nw''. Sa kasalukuyan lamang
gumagana kung ang XEmacs ay tumatakbo sa parehong makina bilang gnuclient. Ito ang default
kung hindi nakatakda ang `DISPLAY' na environment variable.
-display pagpapakita, --display magpakita
Kung ang opsyong ito ay ibinigay o ang `DISPLAY' environment variable ay nakatakda noon
Sasabihin ng gnuclient sa XEmacs na i-edit ang mga file sa isang frame sa tinukoy na X device.
-q Ang pagpipiliang ito ay nagpapaalam mabait upang lumabas sa sandaling ang koneksyon ay ginawa sa
Proseso ng XEmacs. Karaniwan mabait naghihintay hanggang sa lahat ng mga file sa command
line ay tapos na sa (ang kanilang mga buffer ay pinatay) ng proseso ng XEmacs, at lahat
ang mga form ay nasuri.
-v Kapag tinukoy ang pagpipiliang ito mabait hihilingin para sa mga tinukoy na file na maging
tiningnan sa halip na na-edit.
-l aklatan
Sabihin sa Emacs na i-load ang tinukoy na library.
-batch Sabihin sa Emacs na huwag magbukas ng anumang mga frame. Mag-load lang ng mga library at suriin ang lisp code. Kung
walang mga file na ipapatupad, mga function na tatawagan o mga form sa eval ay ibinibigay gamit ang -l,
-f, O -eval mga opsyon, pagkatapos ay babasahin ang mga form sa eval mula sa STDIN.
-f function,
Gawin ang Emacs na isagawa ang lisp function.
-eval anyo
Gawin ang Emacs na isagawa ang lisp form.
-h hostname
Ginagamit lamang sa mga socket ng Internet-domain, tinutukoy ng opsyong ito ang host machine
na dapat tumakbo gnuserv. Kung hindi tinukoy ang opsyong ito, ang halaga ng
ang environment variable na GNU_HOST ay ginagamit kung nakatakda. Kung walang tinukoy na hostname, at
hindi nakatakda ang variable na GNU_HOST, hindi susubukan ang koneksyon sa internet.
NB: gnuserv HINDI pinapayagan ang mga koneksyon sa internet maliban kung ang pagpapatunay ng XAUTH ay
ginamit o ang variable na GNU_SECURE ay tinukoy at tumuturo sa isang listahan ng file
lahat ng pinagkakatiwalaang host. (Tingnan ang SEGURIDAD sa ibaba.)
Tandaan na maaaring tukuyin ang isang internet address sa halip na isang hostname na maaari
pabilisin ang mga koneksyon sa server ng medyo, lalo na kung ang kliyente
ang makina ay tumatakbo sa YP.
Tandaan din na ang isang hostname ng Unix ay maaaring gamitin upang tukuyin na ang koneksyon sa
ang server ay dapat gumamit ng Unix-domain socket (kung sinusuportahan) sa halip na isang Internet-
socket ng domain.
-p port Ginagamit lamang sa mga socket ng Internet-domain, tinutukoy ng opsyong ito ang port ng serbisyo
ginagamit upang makipag-usap sa pagitan ng server at mga kliyente. Kung hindi tinukoy ang opsyong ito,
pagkatapos ay ang halaga ng kapaligiran variable GNU_PORT ay ginagamit, kung nakatakda, kung hindi man a
serbisyong tinatawag na ``gnuserv'' ay hinahanap sa database ng mga serbisyo. Sa wakas, kung hindi
iba pang halaga ay matatagpuan para sa port, pagkatapos ay isang default na port ay ginagamit na kung saan ay
kadalasan 21490 + uid.
Tandaan na mula noon gnuserv ay hindi pinapayagan ang mga opsyon sa command-line, ang port para dito
kailangang tukuyin sa pamamagitan ng isa sa mga alternatibong pamamaraan.
-r pangalan ng landas
Ginagamit lamang sa mga socket ng Internet-domain, maaaring kailanganin ang argumento ng pathname upang
ipaalam sa XEmacs kung paano maabot ang root directory ng isang malayuang makina. mabait
inilalagay ang string na ito sa bawat argument ng path na ibinigay. Halimbawa, kung sinusubukan mo
upang i-edit ang isang file sa isang client machine na tinatawag na otter, na ang root directory ay
maa-access mula sa server machine sa pamamagitan ng path /net/otter, pagkatapos ang argumentong ito
dapat itakda sa '/net/otter'. Kung aalisin ang opsyong ito, kukunin ang halaga
mula sa variable ng kapaligiran na GNU_NODE, kung nakatakda, o ang walang laman na string kung hindi man.
[+n] file
Ito ang landas ng file na ie-edit. Kung ang file ay isang direktoryo, kung gayon ang
ang mga directory browser na dired o unggoy ay kadalasang ginagamit sa halip. Inilagay ang cursor
sa line number 'n' kung tinukoy.
SETUP
gnuserv ay karaniwang nakabalot sa mga kamakailang bersyon ng XEmacs. Samakatuwid, dapat ay ikaw
magagawang simulan ang server sa pamamagitan lamang ng pagsusuri sa XEmacs Lisp form (gnuserv-start), o
katumbas ng pag-type ng `Mx gnuserv-start'.
Configuration
Ang pag-uugali ng suite na ito ng programa ay halos kinokontrol sa lisp side sa Emacs at
ang pag-uugali nito ay maaaring ipasadya sa isang malaking lawak. I-type ang `Mx customize-group RET gnuserv
RET' para sa madaling pag-access. Marami pang dokumentasyon ang makikita sa file na `gnuserv.el'
Halimbawa
gnuclient -q -f mh-smail
gnuclient -h cuckoo -r /ange@otter: / tmp /*
gnuclient -nw ../src/listproc.c
Higit pang mga halimbawa at sample wrapper script ang ibinibigay sa etc/gnuserv directory ng
Pag-install ng Emacs.
SYSV IPC
SysV IPC ay ginagamit upang makipag-usap sa pagitan ng mabait at gnuserv kung ang simbolong SYSV_IPC ay
tinukoy sa tuktok ng gnuserv.h. Ito ay hindi tugma sa parehong Unix-domain at Internet-
komunikasyon sa socket ng domain tulad ng inilarawan sa ibaba. Isang file na tinatawag na /tmp/gsrv??? ay nilikha bilang a
key para sa pila ng mensahe, at kung maalis ay magdudulot ng komunikasyon sa pagitan ng server at
mabibigo ang kliyente hanggang sa ma-restart ang server.
UNIX-DOMAIN MGA SOCKET
Ang isang Unix-domain socket ay ginagamit upang makipag-usap sa pagitan mabait at gnuserv kung ang simbolo
Ang UNIX_DOMAIN_SOCKETS ay tinukoy sa tuktok ng gnuserv.h. Isang file na tinatawag
/tmp/gsrvdir????/gsrv ay nilikha para sa komunikasyon. Kung ang simbolo na USE_TMPDIR ay nakatakda sa
ang tuktok ng gnuserv.h, $TMPDIR, kapag nakatakda, ay ginagamit sa halip na /tmp. Kung ang file na iyon ay
tinanggal, o may iba't ibang halaga ang TMPDIR para sa server at sa kliyente, komunikasyon
sa pagitan ng server at kliyente ay mabibigo. Tanging ang gumagamit na tumatakbo sa gnuserv ang makakagawa nito
kumonekta sa socket.
INTERNET-DOMAIN MGA SOCKET
Ginagamit ang mga socket ng Internet-domain upang makipag-usap sa pagitan mabait at gnuserv kung ang
ang simbolo INTERNET_DOMAIN_SOCKETS ay tinukoy sa tuktok ng gnuserv.h. Parehong Internet-domain
at ang mga Unix-domain socket ay maaaring gamitin nang sabay. Kung ang isang hostname ay tinukoy sa pamamagitan ng -h o
sa pamamagitan ng GNU_HOST environment variable, mabait magtatag ng mga koneksyon gamit ang internet
socket ng domain. Kung hindi, ang isang lokal na koneksyon ay sinusubukan sa pamamagitan ng alinman sa isang unix-domain socket o
SYSV IPC.
SEGURIDAD
Gamit ang mga socket ng Internet-domain, kailangan ang isang mas matatag na paraan ng seguridad na hindi
kinakailangan sa alinman sa mga Unix-domain socket o SysV IPC. Sa kasalukuyan, dalawang pagpapatunay
sinusuportahan ang mga protocol para ibigay ito: MIT-MAGIC-COOKIE-1 (batay sa X11 xauth(1)
program) at isang simpleng mekanismo ng access control na nakabatay sa host, pagkatapos ay tinatawag na GNUSERV-1. Ang
Ang GNUSERV-1 protocol ay palaging magagamit, samantalang ang suporta para sa MIT-MAGIC-COOKIE-1 ay maaaring o maaaring
hindi pa pinagana (sa pamamagitan ng #define sa tuktok ng gnuserv.h) sa oras ng pag-compile.
gnuserv, gamit ang GNUSERV-1, ay nagsasagawa ng limitadong paraan ng kontrol sa pag-access sa antas ng makina.
Bilang default, walang internet-domain socket ang nabuksan. Kung ang variable na GNU_SECURE ay matatagpuan
in gnuserv's environment, at pinangalanan nito ang isang nababasang filename, pagkatapos ay binuksan ang file na ito at
ipinapalagay na isang listahan ng mga host, isa sa bawat linya, kung saan papayagan ng server ang mga kahilingan.
Ang mga koneksyon mula sa anumang iba pang host ay tatanggihan. Kahit na ang makina kung saan gnuserv is
Ang pagtakbo ay hindi pinahihintulutan na gumawa ng mga koneksyon sa pamamagitan ng internet socket maliban kung ang hostname nito
ay tahasang tinukoy sa file na ito. Tandaan na ang isang host ay maaaring isang numerong IP address
o isang hostname, at iyon anumang ang user sa isang aprubadong host ay maaaring kumonekta sa iyong gnuserv at
isagawa ang di-makatwirang elisp (hal., tanggalin ang lahat ng iyong mga file). Kung ang file na ito ay naglalaman ng maraming
hostname kung gayon ang server ay maaaring magtagal bago magsimula.
Kapag pinagana ang MIT-MAGIC-COOKIE-1 protocol, isang internet socket is binuksan bilang default.
gnuserv tatanggap ng koneksyon mula sa sinumang host, at maghihintay ng "magic cookie"
(sa pangkalahatan, isang password) na ipapakita ng kliyente. Kung hindi ipinakita ng kliyente ang
cookie, o kung mali ang cookie, ang pagpapatunay ng kliyente ay itinuturing na mayroon
nabigo. Simula ngayon. gnuserv bumabalik sa GNUSERV-1 protocol; Kung ang kliyente ay
tumatawag mula sa isang host na nakalista sa GNU_SECURE file, tatanggapin ang koneksyon,
kung hindi ito ay tatanggihan.
paggamit MIT-MAGIC-COOKIE-1 authentication
Kapag ang gnuserv Nagsimula ang server, naghahanap ito ng cookie na tinukoy para sa display 999 sa
ang makina kung saan ito tumatakbo. Kung ang cookie ay matatagpuan, ito ay iimbak para magamit bilang
ang cookie ng pagpapatunay. Ang cookies na ito ay tinukoy sa isang file ng pahintulot (karaniwan
~/.Xauthority) na minamanipula ng X11 xauth(1) programa. Halimbawa, isang makina
"kali" na nagpapatakbo ng isang emacs na humihiling gnuserv dapat tumugon tulad ng sumusunod (sa
shell prompt) kapag na-set up nang tama.
kali% xauth list
GS65.SP.CS.CMU.EDU:0 MIT-MAGIC-COOKIE-1 11223344
KALI.FTM.CS.CMU.EDU:999 MIT-MAGIC-COOKIE-1 1234
Sa kaso sa itaas, ang file ng pahintulot ay tumutukoy sa dalawang cookies. Ang pangalawa, tinukoy
para sa screen 999 sa server machine, ay ginagamit para sa gnuserv authentication.
Sa panig ng makina ng kliyente, ang file ng pahintulot ay dapat maglaman ng magkaparehong linya,
pagtukoy sa ng server cookie. Sa madaling salita, sa isang makina na "foobar" na nais
kumonekta sa "kali," ang `xauth list' na output ay dapat maglaman ng linya:
KALI.FTM.CS.CMU.EDU:999 MIT-MAGIC-COOKIE-1 1234
Para sa higit pang impormasyon sa mga file ng pahintulot, tingnan ang xauth(1X11) man page,
o i-invoke ang xauth nang interactive (nang walang anumang argumento) at i-type ang "help" sa prompt.
Tandaan ang kasong iyon sa pangalan ng protocol ng pahintulot (ibig sabihin,`MIT-MAGIC-
COOKIE-1') is makabuluhan!
Kapaligiran
DISPLAY Default na X device para ilagay ang edit frame.
Gamitin ang gnuclient.xemacs21 online gamit ang mga serbisyo ng onworks.net