Показаны сообщения с ярлыком CentOS. Показать все сообщения
Показаны сообщения с ярлыком CentOS. Показать все сообщения

вторник, 18 марта 2014 г.

Создаём собственный yum репозиторий












Подготовим плацдарм на web сервере.

В моём случае это debian.
Поэтому:
apt-get install -y apache2 rsync

Поскольку репозиторий у нас будет yum, создадим для него каталог, и договоримся о том, что пользователь от которого вы будете выкладывать пакеты будет "repmgr".
Вообще пользователь может быть любым, я назвал его так для наглядности, и предполагаю, что он уже есть в системе.

среда, 19 февраля 2014 г.

Пересобираем ядро для RHEL-like систем














А вот даже и не вспомню как давно приходилось пересобирать ядро Linux. Прошли те времена, когда с каждым новым релизом, устранялась какая-нибудь неприятная бага, или появлялась жизненно важная фича. Как правило всё работает из коробки, и нет числа новым адептам, праздно, без напильника, настраивающих свой свеженький Linux. Но всё же встречаются моменты когда приходится собирать кастомное ядро. Если у вас именно этот случай, тогда приступим.

понедельник, 29 апреля 2013 г.

Postfix и Dovecot SASL + VirtualHosts в CentOS 6 x86_64






English:










Иногда случается нужда в развёртывании почты, но и вроде пользователей не так много чтобы городить жирные системы с базами данных в MySQL или PostgreSQL. Хотя с другой стороны и виртуальных пользователей хочется, и еще кое какие плюшки. Перед написанием статьи я очень много рыскал в интернетах, но статьи что попадались мне как правило были либо нацелены на слишком крупные системы, либо были сильно устаревшие и использовали уже не существующий синтаксис конфигов, либо, либо, либо...

Вообщем если кратко, то эта статья про то как настроить Postfix+Dovrcot+SASL виртуальными доменами и виртуальными пользователями и базой пользователей в текстовом файлике.

пятница, 26 апреля 2013 г.

SaltStack - Установка saltstack-minion на CentOS








Что такое SaltStack и с чем его едят я описал тут
В текущей статье я опишу как установить SaltStack-minion на CentOS
Этот мануал подходит для CentOS 5/6 x68_64/i386

Кстати говоря saltstack-master можно установить таким же образом

Устанавливаем saltstack-minion

Прежде всего необходимо подключить последнюю версию репозитория EPEL
rpm -Uvh http://download.fedoraproject.org/pub/epel/$(grep -o -P '\d' /etc/issue\
 | head -n1)/$(arch)/$(wget -O - http://download.fedoraproject.org/pub/epel/\
$(grep -o -P '\d' /etc/issue | head -n1)/$(arch)/ 2> /dev/null\
 | grep -o -P 'epel-release-\d-\d\.noarch\.rpm' | head -n1)

среда, 19 сентября 2012 г.

CentOS LAMP чуть больше чем в две строчки

Устанавливаем httpd.
yum install -y httpd mysql mysql-server php php-cli\
 php-mysql php-common php-curl php-gd php-mcrypt php-suhosin
Записываем виртуалхост.
cat >> /etc/httpd/conf/httpd.conf <<EOF

NameVirtualHost *:80
<VirtualHost *:80>
        <Directory /opt/www/example.com>
        AllowOverride All
        </Directory>
    DocumentRoot /opt/www/example.com/

    ServerName example.com
    ErrorLog logs/example.com-error_log
    CustomLog logs/example.com-access_log common
</VirtualHost>
EOF
Создадим директорию сайта.
mkdir -p /opt/www/example.com/
Запишем httpd в автозагрузку и запустим сервис.
chkconfig --level 345 httpd on
service httpd start

Enhanced by Zemanta

вторник, 11 сентября 2012 г.

PHP53u + memcache + apc в CentOS 5

Когда я попытался настроить memcache + APC в тестовой ветке CentOS 5, я очень удивился когда не нашел расширения memcache для php53 в репозитарии.

По этой пришлось использовать репозиторий IUS.

Приступим:
Установим репозитории в систему.
rpm -Uvh http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/ius-release-1.0-10.ius.el5.noarch.rpm
rpm -Uvh http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/epel-release-5-4.noarch.rpm

понедельник, 4 июня 2012 г.

Передача данных по нестабильном каналу через SSH

Намедни мне пришлось на не очень стабильном канале передавать кучу разрозненных файлов. И всё бы ничего, запаковать в архив, и передать  опцией докачки, делов то. Но не всё так просто, если на диске для архива не достаточно места. Вы скажите есть же rsync, но это чудо природы виснет на больших бинарных файлах при не стабильном канале, и к тому же не умеет рисовать прогресс бар.

Я нашел достаточно удобный способ решения этой проблемы.

Для начала на обеих машинах должны быть установлены следующие пакеты: openssh-server, openssh-client, tar, bzip2, pv, screen, rsync

Установить их можно так:

Для Debian/Ubuntu
apt-get install -y openssh-server openssh-client tar bzip2 pv screen rsync

Для RHEL/CentOS
yum install -y openssh-server openssh-clients tar bzip2 pv screen rsync

Кстати. Все команды лучше запускать в screen он доступен в пакетной практически всех дистрибутивах.

Итак зайдём по SSH на 1ый хост, и запустим screen.

