Fedoraway - блог SergeyR

Блог создан для систематизации моих знаний в использовании и администрировании Linux вообще и Fedora в частности.SergeyRhttp://www.blogger.com/profile/[email protected]
Адрес: http://feedproxy.google.com/~r/FedoraWay/~3/GHH_5Tq5r6g/akmod-nvidia.html
Обновлено: 41 неделя 5 дней назад

Релиз ОС Fedora 14 и Russian Fedora 14

Ср, 2010-11-03 21:04
  Итак вышел релиз ОС Fedora 14, одновременно с ней был выпущен релиз ремикса Russian Fedora. Обновление для тех кто уже установил предыдущую версию Fedora, как обычно производим с помощью утилиты preupgrade. Или обновлением пакетов fedora-release и fedora-release-notes.
 Новшеств в данном релизе не особенно много, из основных для пользователя стоит отметить последнюю версию KDE 4.5, с поддержкой звукового сервера Phonon. Большинство нововведений относится именно к KDE. Добавлены новые версии сред Sugar, и окружение MeeGo. Новые пакеты
gnome-applet-netspeed для слежения за трафиком по каналам, eurephia система аутентификации в OpenVPN и gnome-gmail для работы с почтовой системой.
 Полный список изменений можно увидеть на сайте документации федора здесь.


Категории: Техническая зона

Установка сервера 1С предприятия на CenOS 5.5

Втр, 2010-10-26 21:35
  Создание сервер 1C предприятия на базе CentOS, имеет некоторые нюансы. Не учтенные они могут в последствии вызвать некоторые проблемы. Изначально я устанавливал те пакеты которые предлагают сами 1c, но в процессе использования понял, что данные пакеты собраны очень криво и не будут работать адекватно. Поэтому последние версии я собирал сам, но и тут скрывалось пару подводных камней. Например сборка по x86_64 вызвала непонятные сбои в базе данных на поиск причины которых я потратил не мало времени. Поэтому я использовал 32-битную CentOS.
  Итак скачиваем дистрибутив и устанавливаем его на наш сервер. После установки следует скачать SRPM Postgresql с сайта 1С отсюда, берем версию 8.3.8 как самую стабильную сборку 1С на данный момент. Так же нам понадобится библиотека icu, скачать можно с официального сайта. Нам нужна версия 3.4 находится она здесь, скачайте сжатый архив исходников для LInux:
 #wget ftp://ftp.software.ibm.com/software/globalization/icu/3.4.1/icu-3.4.1.tgz  На свежеустановленной системе инсталлируем все что нужно для сборки пакетов для системы:
#yum install rpm-build glibc-devel bison flex python-devel tcl-devel readline-devel zlib-devel pam-devel gcc doxygen gcc-c++  В самом начале создаем непривилигерованного пользователя от имени которого мы будем производить сборку пакетов.
#useradd  builduser
#passwd builduserТеперь создадим дерево каталогов для сборки пакетов, в Fedora это делается одной командой, здесь придется выполнить две :)
#mkdir -p ~/rpmbuild/{BUILD,RPMS,S{OURCE,PEC,RPM}S}
#echo "%_topdir $HOME/rpmbuild" > ~/.rpmmacros  Ну вот все приготовительные действия закончены, начнем сборку пакетов. Во первых соберем libicu который требуется для 1c предприятия, для этого помещаем скачанный архив icu-3.4.1.tgz в каталог сборочного дерева для исходных кодов:
#cp icu-3.4.1.tgz ~/rpmbuild/SOURCES/  Нам понадобится spec файл для сборки пакета, я брал его из более поздней версии исходных кодов, привожу его здесь полностью:
Name:            icu
Version:        3.4.1
Release:        3.1
Summary:        International Components for Unicode

Group:          Applications/Text
License:        X License
URL:            http://www.ibm.com/software/globalization/icu/
Source0:        ftp://ftp.software.ibm.com/software/globalization/icu/%{version}/%{name}-%{version}.tgz
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires:  doxygen

%description
The International Components for Unicode (ICU) libraries provide
robust and full-featured Unicode services on a wide variety of
platforms.

%package     -n lib%{name}
Summary:        International Components for Unicode - libraries
Group:          System Environment/Libraries

%description -n lib%{name}
%{summary}.

%package     -n lib%{name}-devel
Summary:        Development files for International Components for Unicode
Group:          Development/Libraries
Requires:       lib%{name} = %{version}-%{release}

%description -n lib%{name}-devel
%{summary}.

%package     -n lib%{name}-doc
Summary:        Documentation for International Components for Unicode
Group:          Documentation

%description -n lib%{name}-doc
%{summary}.


%prep
%setup -q -n %{name}

