"Display localhost:0 unavailable" и "xhost: unable to open display 'localhost:0'" в локальном терминале (не SSH) на Fedora 25

Вы можете сделать это, например, с помощью этого однострочного рубина:

$ ruby -e 'while c=STDIN.read(1); printf "%08b" % c.bytes.first; end'

Традиционные системы на основе C имеют плохую поддержку вывода в двоичном формате, AFAIK. Обычно это не очень полезно, так как его довольно сложно читать, в отличие от шестнадцатеричных дампов.

4
12.01.2017, 20:28
2 ответа

У меня это работает

export DISPLAY=':0'

например, я не могу открыть gedit или evince или что-либо еще с помощью графического терминала, но приведенного выше решения достаточно

1
29.04.2021, 00:05

Существует разница между значениями DISPLAY :0.0и localhost:0.0.

:0.0(или просто:0)означает «подключение к локальному X-дисплею #0 наиболее эффективным способом». Это может означать сокет UNIX для начального соединения, затем (, опционально ), согласование соединения на основе общей -памяти -для повышения производительности.

Значение localhost:0.0означает «подключение к локальному X-дисплею #0 с использованием сокета TCP через порт 6000» (номер порта = номер дисплея + 6000 ). Поскольку конфигурация X-сервера по умолчанию в большинстве дистрибутивов Linux, выпущенных в этом столетии, отключает TCP-соединения, это вряд ли будет работать без предварительного включения TCP-доступа к X-серверу.

И если вы не находитесь в защищенной сети и не знаете, что делаете, вам не следует включать TCP-доступ к X-серверу . В правильно настроенной современной системе не должно быть никаких причин для этого.

Обычные способы запуска сеанса X11 обычно автоматически устанавливают переменную среды DISPLAY. Если вы считаете, что вам нужно установить ее как рутинную операцию (в .bashrcили аналогичную ), вы, вероятно, делаете что-то неоптимальным -.

2
29.04.2021, 00:05

Теги

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