Не забудьте заменить "$HOST1" "$HOST2"  на свои адреса хостов, а /mnt/data/ на свой путь к данным.
 Для тех кто не очень понимает bash синтаксис поясню что делает этот скрипт.

tar'om мы сжимаем содержимое директории /mnt/data/ и с помощью ключа "-" отправляем его в стандартный поток вывода, но не выводим на дисплей,  а через пайп отправляем команде pv которая считает сколько данных через неё прошло, и выводит данные на экран. Таким образом мы будем наблюдать за процессом передачи данных. После подсчёта команда pv отправит данные в неизменном виде в следующий пайп который передаст данные ssh сессии где мы перейдём в корневой каталог и начнём распаковку tar'om уже на втором хосте. Переход в корневой каталог необходим по той причине, что при архивации tar вырезает / и из абсолютного пути мы получим относительный. 
После окончания сей мистерии следует проверить rsync'om все ли данные верно передались.


ssh "$HOST1"
screen
tar cjf - /mnt/data/ | pv | ssh root@"$HOST2" "cd / && tar xjf - "
rsync -vcazr -e ssh /mnt/data root@"$HOST2":/mnt/
Теперь следует обговорить screen он умеет многое, и достоин отдельной статьи.
Сейчас о его устройстве вам следует знать 4 вещи.

ctrl a d # Используется для того чтобы свернуть терминал
screen -ls # Используется для того чтобы просмотреть список существующих терминалов
screen -r pid.pts-0.hostname # Используется для того чтобы вернуться в указанный терминал
screen -r # Используется для того чтобы вернуться в терминал если он открыт у вас один

На сим всё.

Могу сказать только что на сильно проседающем канале 6GB данных за ночь передались безошибочно.



Enhanced by Zemanta

суббота, 5 мая 2012 г.

Настройка sendmail в CentOS для отправки почты с localhost


Многие сталкивались с проблемой отправки сообщений с сервера из bash/perl/python/php/etc...

На самом это достаточно просто.
Достаточно поставить sendmail.
yum install sendmail sendmail-cf -y

chkconfig --level 345 sendmail on

/etc/init.d/sendmail start
Starting sendmail:                                         [  OK  ]
Starting sm-client:                                        [  OK  ]
В принципе вы уже можете отправлять почту, но по умолчанию в конфигурации указано что вы отправляете почту с хоста localhost.localdomain


четверг, 29 марта 2012 г.

Обновляем PHP в Centos 5 до версии 5.3


Для для обновления нам понадобится подключить репозитарий содержащий нужную нам ветку php.
cat > /etc/yum.repos.d/CentOS-Testing.repo <<EOF
[c5-testing]
name=CentOS-5 Testing
baseurl=http://dev.centos.org/centos/\$releasever/testing/\$basearch/
enabled=1
gpgcheck=1
gpgkey=http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing
includepkgs=php*
EOF
Теперь мы сохраним список установленных модулей PHP, удалим существующие модули из системы, и на базе сохранённого списка, установим новые модули PHP.
rpm -qa |grep php > old_php.log
yum erase php-* -y
yum --enablerepo=c5-testing install $(cat old_php.log \
 | sed -e 's/-5.*$//g' | sed -e 's/php/php53/g' \
 | awk '{ printf $1" " }') -y

На этом обновление PHP завершено.
Проверим версию установленного PHP.
php -v
PHP 5.3.3 (cli) (built: Feb 22 2012 19:38:14) 
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

Осталось перезапустить WEB сервер.

/etc/init.d/httpd restart





Enhanced by Zemanta

вторник, 10 января 2012 г.

CentOS release 6.2 x86 + vsFTPd(RUS)

Итак нам нужен FTP сервер с поддержкой русской кодировки, с условием, чтобы каждый пользователь видел только свою домашнюю директорию (chroot). 

Ставим vsftpd как единственно доступный из репозитания CentOS, хотя я предпочитаю ProFTPd

yum install vsftpd -y
проверим текущую версию демона
vsftpd -v
vsFTPd version 2.2.2

четверг, 1 сентября 2011 г.

Решение проблем с доступом к CentOS по ssh через rsa public key

Если на CentOS или другой RedHat подобной системе, вы настроили в SSH аутоинтоксикацию по RSA ключу, но при попытке логина в файле
tailf /var/log/audit/audit.log
вы обнаруживаете подобную запись,
type=AVC msg=audit(1314869446.851:140): avc: denied { read } for pid=1540 comm="sshd" name="authorized_keys" dev=dm-0 ino=7035 scontext=unconfined_u:system_r:sshd_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:admin_home_t:s0 tclass=file
то вас спасёт следующая комманда:
restorecon -R -v /имя.пользователя/.ssh

Enhanced by Zemanta

среда, 31 августа 2011 г.

CentOS 6.0+Ruby on Rails+Nginx+Ruby Enterprise Edition

Ставим разом всё что нужно

yum install openssl-devel zlib-devel gcc gcc-c++ make autoconf   \

   readline-devel curl-devel expat-devel gettext-devel patch \

   libjpeg libpng telnet libxslt freetype freetype-devel     \

   mysql51-server mysql51-devel wget mysql mysql-devel       \

   pcre-devel w3m vim system-config-firewall-tui mysql-server sudo