Почему я не могу запустить приложения Gnome по удаленной сессии SSH?

Я уверен, что исходная проблема была решена давно, но для кого-либо с подобной проблемой:

Один способ постараться не копировать целое изображение состоял бы в том, чтобы создать .vmdk изображение формата, которое относится для разделения файлов степени для таблицы разделов и для содержания раздела.

У меня есть этот отрывок, лежащий вокруг в .vmdk файле от теста, который я сделал только что:

RW 63 FLAT "parttable.bin" 0
RW 585937489 FLAT "partition-image.bin" 63

Это означает, что эти 63 сектора, начинающие со смещения 0, читаются из необработанного файла "parttable.bin", но сектор 63 и вверх прибывает из необработанного "раздела-image.bin" дампа раздела. (Конечно, замените 63 фактическим смещением к первому разделу, обычно 2048 в эти дни).

Конечный результат состоит в том, что из VBox похоже на предварительное ожидание таблицы разделов на передней стороне изображения раздела, не имея необходимость делать долгую операцию копии.

Разделите диск из VM и, если Вы разбираетесь в своих смещениях, необходимо видеть содержимые изображения раздела в недавно созданном разделе.

9
20.03.2014, 18:39
6 ответов
[119843] Я нашел это:

  1. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=639261

Что заставило меня попробовать это:

title        Ubuntu 8.04, kernel 2.6.24-18-generic (recovery mode)
root        (hd1,0)
kernel        /boot/vmlinuz-2.6.24-18-generic root=UUID=cdfc1bc0-d14b-4b48-ad24-7bb40ec2ccde ro single
initrd        /boot/initrd.img-2.6.24-18-generic


# title        Ubuntu 8.04, kernel 2.6.24-17-generic
# root        (hd1,0)
# kernel        /boot/vmlinuz-2.6.24-17-generic root=UUID=cdfc1bc0-d14b-4b48-ad24-7bb40ec2ccde ro splash
# initrd        /boot/initrd.img-2.6.24-17-generic
# quiet

# title        Ubuntu 8.04, kernel 2.6.24-17-generic (recovery mode)
# root        (hd1,0)
# kernel        /boot/vmlinuz-2.6.24-17-generic root=UUID=cdfc1bc0-d14b-4b48-ad24-7bb40ec2ccde ro single
# initrd        /boot/initrd.img-2.6.24-17-generic

Теперь я могу запустить гном-терминал![119850]

3
27.01.2020, 20:06

Действительно, когда SSH Session открыт, он не запускает сеанс DBUS. Некоторые программы могут запустить его, но затем сеанс не знает об этом (следовательно, не может закрыть его).

Не зная о сеансе ДБУС, также означает, что программы, которые используют DBU, но не запускают его самим, будут иметь проблемы.

Разделы ДБУС находятся на машине и отображение каждого X11. Их информация хранится в $ Главная / .dbus / Session-Bus / - - Тем не менее, этот процесс, указанный там может быть закрыт, поэтому требуется дополнительная проверка, чтобы определить, нужен ли запуск DBU или нет. Затем переменные должны быть экспортированы на сеанс.

Тогда он работает как очарование :)

Я положил следующее в моем файле .bash_profile:

# set dbus for remote SSH connections
if [ -n "$SSH_CLIENT" -a -n "$DISPLAY" ]; then
    machine_id=$(LANGUAGE=C hostnamectl|grep 'Machine ID:'| sed 's/^.*: //')
    x_display=$(echo $DISPLAY|sed 's/^.*:\([0-9]\+\)\(\.[0-9]\+\)*$/\1/')
    dbus_session_file="$HOME/.dbus/session-bus/${machine_id}-${x_display}"
    if [ -r "$dbus_session_file" ]; then
            export $(grep '^DBUS.*=' "$dbus_session_file")
            # check if PID still running, if not launch dbus
            ps $DBUS_SESSION_BUS_PID | tail -1 | grep dbus-daemon >& /dev/null
            [ "$?" != "0" ] && export $(dbus-launch) >& /dev/null
    else
            export $(dbus-launch) >& /dev/null
    fi
fi

Примечания: HostNameCTL является частью Systemd и позволяет получить машину ID Запуск DBUS-запуска отображает переменные, которые мы хотим; Используя Экспорт $ (DBUS-запуск) . Мы извлекаем выходные данные DBUS-запуска и экспортируете переменные

7
27.01.2020, 20:06

Попробуйте следующее:

rm $HOME/.dbus/session-bus/*
-2
27.01.2020, 20:06

Ни один из предыдущих ответов не помог в моем случае, но запуск приложения через dbus-launch выполнил свою работу:

ssh myhost "dbus-launch gnome-terminal --display localhost:10.0 &"
5
27.01.2020, 20:06

Интересно ... просто перезапуск dbus у меня не сработал, мне пришлось удалить файл идентификатора машины и перезапустить.

$ rcdbus stop
$ rm /var/lib/dbus/machine-id
$ rcdbus start

Это было на сервере SLES 11.4, который я недавно клонировал в VMWare. Моя проблема заключалась в том, что я не мог запустить yast2 или gedit ...

Это были ошибки, которые я видел в командной строке:

yast2

** (y2controlcenter-gnome:9981): WARNING **: error accessing /desktop/gnome/lockdown/disable_command_line [Failed to contact configuration server; some possible causes are that you need to enable TCP/IP networking for ORBit, or you have stale NFS locks due to a system crash. See http://projects.gnome.org/gconf/ for information. (Details -  1: Failed to get connection to session: Failed to connect to socket /tmp/dbus-W7H31tbhVY: Connection refused)]


** (y2controlcenter-gnome:9981): WARNING **:
GError raised: [Failed to contact configuration server; some possible causes are that you need to enable TCP/IP networking for ORBit, or you have stale NFS locks due to a system crash. See http://projects.gnome.org/gconf/ for information. (Details -  1: Failed to get connection to session: Failed to connect to socket /tmp/dbus-W7H31tbhVY: Connection refused)]

user_message: [libslab_get_gconf_value: error getting /desktop/gnome/applications/main-menu/lock-down/user_modifiable_apps] 

Спасибо за подсказку!

0
27.01.2020, 20:06

Просто запустите:

> dbus-launch gnome-terminal
1
27.01.2020, 20:06

Теги

Похожие вопросы