Как запустить сеанс рабочего стола без x и при этом запустить скрипт?

Как запустить сеанс рабочего стола без x и при этом запустить скрипт?

У меня есть сервер Ubuntu с LXDE для разработки. Как мне создать файл .desktop для запуска сеанса, который не запускает x, а фактически регистрирует меня в обычном сеансе tty1, а также запускает определенный скрипт?

решение1

Мне не совсем понятно, хотите ли вы зайти на этот сервер с другого компьютера, и где находится скрипт, который вы хотите выполнить.

Однако вы можете выполнить скрипт через ssh. Давайте рассмотрим это в 2 шага.

Шаг 1: Запустите командную строку.

Если это локальный скрипт, вы можете сделать что-то похожее на это

 ssh me@MyServer '/bin/bash -s' < /path/to/local_script.sh

если это удаленный скрипт, вы можете сделать что-то похожее на

 ssh me@MyServer "/bin/bash /path/to/remote_script.sh"

Если компьютер, с которого вы хотите запустить скрипт, является самим сервером, вы можете заменить MyServerего на localhost.

Шаг 2. Сделайте .desktopфайл.

Создайте ~/Desktop/MyDesktopShort.desktopфайл и напишите внутри что-то похожее на это

[Запись рабочего стола]
Версия=1.0
Exec=/path/to/local_script.sh
Имя=Давайте запустим его
GenericName=SSH-сервер
Комментарий=Выполнить мой скрипт на сервере
Кодировка=UTF-8
Терминал=true
Тип=Приложение
Категории=Приложение;Сеть;

Если скрипт находится на удаленной машине, напишите sshкоманду, которую вы проверили ранее, через командную строку.

Для получения более подробной информации проверьтездесь о синтаксисе .desktopили дажездесь.

Часть Exec, где вы можете написать, что вы хотите выполнить.
Я не могу помочь вам подключиться конкретно к tty1, но через него sshвы будете подключены к первому ttyдоступному.
Заключительные замечания:

  • вам необходимо sshdзапустить на серверной машине.
  • всегда лучше /bin/bash, чем просто bashизбегать возможныхтроянские кониатаки.

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