シェルなしでemacsを実行する方法は?

シェルなしでemacsを実行する方法は?

私はArch Linuxサーバーを管理しています。

/etc/sudoers私のエディタ変数にemacsを安全に追加するにはどうすればよいですか?現在私は "emacs"を持っていますが、これはM-x shell基本的に同様のものが欲しいrvimがemacs用です。

答え1

あなたはおそらくできません。

Emacsはエディタ(emacs lispで書かれている)を実行するLispインタプリタなので、emacsを使用するたびにLispインタプリタ自体にアクセスできます。

インタプリタはさまざまなことを行うことができます。 emacs自体は十分に強力です。 。

最善の方法は、おそらく小さなemacsレプリカを見つけることです(例:http://www.emacswiki.org/emacs/EmacsImplementations)は限られた編集をサポートします。

答え2

残念ながら、Emacsは強すぎて(シェルが無効になっていても)多くのことをすることができます。

おそらく正しい解決策は、sudoersファイルをコピーして適切な権限を付与し、そのファイルに書き込む権限のみを持つ特別なユーザーとしてEmacsを実行し、最後に確認後にファイルを再コピーするラッパーを構築することです。

ただし、セキュリティの観点からは、明らかにすべてのsudoersエディタが割り当てることができます。どの権限なので、実際に解決しようとしている問題が何であるかを知りたいです。

それでも私は実験をしました。SHELLに設定すると、/bin/falseEmacsshellコマンドは実行しようとしたときにエラーで即座に終了します$SHELL

関連情報