ssh -X
- это не то же самое, что startx
. SSH - это программа, используемая для подключения к другому компьютеру с помощью оболочки. X - программа графического отображения.
SSH можно использовать в качестве интерактивной командной оболочки, а также для переадресации портов. ssh -X
перенаправляет порт локального дисплея X на удаленный компьютер и обычно устанавливает удаленную среду, чтобы при удаленном запуске графической программы он отображался локально. Обычно таким способом вы не запускаете весь рабочий стол, такой как KDE; вы просто запустите одну или две программы.
startx
- это команда, используемая для локального запуска X-сервера при входе в консоль сервера, то есть на физическую клавиатуру и экран. Большинство людей избегают использовать startx, потому что это может быть угрозой безопасности, если вы оставите свой компьютер без присмотра. При запуске X создается вторая виртуальная консоль (первой была текстовая консоль, в которую вы вошли), и кто-то может переключиться обратно на текстовую консоль (CTRL-ALT-F1 или что-то подобное) и нажать CTRL-C, чтобы убить вашу консоль X, и затем они вошли как вы в вашей текстовой консоли. Но если вы не оставляете компьютер без присмотра, то может быть целесообразно использовать его иногда.
Обычный способ запустить полноценный графический рабочий стол в системе - использовать менеджер входа в систему, такой как XDM (или GDM/KDM для Gnome/KDE). На RedHat и в друзьях это обычно достигается переключением на уровень запуска 5. В командной строке вы можете набрать telinit 5
для временного переключения или отредактировать /etc/inittab
чтобы установить уровень запуска по умолчанию (типичные варианты: 3 - нет X - и 5 - с X).
Что касается запуска GNOME и KDE, по умолчанию при запуске startx
CentOS должен запускать один из них (возможно, GNOME). Существуют файлы конфигурации, которые вы можете изменить, чтобы переопределить настройки по умолчанию.
Если вы хотите получить удаленный доступ к полной среде рабочего стола, вам нужно настроить XDM для удаленного доступа или использовать VNC или другой протокол удаленного рабочего стола. Для полного рабочего стола я бы порекомендовал что-то вроде VNC, потому что таким образом ваша сессия остается открытой, когда вы отключены. Но вы должны учитывать, что типичный X или VNC по сети не шифруется, и вы можете настроить туннель переадресации ssh-портов для шифрования данных. Если вы просто запустите одно или два приложения с помощью ssh -X
оно будет уже зашифровано.
Какой тип клиентского компьютера вы используете для подключения к этому серверу? И для ssh -X
и для XDM требуется локальный дисплей X, а для чего-то вроде VNC - нет.
Редактировать: Если у вас есть X-сервер на вашем локальном компьютере, вы можете использовать ssh -X для подключения к компьютеру CentOS и запустить программу, такую как firefox, которая будет отображаться в macbook. Эта ссылка содержит информацию об использовании X в MacOS X. По умолчанию X-сервер Apple показывает каждое приложение в своем собственном окне, которое идеально подходит для запуска нескольких приложений с использованием метода ssh -X
. Однако, если вы хотите запустить полностью полноэкранную графическую среду, вам необходимо подключить локальный X-сервер к XDM CentOS; Затем вы увидите (на своем MacBook) экран, похожий на тот, который вы увидели бы, если бы вы вошли в локальную консоль CentOS. Это в основном использует ваш Macbook как тупой терминал: только дисплей, клавиатура и мышь используются локально. Программы выполняются на машине CentOS. К сожалению, я не могу помочь вам настроить тупой терминал, так как прошло около 10 лет с тех пор, как я это делал в последний раз.
Если у вас нет X-сервера на локальном компьютере, вы можете настроить что-то вроде VNC (подробнее о продуктах для удаленного рабочего стола см. Здесь), чтобы сеанс X работал на сервере, на его физическом дисплее, но мог получить удаленный доступ с компьютера с помощью соответствующего клиента удаленного рабочего стола. Например, в KDE есть приложение для общего доступа к рабочему столу, которое предоставляет запущенный сеанс KDE через VNC. Вы можете войти на сервер CentOS (через XDM или text-console + startx), запустить общий доступ к рабочему столу, а затем подключиться к нему с помощью клиента VNC на Macbook.