Как закрыть все приложения, прежде чем X-сервер понизится?

Можно использовать ncat - который также имеет порт окон - для передачи данных по сети. В одной системе Вы работаете, она в "слушает" режим, где она связывает с некоторым портом, в другой системе Вы соединяетесь с тем портом на другой машине. Это создает двунаправленный канал. На Linux можно выбрать из большего количества вариантов (GNU netcat, BSD netcat, socat...). Кроме очевидной страницы справочника, можно также взглянуть на Википедию netcat статья.

Примечание: в обеих системах Вы выполняете их в терминале (командная строка Windows, оболочка Unix) - вставка копии должна произойти дважды: на одной машине Вы копируете с источника и вставляете его в терминал, который выполняет ncat. Данные переданы другой машине, где Вы копируете его от терминала до его конечного места назначения.

Другая опция состоит в том, чтобы обмениваться файлами по доле Windows (Samba на Linux).

3
28.02.2014, 13:42
2 ответа
[1130094] Я думаю, что я наконец-то нашел причину этой проблемы. Похоже, что есть проблема с драйверами nvidia и xorg. Я попытался установить свежую систему только из репозитория [1130442]main[1130443] и проверил, не появится ли в лог-файле ошибка сегментации [1130444]- это не так. Итак, я установил тогда драйверы nvidia, и проблема вернулась.

Я думаю, что большинство ошибок из других приложений связано с этим дефектом сегментации, и поэтому некоторые приложения не могут просто сохранять настройки/данные при падении xserver.

Не уверен, что это касается всех версий драйверов nvidia, но уверен, что это касается [1130446]nvidia-legacy-304xx-driver[1130447]. Это хреново, потому что мне приходится использовать драйверы nvidia, и я понятия не имею, как исправить проблему. Может быть, дорога решит эту проблему, так что я думаю, что мне нечего делать, кроме как ждать...[1130099].

2
27.01.2020, 21:28

openbox-session не является настоящим менеджером сессий. Если у вас установлен GNOME, смотрите инструкции GDM/Openbox; вы можете использовать команду gnome-session-quit для завершения сеанса. Если у вас KDE, есть аналогичный подход для выбора openbox при входе в X.

В более легковесной системе (startx или xdm) есть два традиционных подхода:

  1. Игнорировать ошибки. Пусть X-сервер умрет, и пусть X-клиенты справятся с этим. Некоторые программы закрываются не так чисто, как хотелось бы, но последствия не катастрофичны. Несохраненные буферы редактора обычно могут быть восстановлены так же, как если бы система потеряла питание.
  2. Используйте менеджер сессий, такой как xsm (из x-session-utils) и запускайте оконный менеджер и все остальные приложения под ним. Это немного чище, поскольку дает приложениям больше шансов взаимодействовать с пользователем до выключения. Он требует немного больше настроек (описанных ниже).

В случае с xsm, вы можете настроить его, отредактировав эти файлы:

  • ~/.xsmstartup, чтобы вставить единственную строку

    openbox-session

  • ~/.xsession, чтобы убедиться, что последним запускается xsm (а не openbox).

Файл .xsmstartup используется только при первом запуске xsm для заполнения первой сессии. После этого xsm использует свои собственные записи для сохранения и перезапуска сессий.

Существует небольшой диалог, управляющий xsm, но вы можете заставить его начать выключение из командной строки, послав xsm сигнал TERM (pkill -u $(id -u) xsm).

0
27.01.2020, 21:28

Теги

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