suxコマンドの良い代替手段は何ですか?


12

今後の14.04リリースでは、sux(X資格情報を転送するsuのラッパー)がUbuntuに含まれなくなりました。(元のコードがメンテナンスされていないため、Debianから取得されているため、削除されていると思います。)

私は単純な代替手段を探しています。構成ファイルをいじったり、ローカルでsshdを実行したりする必要はありません。


レビュアー:これはトピック外ではなく、14.04とは関係ありません。
セス

これは本当に必要ですか?sudoersオプションがそのようにセットアップされている場合(つまり、sudoがIDを変更するときにHOMEを保持するように)、. Xauthorityで特別なことをする必要はありません。これが私のラップトップの設定方法であり、
suxを

@Stabledogはどのように機能しますか?どこに設定しますか?sudo構成ファイルはありますか?私の目標は、ユーザーAのデスクトップにログインし、ユーザーBとして端末を取得することです。ここで、すべてのxがデスクトップに到達します。それが意味することを願っています... suxで今できることの例、私は代替手段が必要です:ユーザーAがログインして端末A @ desktop:〜$ sux-BB @ desktop:〜$ firefox Firefoxが開きますが、ユーザーBの設定、ブックマーク、ファイルはユーザーBのホームディレクトリにアクセスします。
ソーレン14年

ええ、私はそのようなことをいつもしています。理解すべき2つのことがあります。「外部」ユーザーの〜/ .Xauthorityは、内部ユーザーの.Xauthorityになる必要があります。また、sshによって設定されたDISPLAY変数は、内部シェルで一致する必要があります。たとえば、〜/ .Xauthorityファイルを '/ home / tom'から/ home / jerryにコピーし、権限を修正し、 'jerry'シェルでDISPLAY値を設定できます。Xプログラムをjerryとして起動すると、DISPLAY値はX libsにディスプレイの検索方法を通知し、/ home / jerry内の.Xauthorityファイルは認証データを提供します。
ステーブルドッグ14年

しかし、それはログインごとに行うのは面倒です。/ etc / sudoersを修正して、tomのHOME値とDISPLAY値が「sudo -u jerry bash」を実行してシェルをjerryとして開いたときに保持されるようにする方が簡単です。sudo呼び出し全体に環境変数を伝播する方法を説明するsudoersのコメントがあります。ズーダーを編集するときは、visudoを使用してください。
ステーブルドッグ14年

回答:


9

私もsux最初は簡単な代替手段がなかったことを見てとても悲しかったが、これで終わった:

  • /etc/pam.d/suで、suを呼び出すときにユーザー間でxauthキーを転送するには、以下を追加します。 session optional pam_xauth.so

  • 〜olivier / .bashrc内:( export $(dbus-launch) 実際に必要かどうかはわかり ません)

  • su olivierログインしたユーザーからのシンプルな

1
私は、ときにこれをやった後にI「秀」「いいえプロトコルが指定されていません」を取得
クラウディウ

-1
  • ここからsuxをダウンロードしますhttp://fgouget.free.fr/index-en.shtml
  • suxをパスのディレクトリ(たとえば、/ usr / local / bin)にコピーします
  • 許可を実行可能ファイル(chmod 755 sux)に変更します。これらの許可が適切なものかどうかわかりません
  • / bin / shを/ bin / bashに置き換えます

MiシステムはDebian 10です

よろしく


1
こんにちは、AskUbuntuへようこそ。ドメイン名が示唆するように、このサイトはUbuntuに関するものです。ソリューションソリューションはUbuntuで動作しますか?なぜそれが必要なの取り替えない/bin/shとは/bin/bash
サイモンサドラー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.