Установка Openmeetings на Linux x86 x84
Здесь я расскажу как устанавливать Openmeetings на Centos.
Что же такое Openmeetings? Это система видеоконференции (почти скайп только без возможности звонков), которая позволяет видеть и разговаривать со своим собеседником в любой точке земного шара.
Из основных особенностей хотелось бы отметить:
1) Бесплатность
2) Возможность создания собственных комнат с установкой различного количества максимально подключаемых пользователей.
3) Возможность вести конференцию "один к одному" (все могут общаться друг с другом) и "один ко многим" один ведет, а остальные типа слушают.
4) Возможность создавать комнаты с модератором и без него.
5) Наличие электронной доски, которая видна всем. С возможностью выкладывать документы (.xls, .doc, .pdf., jpeg и многие др.)
6) Запись и сохрание конференции в .swf и .avi.
7) Возможность показа своего рабочего стола всем участникам.
Эта инструкция подходит для Centos 5.7 и выше. Я ставил на 6.3 х64. Здесь в принципе описываются общие действия по установке, которые подойдут как для x86 так и для х64 с некоторыми поправками.
Приступим:
1) Обновим yum
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
То нам повезло, и она уже установленна, если нет смотрим эту статью
http://onlyadmin.blogspot.com/2013/04/java-linux.html
Эта инструкция подходит для Centos 5.7 и выше. Я ставил на 6.3 х64. Здесь в принципе описываются общие действия по установке, которые подойдут как для x86 так и для х64 с некоторыми поправками.
Приступим:
1) Обновим yum
yum update yum upgrade
2)Добавим репозитарий
cd /tmp wget http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm rpm -ihv rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
3) Установим пакеты необходимы для корректной работы Apache Openmeetings
yum install freetype freetype-devel fontconfig fontconfig-devel java-1.6.0-openjdk-devel
libtiff libtiff-devel libjpeg-devel libjpeg giflib giflib-devel libpaper libpaper-devel
xml-commons-apis libpng libpng-devel libxml2 libxml2-devel fftw3 fftw3-devel cairo cairo-devel
flac flac-devel wavpack wavpack-devel libsndfile libsndfile-devel libmad libmad-devel
yasm-devel yasm
4)Установим LibreOffice который нужен для подгрузки файлов MS Office
сделаем это через групповую установку.
yum groupinstall 'Office/Productivity' yum install openoffice.org-headless
Если yum выдает ошибку что не существует группы 'Office/Productivity', значит для вашего
дистрибутива она может называться по другому. Для этого выполните:
yum grouplist
который выведет список доступных групп, где выберете нужную вам (догадаетесь по названию).
5) Запустим демона soffice который будет конвертить подгружаемые на доску документы MS Office
в нужный формат.
soffice "-accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager" -nologo -headless -nofirststartwizard &
6) Удалим ghostscript который ставитстся по умолчанию, затем поставим более новый из исходников.
rpm -e --nodeps ghostscript
7) Установим нужные программы Lame, Ghostscript, FFmpeg, SWFTOOLS, ImageMagick, SOX.
сd /usr/src wget ghostscript.com/releases/ghostscript-8.71.tar.gz tar zxvf ghostscript-8.71.tar.gz cd ghostscript-8.71 ./configure --prefix=/usr mkdir obj mkdir bin make all make install cd /usr/src wget downloads.sourceforge.net/project/lame/lame/3.98.4/lame-3.98.4.tar.gz tar zxvf lame-3.98.4.tar.gz cd lame-3.98.4 ./configure --prefix=/usr make all make install cd /usr/src wget www.swftools.org/swftools-0.9.1.tar.gz tar zxvf swftools-0.9.1.tar.gz cd swftools-0.9.1 ./configure --prefix=/usr make all make install
cd /usr/src wget jaist.dl.sourceforge.net/project/imagemagick/old-sources/6.x/6.6/ImageMagick-6.6.4-10.tar.gz tar zxvf ImageMagick-6.6.4-10.tar.gz cd ImageMagick-6.6.4-10 ./configure --prefix=/usr make all make install cd /usr/src wget ffmpeg.org/releases/ffmpeg-0.8.5.tar.gz tar zxvf ffmpeg-0.8.5.tar.gz cd ffmpeg-0.8.5 ./configure --enable-libmp3lame --enable-postproc --enable-gpl --enable-pthreads --enable-avfilter --prefix=/usr make all make install cd /usr/src wget downloads.sourceforge.net/project/sox/sox/14.3.1/sox-14.3.1.tar.gz tar zxvf sox-14.3.1.tar.gz cd sox-14.3.1 ./configure --prefix=/usr make all make install
8)Т.к на официальном сайте сказано что Openmeetings работает c SUN Java то нужно установить и ее.
Для начала проверим не установлена ли SunJava уже, а вдруг повезет
java -version
Если вывело, что то вида (версии могут отличаться):
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
http://onlyadmin.blogspot.com/2013/04/java-linux.html
9) Теперь собственно скачаем сам Openmeetings
mkdir /home/openmeetings cd /home/openmeetingswget http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.zip
unzip apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.zip
10) Скопируем наш сервер в удобную папку например /opt/openmeetings
cp -r /home/openmeetings/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108 /opt/openmeetings
11) Дадим права .red5.sh на запуск
cd red5/ chmod +x red5.sh
./red5.sh
И вот тут при старте ждет первый прикол. Вылезет ошибка:"red5 cannot run without an instance id".
Ох уж я и намучился решая ее, но вам скажуее просто решить.
Добавьте в /etc/hosts ваш ip интерфейса на котором будет крутится Openmeetings и любое имя, и вуаля все работает.
12) Делаем автозапуск Openmeetings
Создадим в ./etc/init.d файл red5 например дадим ему право на запуск
cd /etc/init.d
touch red5
chown root.root red5
chmod 755 red5
Затем скопируйте скопируйте содержимое скрипта в этот файл, выставив RED5_HOME в
соотвествиий с тем где у вас находится Openmeetings
#!/bin/bash # For RedHat and cousins: # chkconfig: 2345 85 85 # description: Red5 flash streaming server # processname: red5 # Created By: Sohail Riaz (sohaileo@gmail.com) # Modified by Alvaro Bustos PROG=red5 RED5_HOME=/opt/openmeetings DAEMON=$RED5_HOME/$PROG.sh PIDFILE=/var/run/$PROG.pid # Source function library # . /etc/rc.d/init.d/functions [ -r /etc/sysconfig/red5 ] && . /etc/sysconfig/red5 RETVAL=0 case "$1" in start) #echo -n $"Starting $PROG: " #/usr/lib64/libreoffice/program/soffice "-accept=socket,host=127.0.0.1,port=8100,tcpNoDelay=1;urp;" -headless -nodefault -nofirststartwizard -nolockcheck -nologo -norestore & sleep 5 cd $RED5_HOME start-stop-daemon --start -c nobody --pidfile $PIDFILE $DAEMON >/dev/null 2>/dev/null & RETVAL=$? if [ $RETVAL -eq 0 ]; then echo $! > $PIDFILE # touch /var/lock/subsys/$PROG fi # [ $RETVAL -eq 0 ] && success $"$PROG startup" || failure $"$PROG startup" echo ;; stop) pkill soffice.bin start-stop-daemon --stop --quiet --pidfile $PIDFILE \ --name java rm -f $PIDFILE echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$PROG ;; restart) $0 stop $0 start ;; status) status $PROG -p $PIDFILE RETVAL=$? ;; *) echo $"Usage: $0 {start|stop|restart|status}" RETVAL=1 esac exit $RETVAL
Впринципе теперь уже можно пробовать запускать наш сервер. Но Apache рекомендует
использовать MySQL, для более высокой производительности.
Для того чтобы настроить Openmeetings на использование MySQL, читай следующий абзац.
Openmeetings и MySQL
Для того чтобы настроить Openmeetings на использование MySQL, делаем следующее:
1) Качаем mysql-server
yum install mysql-server
2) Запускам MySQL сервер
service mysqld start
3)Устанавливаем пароль для root
mysqladmin -u root password 123
4)Заходим в командную строку mysql
mysql -u root -p 123
5)Создадим базу данных
mysql> create database openmeetings default character set 'utf8';
6) Создадим пользователя для базы данных
grant all privileges on openmetings.* to 'openmeetings@localhost' identified by '123' with grant option;
7)Скачаем и установим mysql-connector необходимый Openmeetings для работы с MySQL
cd /opt
wget http://mysql.azc.uam.mx/Downloads/Connector-J/mysql-connector-java-5.1.23.zip
unzip mysql-connector-java-5.1.23.zip
cp /opt/mysql-connector-java-5.1.23/mysql-connector-java-5.1.23-bin.jar
/opt/openmeetings/webapps/openmeetings/WEB-INF/lib
/opt/openmeetings/webapps/openmeetings/WEB-INF/lib
8) Теперь подправим конфигурационные файлы переименуем оригинальный конфиг, а затем на место него скопируем mysql_persistence.xml и подправим
mv /opt/openmeetings/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml
/opt/openmeetings/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml-ori
/opt/openmeetings/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml-ori
mv /opt/red52/webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml
/opt/red52/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml
/opt/red52/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml
Откроем его чем угодно например vi и находим следущую строку
Url=jdbc:mysql://localhost:3306/openmeetings?
и ставим
, Username=openmeetings
, Password=123"/>
, Password=123"/>
т.е соотвественно ваше имя пользователя и пароль, котрого мы создали на предыдущем этапе.
Все с основной работой справились
Теперь:
Перезапустим Openmeetings
service red5 restart или
cd /opt/openmeetings/
./red5.sh
Теперь заходим в браузер и набираем
http://DOMAIN_NAME:5080/openmeetings/install
где DOMAIN_NAME соответсвенно имя или ip адрес вашего сервера
Должно открыться окно следующего содержания
Нажимаем Continue With Step1
Здесь вводим:
- имя пользователя с правами администратора
- пароль
- свой email адрес
- и имя организации (обязательно)
- а также язык
Затем в этом окне вводим
Здесь пропишем пути к нашим конвертерам
FFMPEG Path = /usr/local/bin
JOD Path = /opt/jodconverter-core-3.0-beta-4/lib
А также если у вас стоит x64 то пропишем путь к OpenOffice/LibreOffice
OpenOffice/LibreOffice = /usr/lib64/libreoffice
Все.
Теперь заходим
http://DOMAIN_NAME:5080/openmeetings и тестируем. Но это уже тема для отдельной статьи.