SSH 원격 로그인이 dbus를 파괴하는 것을 방지하는 방법은 무엇입니까?

SSH 원격 로그인이 dbus를 파괴하는 것을 방지하는 방법은 무엇입니까?

KDE에서 작동하는 워크스테이션에서 openSUSE 11.3을 실행하고 있는데 루트 액세스 권한이 없습니다. 기본 셸은 으로 설정되어 있습니다 tcsh. 내 워크스테이션에 로그인하고 OS X 10.6을 실행하는 MacBook을 사용하여 원격으로 로그인하면 ssh다음과 같습니다.

ssh -X -C [email protected]

모든 것이 잘 작동하지만 완료되면 GUI를 사용하여 무엇이든 시작하려고 할 때마다 워크스테이션 세션에 DBUS 오류가 발생합니다. 불행하게도 작업 표시줄 패널에 로그아웃 대화 상자가 포함되어 있습니다. startkde이런 상황에서 로그아웃하려고 사람을 죽이는 것도 지겹습니다 .

SSH를 사용하여 기존 dbus 세션에 연결하는 방법에 대한 많은 지침을 온라인에서 찾았지만 그 반대를 수행하여 기존 dbus 세션을 SSH 텔넷 세션의 영향을 완전히 받지 않게 만들고 싶습니다.

만약 내가한다면

ssh -X -C [email protected] dbus-launch konsole

이것은 작동하므로 대화형 로그인 쉘만 dbus를 중단합니다. 어떻게 수정해야 합니까 ~/.cshrc? 등의 수정권한은 없음을 명심해 주시기 바랍니다 /etc/cshrc./etc/login

필요한 경우 여기에 이러한 파일의 내용을 나열할 수 있습니다.

고쳐 쓰다:

찾을 수 있는 모든 스크립트가 포함된 큰 tar 파일은 다음과 같습니다.

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

답변1

실제로 dbus 세션은 머신별, X 모니터별입니다.

원격 SSH 세션이 있는 경우 다른 X11 디스플레이(일반적으로 localhost:10)를 사용합니다.

모든 dbus를 종료하고 SSH 세션에서 시작하면 SSH 세션에서 작동합니다. 그러나 분명히 머신의 다른 모든 dbus 세션이 중단됩니다.

필요한 것은 머신+모니터에 대한 세션이 이미 존재하는지 확인하고, 그렇다면 이를 사용하고, 그렇지 않은 경우 해당 조합에 대해 새 dbus를 시작하고 세션에 이를 알리는 것입니다.

보고 있다https://unix.stackexchange.com/a/188877/32769 Bash 블록의 경우 $HOME/.bash_profile 파일에 넣어 이러한 테스트를 수행하고 올바른 작업을 수행할 수 있습니다.

관련 정보