Страница 3 из 4
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 14:22, 02.06.2012
				 viktor6
				Yaroslav писал(а):Я думаю проблема совсем в другом. А именно:
_XSERVTransMakeAllCOTSServerListeners: server already running
Fatal server error:
Cannot establish any listening sockets - Make sure an X server isn't already running
И как сию проблему решить?
 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 16:27, 03.06.2012
				 Indeferend
				server already running - переводится как сервер(иксы) уже запущен
а вы случайно это не делаете в графической оболочкой в эмуляторе терминала? если да, то понятно что из графики графику не стартануть
			 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 01:27, 04.06.2012
				 viktor6
				Indeferend писал(а):server already running - переводится как сервер(иксы) уже запущен
а вы случайно это не делаете в графической оболочкой в эмуляторе терминала? если да, то понятно что из графики графику не стартануть
смотри как у меня это все сделано
Держу комп как сервер на нем есть графика стоит монитор (на всякий случай но на нем не кто не работает)
Я из другого компа захожу через putty и пытаюсь запустить но оно не хочет
 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 12:20, 04.06.2012
				 Yaroslav
				viktor6 писал(а):
Держу комп как сервер на нем есть графика стоит монитор (на всякий случай но на нем не кто не работает)
Я из другого компа захожу через putty и пытаюсь запустить но оно не хочет
Ну так раз графика есть, то скорее всего X стартует вместе с системой. И тогда всё правильно. Оно тебе говорит, что сервере X уже запущен.
 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 00:31, 05.06.2012
				 viktor6
				Yaroslav писал(а):viktor6 писал(а):
Держу комп как сервер на нем есть графика стоит монитор (на всякий случай но на нем не кто не работает)
Я из другого компа захожу через putty и пытаюсь запустить но оно не хочет
Ну так раз графика есть, то скорее всего X стартует вместе с системой. И тогда всё правильно. Оно тебе говорит, что сервере X уже запущен.
 
Да я то это понимаю я спрашую как это решить?
 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 00:39, 05.06.2012
				 Yaroslav
				viktor6 писал(а):Да я то это понимаю я спрашую как это решить?
Ну убить сначала иксы работающие, наверное.
 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 14:03, 05.06.2012
				 viktor6
				Yaroslav писал(а):viktor6 писал(а):Да я то это понимаю я спрашую как это решить?
Ну убить сначала иксы работающие, наверное.
 
Зачем убивать работающие иксы?
 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 14:10, 05.06.2012
				 Yaroslav
				viktor6 писал(а):Зачем убивать работающие иксы?
Вариантов, как бы, не так и много. Или запускай в графической оболочке данного компа (не удалённо) под работающими иксами. Или запускай удалённую сессию иксов у себя локально (ssh -X) и тогда окно появится у тебя на компе, а процесс будет работать на удалённом, или убивай иксы и запускай под xvfb, тогда всё будет работать удалённо с «отображением» окна где-то в памяти, а не на экране.
Ведь твоя проблема в том, что не запускается xvfb. Потому, что порт, который он должен слушать, уже занят X сервером. А два процесса не могут одновременно занять один и тот же порт.
 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 16:06, 05.06.2012
				 viktor6
				Спасибо 
