25.5.11

Релиз Fedora 15

Итак, сегодня вышел релиз Fedora 15, в котором было проведено очень много существенных изменений:
  • Интеграция графического окуржения Gbome 3 с оболочкой по умолчанию Gnome Shell, так же в релизе сборик KDE 4.6 и Xfce 4.8
  • Старт системы осуществляется с помощью быстрой системы systemd.
  • В комплекте браузер нового поколения Firefox 4, и офисный пакет Libre Office 3.3.2
  • Измены наименования сетевых интерфейсов, теперь они привязываются с положением сетвых карт на материнской плате, например для интегрированной сетевой карты название будет em{port_number}, а для подключеных pci{port_number}
  • Перенос "/run" из директории "/var" в корень для решения проблем с недоступным "/var/run"
  • Интеграция поддержки файловой системы Btrfs в инсталлятор системы, теперь можно выбрать в списке.
  • Использование ядра 2.6.38
Паралельно выходу основного дистрибютива, вышел релиз русского респина Russian Fedora, с включенными в поставку допольнительных компонент не вошедших в основной дистрибутив по причинам патентных ограничений в США.

3.2.11

Тестовая сборка Fedora 15 с Gnome 3

 Сегодня в рамках дня тестирования Gnome 3 на Fedora, загрузил данную сборку Fedora 15, что бы посмотреть до какого состояния удалось доделать Gnome 3. Был приятно удивлен стабильностью работы и готовностью продукта, думаю осталось доделать некоторые мелочи и релиз Gnome 3 будет полностью готов. Что еще более радует, переход на него не будет столь жестким как на KDE 4, и всегда останется возможность включить стандартный рабочий стол если не понравится новый интерфейс.
 В общем ждем релиза Fedora 15 с Gnome 3 в комплекте. Вот тройка скриншотов:


  Так же в комплекте есть Firefox 4, вполне работоспособного состояния.

29.12.10

Управление запуском сервера Subversion с помощью xinetd.

  В Fedora нет скрипта запуска сервера SVN, в init.d, поэтому его приходится запускать в ручную, либо делать самописные скрипты. Но есть еще один вариант, передать всю работу по запуску-отстанову сервера демону xinetd.
  Установить сам демон можно с помошью команды:
yum install xinetd

  Не забудте так же включить его автоматический запуск:
chkconfig xinetd on

  Для того что бы передать демону xinetd любой сервис в системе следует создать файл настроек для данного сервиса в каталоге /etc/xinetd.d/ . Например,  в нашем случае, создадим файл subversion со следующим содержимым:

service svn
{
        socket_type     = stream
        protocol        = tcp
        user            = svn
        wait            = no
        disable         = no
        server          = /usr/bin/svnserve
        server_args     = -i --root /path/to/repo
        port            = 3690
}


  Где server путь до команды запуска демона, server_args аргументы запуска демона, user имя пользователя от имени которого следует запускать демон. Если нужно что бы демон слушал порт только на определенном интерфейсе то добавьте параметр bind в котором укажите ip интерфейса на котором слушать порт. По умолчания в Fedora в файле /etc/services прописаны параметры:

svn             3690/tcp                        # Subversion
svn             3690/udp                        # Subversion


  Если их нет то следует их внести, что бы демон знал как следует запускать сервис svn. Название сервиса (svn) должно совпадать в обоих настоечных файлах, если меняет его в одном из них то меняйте и в другом.
  Теперь запускаем демон:
service xinetd start

  Проверить слушет ли демон порт можно командой:
netstat -ant | grep 3690

  Ответ должне быть что то вроде этого, если это не так смотрите системный лог файл
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN

  Теперь пробуйте соединится клиентом с сервером.

3.11.10

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

  Итак вышел релиз ОС 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 для работы с почтовой системой.
 Полный список изменений можно увидеть на сайте документации федора здесь.

26.10.10

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

  Создание сервер 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 и загружаем свой конфигурацию! На этом пока все.

Популярные сообщения