среда, 29 мая 2013 г.

Установка Openmeetings на Centos


Установка 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
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/openmeetings
 wget 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 

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

 mv /opt/red52/webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml 
/opt/red52/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml 

Откроем его чем угодно например vi и находим следущую строку
Url=jdbc:mysql://localhost:3306/openmeetings?
и ставим
, Username=openmeetings
, 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 и тестируем. Но это уже тема для отдельной статьи.

понедельник, 27 мая 2013 г.

Установка Windows XP поверх Windows 7

Установка Windows XP поверх Windows 7

Многим приходилось сталкиваться с ситуацией когда на одном компьютере приходилось иметь несколько операционных систем. Linux + Windows заслуживает отдельной статьи, здесь я расскажу об установке Windows XP поверх Windows 7. Следуя правилам Microsoft, для того чтобы без проблем можно было загружать и Windows 7 и Windows XP, следует сначала устанавливать Windows XP а затем Windows 7, чтобы при загрузке ПК без проблем можно выбрать операционную систему. Но те кто уже успел накатить  Windows XP поверх Windows 7 тем будет полезна эта статья, как вернуть к жизни Windows 7.
Теперь когда вы установили Windows XP, соотвественно выбор Windows 7 стал невозможным. Делаем следующее:
1) Загружаем Windows XP. Нажимаем правой кнопкой мыши на ярлыке "Мой компьютер" далее выбираем "Управление" и "Управление дисками"

* 

Обратите внимание на изменения, которые произошли со скрытым разделом "Зарезервировано системой" ("System Reserved"): он стал видимым (ему присвоена буква С). Посмотрим, что расположено на активном разделе (C). Для этого нужно в свойствах папки отключить скрытие системных файлов и разрешить их отображение:


* 
Затем заходим собственно на диск С:.и видим файлы bootmgr и папка Boot - файлы интерфейса загрузочного меню, файл данных для загрузки – bcd, файлы программы проверки памяти – memtest.exe. Также теперь там лежат файлы загрузки Windows XP: ntldr, ntdetect.com, boot.ini.

* 

2) Теперь будем восстанавливать загрузчик
Находим наш установочный диск с Windows 7. Вставляем его, и переходим в папку G:\boot\bootsect.exe. Где G: - соответсвено ваш диск.
Запустите командную строку: нажмите ПускВыполнить, в поле ввеcти cmd
G:\boot\bootsect.exe /nt60 all 
и смотрим результат выполнения
* 

Здесь он восстановит загрузочную запись Windows 7.
Теперь сделаем так чтобы был виден выбор ОС.
Как известно, утилиты для изменения данных конфигурации в XP нет, но она есть в папке с установленной Windows 7. Чтобы корректно применить ее в XP, нужно в командной строке войти в каталог System32 операционной системы Windows 7.
Например:
chdir d:\windows\system32 
 После перехода последовательно выполните следующие команды:
Bcdedit /create {ntldr} /d "Microsoft Windows XP"
Создаст хранилище загрузки Windos XP в хранилище Windows 7. Может не увенчаться успехом тогда сделаем так:
Bcdedit /set {ntldr} description "Microsoft Windows XP" - переименуем его.
Затем укажем корень загрузки для XP
 
Bcdedit /set {ntldr} device partition=C:
Bcdedit /set {ntldr} path \ntldr 

Теперь добавим строку выбора загрузки:
Bcdedit /displayorder {ntldr} /addlast 

Перегружаемся и выбираем необходимую нам ОС.
Удачи.