Провел анализ трех файлов
1) локально выполнил скрипт (успешно)
2) залогинился по ssh и выполнил скрипт
ssh [email protected]
$ /home/xbmc/change_to_desktop.sh
(успешно)
3) дал команду по ssh
ssh [email protected] /home/xbmc/change_to desktop.sh

1 и 2 содержат почти одинковый набор переменных
( за исключением PPID, приглашение системы, и
SSH_CLIENT='192.168.1.101 47162 22'
SSH_CONNECTION='192.168.1.101 47162 192.168.1.100 22'
SSH_TTY=/dev/pts/0)

А вот 3 вариант, который меня и интересует имеет много отличий, скриншот прилагаю.

Все что выше EUID=1000 одинаково, потому и не показал.

А теперь главный вопрос, где прописать, чтобы программа по ssh выполнялась в стандартном окружении переменных, как будто я залогинился по ssh и выполнил команду???
PS. Пробовал запускать и так ssh [email protected] “/bin/bash /home/xbmc/change_to_desktop.sh”, но результат все тот же.
Natrio
PoZiTPoH
По шеллу - ABSG
Это ещё я могу угадать, что сие расшифровывается как “Advanced Bash-Scripting Guide”, а гугл в ответ на такую аббервиатуру только всякую порнографию пишет :)
У меня первая ссылка про библию.
Вчера посмотрел первую лекцию от yandex по информационным технологиям. ОЧень познавательно
http://company.yandex.ru/academic/kit/
PoZiTPoH
SSH - это туннель, шифрующий данные (в сильнейшем упрощении). Он запускает еще один экземпляр shell-процессора (bash, zsh и прочие *sh) на удаленной стороне. Оттуда и берутся настройки ;)
Теперь все ясно. спасибо.
PoZiTPoH
1. По шеллу - ABSG
2. У вас иксы в 9 терминале пускаются сами? Всмысле вы это не настраивали? Просто дефолтненько vt7 используется…
Как же не настраивал, у меня иксы запускаются и на vt7 и на vt8 и на vt9 (такая интересная трехиксовая система). Медиакомбайн делаю.
А вот и настройки xinit /home/xbmc/start_video.sh – :2 vt9

Natrio попробую Ваш вариант.
Объясните еще одну вещь, когда я выполняю команду локально - переменные окружения одни, а когда удаленно, то уже какой то другой набор переменных, откуда берутся другие? ssh их создает что ли ? или подключившись по ssh команда выполняется вообще в другой среде переменных? Я думал, что подконектившись на удаленный терминал я использую теже настройки, что и локально на той машине.
Спасибо, частично помогло, теперь удаленно я могу выполнить команду
ssh [email protected] "xinit /home/xbmc/start_video.sh -- :2 vt9"
Но вот в чем прикол эта команда у меня вызывается из скрипта, т.е. на самом деле я к серверу обращаюсь так

ssh [email protected] /home/xbmc/change_to_video.sh
В этом скрипте происходит выбор действий, если Х не запущен то запустить, если запущен то просто переключиться
[[email protected] ~]$ cat change_to_video.sh
#!/bin/bash
F=/tmp/.X2-lock
[ -f $F ] && read P < $F
if [ -n "$P" -a -d "/proc/$P" ]
then sudo chvt 9
else xinit /home/xbmc/start_video.sh -- :2 vt9 &
fi
И вот в скрипте уже кавычки не поставишь, или есть способо поставить кавычки и выполнить команду ???
Natrio а откуда ты столько знаешь, я тоже хочу, можно ссылку на литературу по линукс.
Здравствуйте, установил e17 svn 58945-1 просто pacman -Sy e17-svn.
Через некоторое время e17 виснет, проверенно на двух компах, причем приложение, которое на переднем плане ( у меня оказался skype) отлично работает, только окошко подвинуть нельзя, зато курсор перемещения окна появляется если на заголовок навести.
Вопрос вот в чем, это e17 сам по себе такой глючный или перекомпиляция поможет? кто пользуется отпишитесь!
Как я запускаю.
При входе в систему запускается .xinitrc
exec /usr/bin/ck-launch-session dbus-launch --exit-with-session xbmc --standalone -fs
Затем на втором экране с помощью собственного скрипта запускается openbox:
else xinit `which /home/xbmc/start_desktop.sh` -- :1 vt8 &
[[email protected] ~]$ cat start_desktop.sh 
#!/bin/bash
exec ck-launch-session dbus-launch openbox-session
Решил попробовать как вы советуете
И еще я запускаю систему видеонаблюдения
else xinit `which /home/xbmc/start_video.sh` -- :2 vt9 &
[[email protected] ~]$ cat start_video.sh 
#!/bin/bash
unclutter &
firefox http://localhost/zm/?view=montage &
sleep 2 && xdotool key F11
# unclutter - chtobi mouse ne poyvlalas
openbox

Все это работает одновременно.
Сейчас зависает только последний вариант start_video.sh
Видимо exec ck-launch-session dbus-launch openbox-session помог
Если я буду еще одну копию openbox запускать также (exec ck-launch-session dbus-launch openbox-session) это нормально, что будет работать несколько ck-launch-session и dbus-launch?
Здравствуйте, после обновления системы pacman -Syu неправильно работает команда запуска X сервера, если ее запускать по ssh.
На машинах лежат ключи ssh, так что они общаются без пароля.
С удаленной машины на другую удаленную машину выполняется команда:
ssh [email protected] xinit `which /home/xbmc/start_video.sh` – :2 vt9 &
Эта команда начинает выполяняться, я вижу как мерцает экран, но start_video.sh не запускается, вместо него срабатывает .xinitrc, в котором прописан запуск xbmc.
Но если зайти на этот компьютер ssh [email protected]
и
там выполнить xinit `which /home/xbmc/start_video.sh` – :2 vt9 &
то все отлично работает.
Что за хрень? Вообще не пойму!!
Да не вообще не работает, на двух компах попробовал, на одном кде, на другом опенбокс
описАлся, без & openbox не запустится