''Статья описывает, как установить OpenPLM сервер в дистрибутиве [http://ru.wikipedia.org/wiki/CentOS CentOS]'' '''Примечание переводчика''': Дистрибутив CentOS доступен в виде дисков с бинарными пакетами только для платных подписчиков, следовательно я не могу попробовать действия статьи. Требования к установке * Apache Server version: Apache/2.2.3 * PostgreSQL 8.1.22 * Python 2.6.5 * Django 1.1.4 '''Примечание 1''': Django framework может запускаться и на SQLite 3 и MySQL и с другими веб-серверами. Разработчики приветствуют все нововведения и идеи, пожелания и комментарии оставляйте на сайте разработчиков. Также, Вы можете посетить сайт Django для дополнительной информации: [http://www.djangoproject.com/ Django website]'''Примечание 2''': Эта инструкция призвана к удачной установке, но возможно не до конца оптимизирована. Все предложения приветствуются.== 4.2.2.Установка соединений с необходимыми репозиторями == 1. '''''rpm -Uvh !http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm''''' 1. '''''rpm -Uvh !http://download1.rpmfusion.org/free/el/updates/testing/5/i386/rpmfusion-free-release-5-0.1.noarch.rpm''''' 1. '''''rpm -Uvh !http://download1.rpmfusion.org/nonfree/el/updates/testing/5/i386/rpmfusion-nonfree-release-5-0.1.noarch.rpm''''' 1. '''''wget !http://www.graphviz.org/graphviz-rhel.repo''''' 1. '''''cp /path/to/graphviz-rhel.repo /etc/yum.repo.d/''''' '''римечание'':''' Если первые 3 команды не сработали, Вы можете скачать и переместить repo файл самостоятельно, через wget и cp как в последних двух командах.''== 4.2.3. Инсталляция необходимых пактов == 1. '''''yum groupinstall ‘Development Tools’''''' 1. '''''yum install centos-ds-base-devel gcc swig perl-!ExtUtils-!PkgConfig''''' 1. '''''yum install httpd mod_wsgi''''' 1. '''''yum install python26 python26-tools python26-devel python26-imaging''''' 1. '''''yum install postgresql-server libpqxx libpqxx-devel''''' 1. '''''yum install pyPdf python-pip''''' 1. '''''yum install graphviz graphviz-devel''''' == 4.2.4. Инсталляция !SetupTools из исходников == 1. '''''wget !http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg#md5=bfa92100bd772d5a213eedd356d64086''''' 1. '''''sh setuptools-0.6c11-py2.6.egg –install-dir=/usr/lib/python2.6/site-packages/''''' == 4.2.5. Установка gadFly/kjbuckkets из исходников == 1. '''''wget !http://sourceforge.net/projects/gadfly/files/gadfly/gadflyZip/gadflyZip.zip''''' 1. '''''cd /patch/to/gadflyZip.zip''''' 1. '''''unzip gadflyZip.zip''''' 1. '''''cd /patch/to/gadflyZip/''''' 1. '''''python2.6 setup.py install''''' 1. '''''cd kjbuckets''''' 1. '''''python2.6 setup.py install''''' == 4.2.6. Установка некоторых дополнений к Py == 1. '''''easy_install-2.6 setuptools''''' 1. '''''easy_install-2.6 odfpy''''' 1. '''''easy_install-2.6 hashlib''''' 1. '''''easy_install-2.6 psycopg2''''' 1. '''''easy_install-2.6 pyPdf''''' == 4.2.7. Установка pygraphviz из исходников == 1. '''''wget !http://pypi.python.org/packages/source/p/pygraphviz/pygraphviz-1.1rc1.tar.gz#md5=7e709a8bf8d5103b461a5f54a399ef0d''''' 1. '''''cd /patch/to/pygraphviz/''''' 1. '''''tar -xzvf pygraphviz-1.1rc1.tar''''' 1. '''''cd pygraphviz-1.1rc1''''' 1. '''''python26 setup.py install''''' == 4.2.8. Установка Django из исходников == 1. '''''wget !http://www.djangoproject.com/download/1.1.4/tarball/''''' 1. '''''cd /path/to/Django-1.1.4''''' 1. '''''tar -xzvf Django-1.1.4.tar.gz''''' 1. '''''cd Django-1.1.4''''' 1. '''''python2.6 setup.py install''''' == 4.2.9. Проверим, чтобы все было в порядке == Для Apache веб-сервера: {{{ root@openplm-demo:~# service httpd status Httpd is running (pid 5315). }}} Для Python : {{{ root@openplm-demo:~# python2.6 Python 2.6.5 (r265:79063, Feb 28 2011, 21:55:56) [GCC 4.1.2 20080704 (Red Hat 4.1.2-50)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> }}} '''Примечание''': ''нажмите `Ctrl-D` для выхода из редактора Python'' Для Django : {{{ root@openplm-demo:~# python2.6 /usr/bin/django-admin.py --version 1.1.4 }}} == 4.2.10. Взять исходники OpenPLM, используя Subversion == 1. '''''yum install subversion''''' 1. '''''mkdir /var/django''''' ''Все файлы при получении, будут записаны сюда:'' 1. '''''cd /var/django''''' 1. '''''svn co !svn://openplm.org/openPLM''''' ''Папка ./openPLM создана, и исходники в ней'' 1. '''''cd /var/django/openPLM''''' 1. '''''svn info''''' {{{ Path: . URL: svn://openplm.org/openPLM Repository Root: svn://openplm.org/openPLM Repository UUID: 5b46f505-65de-4892-aab2-a53e26d394e5 Revision: 195 Node Kind: directory Schedule: normal Last Changed Author: pjoulaud Last Changed Rev: 195 Last Changed Date: 2010-08-25 11:29:03 +0200 (mer., 25 août 2010) }}} == 4.2.11. Настройка PostgreSQL == == ''Старт PostgreSQL :'' == * '''''service postgresql start''''' == ''Проверка на запуск PostgreSQL:'' == * '''''ps aux|grep postgres''''' {{{ postgres 25961 0.0 0.9 50544 4968 ? S Aug26 0:14 /usr/lib/postgresql/8.4/bin/postgres -D /var/postgres postgres 25963 0.0 1.0 50664 5600 ? Ss Aug26 1:07 postgres: writer process postgres 25964 0.0 0.2 50544 1336 ? Ss Aug26 1:00 postgres: wal writer process postgres 25965 0.0 0.2 50808 1480 ? Ss Aug26 0:28 postgres: autovacuum launcher process postgres 25966 0.0 0.2 14664 1224 ? Ss Aug26 0:24 postgres: stats collector process root 27338 0.0 0.1 3324 804 pts/3 R+ 16:53 0:00 grep --color=auto postgres }}} '''Примечание: '''''Если PostgreSQL уже установлен, переходите к след. пунктам.''Установка пароля для ‘postgres’ пользователей[[BR]](в примере пароль будет ‘!MyPassword’ , но Вы можете поменять его на любой другой приемлемый) * '''passwd postgres''' * '''mkdir /var/postgres''' Все файлы, необходимые для запуска PostgreSQL будут записаны в эту папку * '''chown !postgres:postgres /var/postgres/''' * '''find / -name initdb''' {{{ /usr/bin/initdb }}} * '''su postgres''' * '''/usr/bin/initdb –encoding=UTF-8 –locale=fr_FR.UTF-8 –pgdata=/var/postgres/''' * '''/usr/bin/postgres -D /var/postgres &''' == 4.2.12. Изменение postgresql аутентификации и политики с последующим перезапуском == * '''vi /var/lib/pgsql/data/pg_hba.conf''' {{{ local all postgres ident sameuser local all all md5 host all all 127.0.0.1/32 md5 }}} * '''psql''' {{{ postgres=#create database openplm; postgres=#create role django with password 'MyPassword' login; \q }}} * '''exit''' * service postgresql restart'''''' == 4.2.13. Последняя инсталляция == * '''cd /var/django/openPLM/trunk/openPLM/''' Проверка на все модули: * python2.6 check_modules.py'''''' All is ok * '''./manage.py syncdb''' '''Примечание: '''''Вы создали суперпользователя для Django, и в этом примере имя ‘!MyAdmin’, но Вы можете поменять на любое другое приемлемое.'''''Внимание''': Отредактируйте файл'''''‘/var/django/openPLM/trunk/openPLM/settings.py’''''' и установите правильный пароль__''(‘!MyPassword’)''__ для поля __'''DATABASE_PASSWORD'''__Создадим папку, в которую будет помещен пакет OpenPLM: * '''mkdir /var/openPLM''' Установи нужные права на папку: * '''chown !www-data:www-data /var/openPLM''' Изменим права для папки под превью и навигационные схемы: * '''chown !www-data:www-data /var/django/openPLM/trunk/openPLM/media/thumbnails''' * '''chown !www-data:www-data /var/django/openPLM/trunk/openPLM/media/navigate'''[[BR]] Активируйте navigate.py правильно : * :command:[http://wiki.openplm.org/docs/ht_2_install_server_centos.html#id1 `]cp plmapp/navigate.py.centos plmapp/navigate.py Настройка Apache server : * '''vi /etc/httpd.d/conf/httpd.conf''' : {{{ WSGIScriptAlias / /var/django/openPLM/trunk/openPLM/apache/django.wsgi Alias /media /var/django/openPLM/trunk/openPLM/media Order deny,allow Allow from all Order deny,allow Allow from all }}} Перезапуск Apache server : * '''service httpd restart''' ''Примечание автора: У меня была проблема с WSGI, и мне пришлось создать  /var/www/.python-eggs каталог и установить правильные права.''== 4.2.14. Первые шаги в openPLM == Откройте броузер и введите {{{ http://your_site_adress/admin/ }}} Здесь your_site_adress дается как пример, Вы должны использовать свой ​​адрес сайтаВведите пароль и имя администратораВы можете добавлять и редактировать пользователей тут '''''Home>Auth>User ''''' И не забудьте исправить в '''''Home>Plmapp>User''''' профили для нужных прав под программы в работе с openPLM:'''Примечание''': Ссылка для большей информации  о [http://docs.djangoproject.com/en/dev/intro/tutorial02/ Django Admin tool].Можно совершать вход в систему:{{{ http://localhost/ }}}