Ошибка, так как переменная окружения $DISPLAY установлена ​​неправильно.

Ошибка, так как переменная окружения $DISPLAY установлена ​​неправильно.

Можно ли запустить сеанс xfreerdp в Microsoft Windows из установленной только в командной строке Linux?

Команда, которую я использую в полнофункциональной установке Linux, выглядит следующим образом:

$ sudo xfreerdp /v:farm.company.com /d:company.com \
    /u:oshiro /p:oshiro_password /g:rds.company.com

Эта команда работает нормально. Однако, когда я запускаю ту же команду из командной строки установки Linux, я получаю следующее сообщение об ошибке:

Please check that the $DISPLAY environment variable is properly set.
freerdp_set_last_error 0x20001
libfreerdp/core/freerdp.c:97: freerdp_pre_connect failed

У меня как установка Linux с графическим интерфейсом, так и установка Linux только с командной строкой — это Ubuntu 12.04. Обе установки имеют версию xfreerdp 1.2.0-beta1

решение1

Я предполагаю, что xfreerdp — это программа с графическим интерфейсом (клиент X). Поэтому в Linux для ее запуска вам понадобится «сервер X».
Это то, что у вас есть на Linux с графическим интерфейсом.
Вы не можете запустить ее в Linux, работающем только в командной строке.

В зависимости от того, что вы пытаетесь сделать, может иметь смысл запустить его в Linux только с командной строкой и показать GUI где-то еще по сети. Для этого и нужен DISPLAY.

Вы можете сделать что-то вроде:

export DISPLAY=guilinuxbox:0.0
xfreerdp ...

(но для этого вам нужно будет настроить разрешения)

Для иллюстрации того, чего следует ожидать при запуске простого X-сервера (как сейчас обсуждается в комментариях):

Вот как выглядит простой X-сервер — вы видите корневое окно с его шаблоном по умолчанию. Также будет указатель в форме «X»:

X11-пустое-корневое-окно-по умолчанию

решение2

  1. su root
  2. xdpyinfo
  3. найдите строку после «имени дисплея», например, имя дисплея:127.0.0.1:1.0 (что равно «1.0»)
  4. export DISPLAY=:1.0

Связанный контент