Yaroslav скрипт заработал
И так пишу как я у себя это все реализовал
создаем скрипт 
run.sh
Код: Выделить всё
#!/bin/sh
#Script by Indeferend 2009
#укажите путь до CommFort exe файла
/usr/bin/X11/Xvfb :2 -screen 10 800x600x16 -ac -br -c -fbdir /home/commfort/tmp &
export DISPLAY=:2
/usr/bin/wine /home/commfort/CommFort_server/CommFort_server.exe&
еще один скрипт 
is_tcp_port_listening_pl.pl
Код: Выделить всё
#!/usr/bin/perl -w
#
# Author: Ralf Schwarz <ralf@schwarz.ath.cx>
#         February 20th 2006
#
# returns 0 if host is listening on specified tcp port
#
use strict;
use Socket;
# set time until connection attempt times out
my $timeout = 3;
if ($#ARGV != 1) {
  print "usage: is_tcp_port_listening hostname portnumber\n";
  exit 2;
}
my $hostname = $ARGV[0];
my $portnumber = $ARGV[1];
my $host = shift || $hostname;
my $port = shift || $portnumber;
my $proto = getprotobyname('tcp');
my $iaddr = inet_aton($host);
my $paddr = sockaddr_in($port, $iaddr);
socket(SOCKET, PF_INET, SOCK_STREAM, $proto) || die "socket: $!";
eval {
  local $SIG{ALRM} = sub { die "timeout" };
  alarm($timeout);
  connect(SOCKET, $paddr) || error();
  alarm(0);
};
if ($@) {
  close SOCKET || die "close: $!";
  print "$hostname is NOT listening on tcp port $portnumber.\n";
  exit 1;
}
else {
  close SOCKET || die "close: $!";
  print "$hostname is listening on tcp port $portnumber.\n";
  exit 0;
}
#   END ====================================
создаем скрипт в папке 
/usr/local/bin/commfort
Код: Выделить всё
#!/bin/sh
usage (){
cat << EOF
	usage:
	$0 -h show this message
	$0 {restart|stop|start} [-host <127.0.0.1>] [-port <9750>] [-log </home/commfort/logs/commfort.log>] [-bin "su commfort -c /home/commfort/run.sh"]
EOF
}
comf_restart (){
	comf_stop
	sleep 30
	comf_start
}
comf_start (){
	cd `dirname $Comf_BIN`
	$Comf_BIN
}
comf_stop (){
	killall "CommFort_server.exe" > /dev/null
}
comf_check (){
	if perl /home/commfort/is_tcp_port_listening_pl.pl $Comf_HOST $Comf_PORT > /dev/null 2>&1
		then
			echo "online" > /dev/null
		else
			echo `date` не отвечает, перезапуск >> $Comf_LOG
			comf_restart
#	echo "zdox" 
	fi
}
Comf_HOST="127.0.0.1"
Comf_PORT="9750"
Comf_LOG="/home/commfort/logs/commfort.log"
Comf_BIN="/home/commfort/run.sh"
while getopts “host:port:log:” OPTION
do
	case $OPTION in
		host)
			Comf_HOST=$OPTARG
			;;
		port)
			Comf_PORT=$OPTARG
			;;
		log)
			Comf_LOG=$OPTARG
			;;
	 esac
done
case $1 in
	start)
		comf_start
		echo `date` start >> $Comf_LOG
		;;
	stop)
		comf_stop
		echo `date` stop >> $Comf_LOG
		;;
	restart)
		comf_restart
		echo `date` restart >> $Comf_LOG
		;;
	-h)
		usage
		exit 0
		;;
	*)
		comf_check
		;;
esac
exit 0
идем в папку 
/etc/cron.d
и создаем там запись 
Код: Выделить всё
*/3 * * * * commfort /usr/local/bin/commfort >/dev/null 2>&1
Все готово скрипт будет сам проверять подключения по порту 9750 если конекта нет то скрипт перезапускает сервер
 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 13:18, 23.01.2013
				 AZERI
				в каком смысле создаем запись? я просто не очень хорошо понимаю все в лине, можно подробней немножко?
			 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 14:03, 23.01.2013
				 Yaroslav
				AZERI писал(а):в каком смысле создаем запись? я просто не очень хорошо понимаю все в лине, можно подробней немножко?
В смысле добавляем строку в файле.
 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 23:15, 23.01.2013
				 AZERI
				Yaroslav писал(а):AZERI писал(а):в каком смысле создаем запись? я просто не очень хорошо понимаю все в лине, можно подробней немножко?
В смысле добавляем строку в файле.
 
у меня есть такая папка но файла нету, сразу говорю в лине зеленоватый, если можно порозжованней
 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 00:42, 24.01.2013
				 Yaroslav
				AZERI писал(а):у меня есть такая папка но файла нету, сразу говорю в лине зеленоватый, если можно порозжованней
Такая отмазка не будет прокатывать «в лине зеленоватый». Первая команда, которую рекомендую выучить, это 
man. Далее man crontab
В общем тебе надо выяснить как работает cron в твоём дистрибутиве, потому, что в разных дистрибутивах бывают разные рекомендации, что до расположения фалов расписания.
Что касается данно задачи, то в общих чертах в папке /etc/cron.d нужно создать файл и вписать туда данную строку. Насколько я помню, то файл называть можно произвольно. Касательно нашего случая, это может быть commfortd, например.
 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 13:21, 24.01.2013
				 AZERI
				
			 
			
					
				Re: Ман по установке Commfort 4 Server на Linux
				Добавлено: 16:04, 24.01.2013
				 Yaroslav
				
Во-первых, надо сначала безо всяких скриптов ручками запустить сервер так, чтобы всё работало. Я же вижу, например, что там ругается wine про отсутствие шрифтов. Решение этой проблемы выходит далеко за рамки данной дискуссии.
Второй момент, который я вижу, это ругательство на предмет того, что Х-сервер уже запущен. По этому поводу могу сказать, что после неудачного запуска надо поубивать всё, что запустилось, но не убилось автоматически. В данном случае это, наверное, xvfb не уиблся и пытается запускаться снова.
Но для того, чтобы разобраться, всё таки надо будет освоить базовые операции. Касательно этих вопросов советую начать с 
ps и 
kill. Первая показывает список процессов, вторая позволяет выборочно убивать процессы.