Я использую openSUSE 11.3 на своей рабочей станции на работе в KDE, у меня нет доступа к нему root. Оболочка по умолчанию была установлена в tcsh
. Когда я вошел на мою рабочую станцию и удаленно вошел с моего MacBook под управлением OS X 10.6, используя ssh
, например, так:
ssh -X -C user@workstation.edu
все отлично работает; однако, как только я это сделаю, я получаю ошибки DBUS на сеансе своей рабочей станции всякий раз, когда пытаюсь запустить что-либо с графическим интерфейсом, включая, к сожалению, диалоговое окно выхода из системы на панели задач. Я устал от убийства, startkde
чтобы выйти из системы в таких ситуациях.
В Интернете я нашел много инструкций по подключению к существующему сеансу dbus с использованием ssh, но я бы хотел сделать наоборот, оставить существующий сеанс dbus полностью нетронутым сеансом удаленного входа в систему ssh.
Если я сделаю
ssh -X -C user@workstation.edu dbus-launch konsole
это работает, так что только интерактивная оболочка входа в систему разрушает dbus. Как я должен изменить ~/.cshrc
? Имейте в виду , что у меня нет разрешения на изменение /etc/cshrc
, /etc/login
и т.д.
Я могу перечислить содержимое этих файлов здесь, если это необходимо.
Обновить:
Вот большой tar-файл со всеми скриптами, которые я смог найти:
dbus-launch konsole
, прерывает ли локальный сеанс? Или просто интерактивный логин ssh, при котором выexit
сразу нажимаете ?).Ответы:
На самом деле сеанс dbus для каждой машины и для каждого дисплея.
Когда вы делаете удаленный сеанс SSH, вы используете другой дисплей X11 (обычно localhost: 10)
Если вы убьете все dbus и запустите его в сеансе SSH, это сработает ... для сеанса SSH. Но очевидно, что это ломает все другие сессии dbus в машине.
Необходимо проверить, существует ли уже сеанс для дисплея «машина +», если да, использовать его, если нет, запустить новый dbus для этой комбинации и сообщить сеансу об этом.
Посмотрите на https://unix.stackexchange.com/a/188877/32769 блок bash, который вы можете поместить в файл $ HOME / .bash_profile, чтобы выполнить эти тесты и правильно сделать правильные вещи.
источник