sshリモートログインがdbusを破壊しないようにするにはどうすればよいですか?


10

私は自分のワークステーションでKDEのもとでopenSUSE 11.3を実行していますが、それにrootアクセス権がありません。デフォルトのシェルはに設定されていますtcsh。ワークステーションにログインし、OS X 10.6を実行しているMacBookからリモートでログインするとssh、次のようになります。

ssh -X -C user@workstation.edu

すべてが正常に動作します。ただし、一度完了すると、残念ながらタスクバーパネルのログアウトダイアログボックスなど、GUIで何かを起動しようとすると、ワークステーションセッションでDBUSエラーが発生します。私はstartkdeこれらの状況でログアウトするためだけに殺すことにうんざりしています。

オンラインsshを使用して既存のdbusセッションに接続するための多くの指示を見つけましたが、反対に、sshリモートログインセッションによって既存のdbusセッションを完全に変更しないでください。

私が行った場合

ssh -X -C user@workstation.edu dbus-launch konsole

それは機能するので、dbusを壊しているのは対話型ログインシェルだけです。どのように変更すればよい~/.cshrcですか?私は変更する権限を持っていないことに注意してください/etc/cshrc/etc/loginなど、

必要に応じて、これらのファイルの内容をここにリストできます。

更新:

これは、私が見つけたすべてのスクリプトを含む大きなtarファイルです。

http://dl.dropbox.com/u/17203983/cshrc.tgz


はい、違いを生む初期化ファイルの内容を投稿してください。また、どのコマンドがローカルセッションを中断するかを正確に説明してください(ローカルセッションを中断するのは実行dbus-launch konsole中ですか?または、ただ押すだけのインタラクティブなsshログインexitですか?)
Gilles 'SO-悪をやめなさい' 11/12/3

@Gillesうーん、質問をファイルの内容で編集しようとしましたが、文字が多すぎます。どこでどのようにアップロードできるかを調べます。その間、dbus-launch konsoleはローカルセッションを中断しませが、コマンドラインからの対話型のsshログインの直後にexitが続きます。実際、rsyncを実行するだけでもdbusが壊れます(私には、rsyncがデフォルトでログインシェルスクリプトを実行するのは奇妙に思えますが、実際にはそうです)。
user1079118

大きなファイルの場合は、pastebin.comを試してください。
Gilles「SO-邪悪なことをやめよう」

回答:


1

実際、dbusセッションはマシンごとおよびXディスプレイごとです。

リモートSSHセッションを行うときは、別のX11ディスプレイ(通常はlocalhost:10)を使用します

すべてのdbusを強制終了してSSHセッションで起動すると、SSHセッションで機能します。しかし、明らかにそれはマシンの他のすべてのdbusセッションを壊します。

必要なのは、machine + displayのセッションがすでに存在するかどうかを確認し、存在する場合はそれを使用し、そうでない場合はその組み合わせの新しいdbusを起動してセッションに通知することです。

https://unix.stackexchange.com/a/188877/32769 を見て、$ HOME / .bash_profileファイルにこれらのテストを実行し、適切に実行できるbashブロックを探します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.