%build
cd source
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
%configure --enable-static --with-data-packaging=library --disable-samples
make # %{?_smp_mflags} # -j(X>1) may "break" man pages as of 3.2, b.f.u #2357
make doc


%install
rm -rf $RPM_BUILD_ROOT source/__docs
make -C source install DESTDIR=$RPM_BUILD_ROOT
make -C source install-doc docdir=__docs
chmod +x $RPM_BUILD_ROOT%{_libdir}/*.so.*


%check || :
make -C source check


%clean
rm -rf $RPM_BUILD_ROOT


%post -n lib%{name} -p /sbin/ldconfig

%postun -n lib%{name} -p /sbin/ldconfig


%files
%defattr(-,root,root,-)
%doc license.html readme.html
%{_bindir}/derb
%{_bindir}/genbrk
%{_bindir}/gencnval
%{_bindir}/genrb
%{_bindir}/makeconv
%{_bindir}/pkgdata
%{_bindir}/uconv
%{_sbindir}/*
%{_mandir}/man1/derb.1*
%{_mandir}/man1/gencnval.1*
%{_mandir}/man1/genrb.1*
%{_mandir}/man1/makeconv.1*
%{_mandir}/man1/pkgdata.1*
%{_mandir}/man1/uconv.1*
%{_mandir}/man8/*.8*

%files -n lib%{name}
%defattr(-,root,root,-)
%{_libdir}/*.so.*

%files -n lib%{name}-devel
%defattr(-,root,root,-)
%{_bindir}/%{name}-config
%{_mandir}/man1/%{name}-config.1*
%{_includedir}/layout
%{_includedir}/unicode
%{_libdir}/*.a
%{_libdir}/*.so
%{_libdir}/%{name}
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}/%{version}
%{_datadir}/%{name}/%{version}/mkinstalldirs
%{_datadir}/%{name}/%{version}/config
%doc %{_datadir}/%{name}/%{version}/license.html

%files -n lib%{name}-doc
%defattr(-,root,root,-)
%doc source/__docs/%{name}/html/*

 В SPEC для icu я исправил под более старую версию пакета некоторые параметры.
 Итак создаем данный spec файл в каталоге ~/rpmbuild/SPECS/:
#vi ~/rpmbuild/SPECS/icu.spec И проводим сборку пакета от непривилегированного пользователя builduser:
#rpm -bb  ~/rpmbuild/SPECS/icu.spec Если все хорошо, устанавливаем собранные пакеты, командой от root:
#rpm -ihv /home/builduser/rpmbuild/RPMS/i386/libicu-devel-3.4.1-3.1.i386.rpm  /home/builduser/rpmbuild/RPMS/i386/libicu-3.4.1-3.1.i386.rpm Теперь от пользователя builduser скачиваем postgresql:
#wget http://v8.1c.ru/overview/postgresql_patches/8-3-8/postgresql-8.3.8-1.1C.src.rpm Устанавливаем его в дерево каталогов, запустив от пользователя builduser команду:
#rpm -ihv postgresql-8.3.8-1.1C.src.rpm Немного исправим spec файл для postgresql от 1С, который после установки SRPM должен находится в каталоге SPECS, , в нем следует найти такие строки:
cp %{local_libdir}/libicuuc.so.34 %{buildroot}/%{_libdir}/pgsql
cp %{local_libdir}/libicui18n.so.34 %{buildroot}/%{_libdir}/pgsql
cp %{local_libdir}/libicudata.so.34 %{buildroot}/%{_libdir}/pgsql И исправить их на такие:
cp %{_libdir}/libicuuc.so.34 %{buildroot}/%{_libdir}/pgsql
cp %{_libdir}/libicui18n.so.34 %{buildroot}/%{_libdir}/pgsql
cp %{_libdir}/libicudata.so.34 %{buildroot}/%{_libdir}/pgsql Возможно вы захотите что бы postgres использовал библиотеку libicu от самих 1C, тогда вам придется установить сначала сам сервер 1C, о чем я написал ниже, и в SPEC файле указать пути до библитек из сборки 1С:

cp /opt/1C/v8.1/i386/libicuuc.so.34 %{buildroot}/%{_libdir}/pgsql
cp /opt/1C/v8.1/i386/libicui18n.so.34 %{buildroot}/%{_libdir}/pgsql
cp /opt/1C/v8.1/i386/libicudata.so.34 %{buildroot}/%{_libdir}/pgsql
 И запускаем сборку:
#rpmbuild -bb ~/rpmbuild/SPECS/postgresql-8.3.1C.spec Если сборка завершилась удачно, в сборочном дереве, в каталоге RPMS мы получим наши rpm файлы для установки. Устанавливать их следует командой:
#rpm -ihv /home/builduser/rpmbuild/RPMS/i386/postgresql-* После установки нужно изменить файл профиля для пользователя postgres который создается при установке postgresq, точнее следует указать какую локаль следует использовать серверу Postgresq, для этого открываем файл /var/lib/pgsql/.bash_profile и добавляем следующие строчки:

LANG=ru_RU.UTF-8
export LANG Кстати там я заметил переменную PGDATA которая казалось бы должна определять где будет лежать база данных, но она не работает. Такая же переменная существует в скрипте запуска сервера, думаю что если поменять ее значение в обоих местах то можно добиться что бы база лежала в нужном месте, я не стал заморачиватся так как все равно делаю бекапы на другой компьютер в сети. Итак после того как переменная будет записана делаем инициализацию базы данных:
#service postgres initdb Теперь поправим конфигурационный файл что бы можно было заходить локально без пароля, что бы этот самый пароль установить. Открываем файл /var/lib/pgsql/data/pg_hba.conf и изменяем там строчку:
host    all         all         127.0.0.1/32          md5на:
host    all         all         127.0.0.1/32          trustтеперь можно запустить сервер:
#service postgres startи войти в систему под пользователем postgres:

#psql -h 127.0.0.1 -U postgres И поменять пароль доступа для пользователя postgres:

>ALTER USER postgres PASSWORD 'password'; Теперь вновь открываем конфиг /var/lib/pgsql/data/pg_hba.conf и меняем там в строчке:
host    all         all         127.0.0.1/32          trust Слово trust на md5.
 Сделаем перезагрузку сервера:
 #service postgres reload Теперь с postgresql законченно. Следующий шаг установка самого сервера 1C. Скачайте ваш дистрибутив с сайта 1C, напрмиер в домашнюю директорию и установите его командой:
#rpm -ihv ~/1C_Enterprise-* Следует скачать драйвера от аппаратного ключа и сервер лицензия для него же, взять их можно отсюда: aksusdb и hasplm.
 Скачиваем и распаковываем их. Втыкаем ключи. Файлы hasplm-redhat-8.30-1.i386.rpm и aksusbd-redhat-1.8.1-3.i386.rpm копируем на сервер и ставим командой:
#rpm -ihv hasplm-redhat-8.30-1.i386.rpm aksusbd-redhat-1.8.1-3.i386.rpm Все защита установлена, теперь запускаем сервер предприятий:
#service srv1cv81 startЕсли все стартовало нормально, ставим клиент. Я ставил клиента с SMB ресурса с опцией /adm что позволяет обновить все клиенты в сети. Но это не обязательно. Кстати клиент для 1C неплохо работает под wine. Теперь с помощью консоли управления сервером создаем базу данных, как приведено ниже на скриншотах, тока не забудьте поставить данные актуальные для вас ;) :





Все прошло хорошо? Тогда запускаем клиент указываем существующую базу данных our_base на сервере 1с_server и загружаем свой конфигурацию! На этом пока все.


Категории: Техническая зона

Установка и настройка сервера управления предприятием Alfresco

Пт, 2010-09-17 21:45
  Система управления предприятием Alfresco один из самых мощных проектов из подобных Opensource проектов. Продукт написан на Java и имеет приятный и понятный пользовательский интерфейс. К сожалению система не доступна из репозитариев, но установщик Community версии достаточно хорошо работает из коробки. Итак, для начала скачем пакет для Linux с официального сервера Alfresco здесь. После того как пакет будет скачан, следует установить его. Запускать его можно как от обычного пользователя так и от root. Запустите установку пакета, предварительно присвоив ему бит запускаемости:
#chmod +x Alfresco-Community-3.3g-Linux-x86-Install
#./Alfresco-Community-3.3g-Linux-x86-Install
  Я устанавливал пакет на сервер где не было X-ов, если запускать установщик под ними, то вы увидите мастер установщик, наподобие стандартных мастеров Windows. Я же буду говорить о консольном варианте, в общем то между ними не очень много различий. Итак запустив установщик, подтвердите установку клавишей Y, и укажите, либо оставьте по умолчанию, папку куда будет установлен сервер. По умолчанию сервер встает на /opt/Alfresco/ что мне лично подошло, поэтому я ничего не менял.
Также нужно установить и настроить сервер MySql, устанавливается командой
#yum install mysql-server
  Когда я пробовал ставить систему Alfresco на домашней машине, я столкнулся с проблемой с русскими именами в названиях документов и папок в системе Alfresco, вместо кириллицы система выдавала знаки вопросов. Решило проблему принудительная установка кодировок Mysql сервера, в конфиге /etc/my.cnf я добавил следующие директивы:

В раздел  mysqld:
[mysqld]
default-character-set=utf8В раздел client:
[client]
default-character-set=utf8
  Для создания базы данных в Mysql выполните команды Mysql:
mysql> create database alfresco default character set utf8 collate utf8_bin;
mysql>grant all on alfresco.* to 'alfresco'@'localhost' identified by 'alfresco' with grant option;
  По умолчанию Alfresco, а вернее веб сервер tomcat работает на порту 8080, но у меня на данном сервере крутится еще несколько веб сервисов, поэтому я решил проксировать клиентов на порт 8080 с помощью http сервера Apache. Для этого в конфиг апача я добавил секцию директив:

NameVirtualHost *:80

    ServerName alfresco.domain.local
    ProxyPass   /  http://alfresco.domain.local:8080/
    ProxyPassReverse  /  http://alfresco.domain.local:8080/


  Теперь следует настроить стартовые скрипты alfresco:
alf_start.sh
alf_stop.sh
alfresco.sh
  В первом скрипте, alf_start.sh, следует указать директорию куда вы установили сервер Alfresco вместо метки @@ALF_HOME@@.
Во втором скрипте аналогично.
В третьем скрипте уксзваем, так же вместо @@ALF_HOME@@ нужную нам папку, а также путь до директории с запускаемым файлом java вместо метки @@JAVA_HOME@@ ( у меня путь был /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre)

  Теперь запустим наш сервер и попробуем зайти на него с любого веб-браузера:
#/opt/Alfresco/alf_start.sh
Using CATALINA_BASE:   /opt/Alfresco/tomcat
Using CATALINA_HOME:   /opt/Alfresco/tomcat
Using CATALINA_TMPDIR: /opt/Alfresco/tomcat/temp
Using JRE_HOME:        /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre
Using CLASSPATH:       /opt/Alfresco/tomcat/bin/bootstrap.jar
  Если все хорошо, то в браузере набираем адрес который вы установили в виртуальных хостах вашего Apache, либо если вы не стали ставить апач, то имя сервера с указание порта 8080. У меня путь выглядел слудющим образом:
http://alfresco.domain.local/share   Следует подождать, при первом запуске система инициализирует базу данных в Mysql а также Java сервер, (кстати продолжительный запуск сервиса ожидает вас и при готовой базе, если вы перезагружали сервис).

Теперь останавливаем сервис:
#/opt/Alfresco/alf_stop.sh
  По умолчанию система имеет англоязычный интерфейс, поэтом следует скачать русификатор для нее. Скачать его можно здесь  или выбрать нужный языковой пакет здесь.

  Пакет устанавливается путем добавления содержимого архива в папку:
/Путь/до/папки/сервера/tomcat/shared/classes/alfresco/messages
  А также указать нужный язык в конфигурационном файле:
/Путь/до/папки/сервера/tomcat/shared/classes/alfresco/extension/web-client-config-custom.xml  В этом файле надите и раскоментируте следующий ниже параметр:

   
       Русский
    "
  Теперь запускаем систему вновь и используем по назначению. Подробнее об использовании системы можно почитать в официально Wiki проекта, а также в официальных уроках.


Категории: Техническая зона

Расширение для Gnome-terminal Terminator

Сб, 2010-09-11 17:48
  Терминал в Gnome не отличается большим функционал и настройками, в принципе он достаточно функционален для домашнего использования, но вот для использования на рабочем месте он не очень функционален. Но на базе этого терминала есть несколько реализация с расширенными функциями, одно из них это Terminator.
  Устанавливается программа командой:
#yum install terminator  После установки ярлычок для запуска помещается в главном меню, Приложения/Стандартные/Terminator
  Основной фишкой программы является возможность разбить окно на несколько областей являющихся так же терминалами, причем разбивку можно сохранить как схему и запускать программу указывая какую именно схему следует загрузить:


Для того что бы запустить Terminator с нужной схемой, следует запускать программу с опцией -l например:
#terminator -l "My layout"Для удобства можно создать несколько схем и сделать для каждой ярлычок на панели, например:

Также для каждого из окон можно установить команды, которые будут выполнятся при запуске соответствующей схемы. Делается это в настройках программы на закладке Layout:

А еще для каждого окна можно установить свои параметры шрифтов, обоев и прочего. Достаточно создать нужный профиль терминала на вкладке Profiles, и указать ее в закладке Layout:

Для программы существует несколько плагинов, включить или отключить которые можно на вкладке Plugins. Например там присутствует плагин позволяющий разместить в контекстном меню пункты запускающие определенные команды пользователя.

В общем использовать это приложения для некоторой автоматизации администрирования сети очень удобно, если же использовать в месте с Terminator на компьютерах в сети программу screen, можно значительно улучшить удобство работы.


Категории: Техническая зона