これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなど、複数の無料オンライン ワークステーションのいずれかを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド gnuserv.xemacs21 です。
プログラム:
NAME
gnuserv、gnuclient - XEmacs のサーバーとクライアント
SYNOPSIS
核クライアント [-nw] [-display 表示] [-q] [-v] [-l ライブラリ] [-batch] [-f 関数] [-eval
フォーム] [-h ホスト名] [-p ポート] [-r リモートパス名] [[+line] ファイル] ...
ヌードイト [Q] フォーム
グヌサーブ
グヌアタッチ gnuserv3.xで削除されました
DESCRIPTION
核クライアント 指定されたファイルを編集するために実行中の XEmacs プロセスを要求することをユーザーに許可するか、
ディレクトリおよび/またはLispフォームを評価します。 環境によっては、X になる場合があります。
フレームまたは TTY フレーム。 これの典型的な用途の XNUMX つは、マシンへのダイヤルアップ接続です。
XEmacs プロセスが現在実行されている場所。
ヌードイト ``gnuclient -batch -eval form'' へのシェルスクリプトフロントエンドです。 その用途は
非推奨。 gnuclientを直接呼び出すことに慣れるようにしてください。
グヌサーブ XEmacs によって実行されるように設定されたサーバー プログラムで、すべての受信および受信を処理します。
発信要求。 通常は直接呼び出されませんが、XEmacs から開始されます。
をロードしています グヌサーブ パッケージを作成し、Lisp フォームを評価します (gnuserv-start)。
グヌアタッチ もはや存在しない。 その機能は次のものに置き換えられました。 核クライアント -nw.
OPTIONS
核クライアント Emacs のコマンド ライン オプションを可能な限りサポートします。
環境。 さらに、それはそれ自身のいくつかを追加します。
長い名前のオプションは、単一のハイフンの代わりに二重のハイフンを使用して指定することもできます
1。
-nw このオプションは 核クライアント XEmacs が
現在の TTY。 XEmacs は新しい TTY フレームを開きます。 効果は似ています
この TTY 上で「-nw」オプションを使用して新しい XEmacs を開始しました。 現在のところのみ
XEmacs が gnuclient と同じマシンで実行されている場合に機能します。 これがデフォルトです
`DISPLAY' 環境変数が設定されていない場合。
-表示 表示、 - 画面 ディスプレイ
このオプションを指定するか、環境変数 `DISPLAY' を設定すると、
gnuclient は、指定された X デバイス上のフレーム内のファイルを編集するように XEmacs に指示します。
-q このオプションは、 核クライアント との接続が確立されたら終了します
XEmacs プロセス。 通常は 核クライアント コマンド上のすべてのファイルが終了するまで待機します
XEmacsプロセスによって行が終了し(バッファが強制終了され)、すべて
フォームが評価されました。
-v このオプションを指定した場合 核クライアント 指定されたファイルが
編集ではなく表示。
-l ライブラリ
指定されたライブラリをロードするようにEmacsに指示します。
-バッチ どのフレームも開かないように Emacs に指示します。 ライブラリをロードして Lisp コードを評価するだけです。 もしも
実行するファイル、呼び出す関数、または評価するフォームは、 -l,
-fまたは -評価 オプションを選択すると、評価するフォームがSTDINから読み取られます。
-f 機能、
Emacsにlisp関数を実行させます。
-評価 フォーム
Emacsにlispフォームを実行させます。
-h hostname
このオプションは、インターネット ドメイン ソケットでのみ使用され、ホスト マシンを指定します。
実行する必要があります グヌサーブ。 このオプションが指定されていない場合、
設定されている場合、環境変数GNU_HOSTが使用されます。 ホスト名が指定されていない場合、および
GNU_HOST 変数が設定されていない場合、インターネット接続は試行されません。
NB: グヌサーブ XAUTH認証がない限り、インターネット接続を許可しません
使用されているか、GNU_SECURE 変数が指定されており、ファイル リストを指している
すべての信頼できるホスト。 (以下のセキュリティを参照してください。)
ホスト名の代わりにインターネットアドレスを指定できることに注意してください。
特にクライアントの場合、サーバーへの接続をかなり高速化します
マシンはYPを実行しています。
のホスト名にも注意してください。 UNIX への接続を指定するために使用できます
サーバーは、インターネットではなく、Unixドメインソケット(サポートされている場合)を使用する必要があります-
ドメインソケット。
-p ポート このオプションは、インターネット ドメイン ソケットでのみ使用され、サービス ポートを指定します。
サーバーとクライアント間の通信に使用されます。 このオプションが指定されていない場合、
設定されている場合は環境変数 GNU_PORT の値が使用され、設定されていない場合は
``gnuserv'' と呼ばれるサービスがサービス データベースで検索されます。 最後に、いいえの場合
ポートに他の値が見つかった場合は、デフォルトのポートが使用されます。
通常21490 + uid。
なお、 グヌサーブ コマンドラインオプションを許可しないため、そのポートは
代替方法のXNUMXつを介して指定する必要があります。
-r パス名
インターネット ドメイン ソケットでのみ使用されます。
リモートマシンのルートディレクトリに到達する方法を XEmacs に通知します。 核クライアント
指定された各パス引数の前にこの文字列を追加します。 たとえば、あなたがしようとしていた場合
ルートディレクトリが
パス /net/otter を介してサーバー マシンからアクセスできる場合、この引数
「/net/otter」に設定する必要があります。 このオプションを省略すると、値が取得されます
設定されている場合は環境変数GNU_NODEから、それ以外の場合は空の文字列から。
[+ n] file
編集するファイルのパスです。 ファイルがディレクトリの場合、
通常、ディレクトリ ブラウザの dired または monkey が代わりに呼び出されます。 カーソルが置かれる
指定されている場合は、行番号 'n'にあります。
セットアップ
グヌサーブ 最近のバージョンの XEmacs に標準でパッケージされています。 したがって、あなたは
XEmacs Lisp フォーム (gnuserv-start) を評価するだけでサーバーを起動できる、または
同等に `Mx gnuserv-start 'と入力します。
CONFIGURATION
この一連のプログラムの動作は、ほとんどが Emacs の Lisp 側で制御され、
その動作は大幅にカスタマイズできます。 `Mx Customize-group RET gnuserv と入力します
簡単にアクセスできるようにRET '。 その他のドキュメントは、ファイル `gnuserv.el 'にあります。
実施例
gnuclient -q -f mh-smail
gnuclient -h cuckoo -r / ange @ otter: / tmp /*
gnuclient -nw ../src/listproc.c
その他の例とサンプル ラッパー スクリプトは、
Emacsのインストール。
SYSV IPC
SysV IPCは、以下の間の通信に使用されます 核クライアント および グヌサーブ シンボル SYSV_IPC が
gnuserv.h の先頭で定義されています。 これは、Unix ドメインとインターネットの両方と互換性がありません。
以下に説明するドメインソケット通信。 / 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 環境変数を介して、 核クライアント インターネットを使用して接続を確立する
ドメインソケット。 そうでない場合は、UNIX ドメイン ソケットまたはいずれかを介してローカル接続が試行されます。
SYSVIPC。
SECURITY
インターネット ドメイン ソケットを使用すると、これまでにない、より堅牢な形式のセキュリティが必要になります。
Unix ドメイン ソケットまたは SysV IPC のいずれかで必要です。 現在、XNUMX つの認証
これを提供するプロトコルがサポートされています: MIT-MAGIC-COOKIE-1 (X11 に基づく) xauth(1)
プログラム)および単純なホストベースのアクセス制御メカニズム(以降、GNUSERV-1と呼びます)。 NS
GNUSERV-1 プロトコルは常に利用可能ですが、MIT-MAGIC-COOKIE-1 のサポートは可能性がある場合とそうでない場合があります
コンパイル時に(gnuserv.hの上部にある#defineを介して)有効にされていません。
グヌサーブは、GNUSERV-1 を使用して、限定された形式のアクセス制御をマシン レベルで実行します。
デフォルトでは、インターネット ドメイン ソケットは開かれません。 変数 GNU_SECURE が見つかる場合
in グヌサーブの環境で、読み取り可能なファイル名を指定すると、このファイルが開かれ、
サーバーがリクエストを許可するホストのリストを XNUMX 行に XNUMX つずつ指定します。
他のホストからの接続は拒否されます。 搭載しているマシンでさえ グヌサーブ is
ホスト名がない限り、インターネットソケットを介して接続することは許可されていません
は、このファイルで明示的に指定されています。 ホストは、数値の IP アドレスのいずれかであることに注意してください。
またはホスト名、およびそれ どれか 承認されたホスト上のユーザーは、gnuservに接続して
任意の elisp を実行します (たとえば、すべてのファイルを削除します)。 このファイルに多くの
ホスト名の場合、サーバーの起動にかなりの時間がかかる場合があります。
MIT-MAGIC-COOKIE-1 プロトコルが有効な場合、インターネット ソケット is デフォルトで開かれます。
グヌサーブ 任意のホストからの接続を受け入れ、「マジック クッキー」を待ちます。
(基本的にはパスワード)クライアントによって提示されます。 クライアントが提示しない場合
クッキー、またはクッキーが間違っている場合、クライアントの認証は持っていると見なされます
失敗した。 この時点で。 グヌサーブ GNUSERV-1プロトコルにフォールバックします。 クライアントが
GNU_SECURE ファイルにリストされているホストから呼び出すと、接続が受け入れられます。
それ以外の場合は拒否されます。
使い方 MIT-マジック-クッキー-1 認証
とき グヌサーブ サーバーが起動すると、表示999用に定義されたCookieが検索されます。
それが実行されているマシン。 Cookie が見つかった場合は、次のように使用するために保存されます。
認証Cookie。 これらのCookieは認証ファイルで定義されています(通常は
〜/ .Xauthority)X11によって操作されます xauth(1)プログラム。 たとえば、機械
呼び出すemacsを実行する「kali」 グヌサーブ 次のように応答する必要があります(
シェルプロンプト)正しく設定されている場合。
kali%xauthリスト
GS65.SP.CS.CMU.EDU:0 MIT-MAGIC-COOKIE-1 11223344
KALI.FTM.CS.CMU.EDU:999 MIT-MAGIC-COOKIE-1 1234
上記の場合、認証ファイルはXNUMXつのCookieを定義します。 定義されたXNUMX番目のもの
サーバーマシンの画面999の場合、gnuserv認証に使用されます。
クライアント マシン側では、認証ファイルに同じ行が含まれている必要があります。
の指定 サーバーの クッキー。 言い換えれば、マシン「foobar」で
「kali」に接続すると、「xauth list」の出力に次の行が含まれているはずです。
KALI.FTM.CS.CMU.EDU:999 MIT-MAGIC-COOKIE-1 1234
認証ファイルの詳細については、 xauth(1X11)マニュアルページ、
または xauth を対話的に (引数なしで) 呼び出し、プロンプトで「help」と入力します。
認証プロトコルの名前でそのケースを覚えておいてください (つまり、`MIT-MAGIC-
クッキー-1 ') is 重要!
ENVIRONMENT
DISPLAY 編集フレームを配置するデフォルトのXデバイス。
onworks.net サービスを使用してオンラインで gnuserv.xemacs21 を使用する