Добавить non-free репозиторий в Debian
в /etc/apt/sources.list должно быть:
потом:
в /etc/apt/sources.list должно быть:
потом:
Ставим тулзы:
Собственно дампим существующий контейнер в архив (по дефолту в /vz/dump/), восстанавливаем в новый ID (120), меняем у него хостнейм и IP и запускаем:
У новых версий vzdump уже может не быть параметра restore – он заменен на утилиту
Этот же механизм удобно использовать и для резервного копирования контейнеров OpenVZ.
Нашел хороший серверного софта для CentOS.
Ставить так:
Для i386:
1. Устанавливаем epel репозиторий.
2. Устанавливаем CentALT репозиторий.
Для x86_64:
1. Устанавливаем epel репозиторий.
2. Устанавливаем CentALT репозиторий.
Полный
В случае c Linux:
В /etc/httpd/conf/httpd.conf добавляем:
В случае с FreeBSD:
Добавление в конфиг апача аналогично.
Иногда, при повышенной сетевой нагрузке из-за большого количества соединений происходит превышение лимита на conntrack соединения. При этом в системном логе появляются сообщения:
Посмотрим какое ограничение у нас прописано сейчас:
И сколько физически используется сейчас:
Решением этой проблемы является увеличение данного лимита:
Не лишне данный параметр записать в sysctl.conf
Иногда бывает необходимо посмотреть что делает в терминале другой пользователь системы. Во FreeBSD для этого есть встроенные средства:
Теперь подключаемся к сеансу:
/etc/network/interafces:
Рестартим сеть:
Иногда возникает необходимость откатить приложение установленное через порты на более раннюю версию. Сначала откатим данные в нашей базе портов на нужную версию. К примеру будем откатывать php:
Теперь мы получили нужную версию в дереве портов. Теперь, чтобы переустановить приложение в систему:
Если надо даунгрейдить другие приложения, то шаги нужно повторить.
Конфиг (/etc/sysconfig/memcached):
Запуск:
Если надо еще PHP расширение к нему:
Ставим iperf из портов или из yum-a.
Запускаем сервер:
Запускаем клиента:
В /etc/mail/sendmail.mc добавляем:
Ставим пакет для sendmail и апдейтим конфигурацию:
В этой заметке рассмотрим установку bind на CentOS в chroot и синхронизацию (в том числе создание/удаление зон на первом и втором ДНС-сервере).
Ставим
Создаем файл /var/named/chroot/etc/named.conf
Создаем файл /var/named/chroot/var/named/zone.conf
Ну и файлы зон, например, /var/named/chroot/var/named/domain.com.conf
На втором сервере делаем все точно так же.
Теперь про синхронизацию зон.
На первом сервере:
На втором сервере:
На первом сервере создаем файл /var/named/dnssync.sh:
Для добавления зон на одном сервере можно пользоваться таким скриптом:
Преимущество aptitude над apt состоит в том, что она лучше справляется с обработкой зависимостей и рекомендуется разработчиками Debian в качестве основного средства для управления пакетами.
Если вы раньше пользовались утилитами apt, то можете просто начать пользоваться aptitude, в большинстве случаев это не вызовет никаких проблем.
Справка по ключам:
install – Установить/обновить пакеты
remove – Удалить пакеты
purge – Удалить пакеты и их файлы конфигурации
hold – Зафиксировать пакеты
unhold – Отменить команду hold для пакета
markauto – Пометить пакет, что он был установлен автоматически
unmarkauto – Пометить пакет, что он был установлен вручную
forbid-version – Запретить aptitude обновлять определённую версию пакета.
update – Загрузить список новых/обновлённых пакетов
safe-upgrade – Perform a safe upgrade
full-upgrade – Perform an upgrade, possibly installing and removing packages
forget-new – Забыть, какие пакеты “новые”
search – Поиск пакета по имени и/или выражению
show – Показать подробную информацию о пакете
clean – Удалить загруженные файлы пакетов
autoclean – Удалить старые загруженные файлы пакетов
changelog – Посмотреть changelog пакета
download – Загрузить файл .deb для пакета
reinstall – Загрузить и (возможно) переустановить уже установленный пакет
Параметры:
-h Этот текст помощи
-s Имитировать действия, но не выполнять их на самом деле.
-d Только загрузить пакеты, ничего не устанавливать и не удалять.
-P Всегда спрашивать подтверждение или действия
-y Предполагать ответ ‘yes’ на простой вопрос yes/no
-F format Задать формат отображения результатов поиска; смотрите руководство
-O order Задать формат сортировки результатов поиска; смотрите руководство
-w width Задать ширину вывода результатов поиска
-f Принудительно исправлять неработоспособные пакеты.
-V Показывать версию устанавливаемых пакетов.
-D Показывать зависимости автоматически изменяемых пакетов.
-Z Показывать изменение размера установки каждого пакета.
-v Отображать дополнительную информацию. (может быть введено несколько раз)
-t [release] Задать выпуск, из которого должны быть установлены пакеты
-q Не выводить индикатор прогресса в режиме командной строки.
-o key=val Вручную установить значение параметра настройки с именем ‘key’
–with(out)-recommends Указать, будут ли рекомендуемые пакеты
трактоваться как строгие зависимости
-S fname Читать aptitude информацию о расширенном статусе из fname.
-u Загрузить список новых пакетов при запуске.
-i Запустить установку при запуске.
После выполнения, например, aptitude search package_name в левой колонке можно увидеть два ряда статусов:
Значения основного статуса следующие:
i (от installed) – пакет установлен в системе:
p (от purge) – пакет не был установлен или был удален “вчистую”
c (от clean) – пакет, удаленный с сохранением конфигурационных файлов;
v (от virtual) – т.н. виртуальные пакеты, то есть просто списки реальных пакетов, один из которых будет использоваться в той или иной ситуации.
Дополнительный статус пакета может принимать такие значения:
A (от Auto) – пакет был установлен не самостоятельно, а автоматически, как зависимость другого пакета;
h (от hold) – для пакета зафиксирована его текущая версия, то есть он не будет обновляться при выполнении операторов upgrade и dist-upgrade (см. ниже);
u (от unpacked) – пакет был получен, распакован, но не инкорпорирован в файловую систему и не сконфигурирован;
C (от half-Configured) – пакет, установка которого оборвалась на стадии конфигурирования;
H (от Half-installed) – пакет, установка которого оборвалась на стадии инсталляции;
B (от Broken) – т.н. “сломанные” пакеты – то есть содержащие ошибки внутри себя или утратившие свои зависимости.
Так как нормальных rpm нет придется ставить из исходников.
Сначала ставим daemontools, который будет запускать сервис tinydns, следить за его состоянием и тд.
Заполняем файл зон (/etc/tinydns/root/data) по образцу:
Делаем в /etc/tinydns/root чтобы перекинуть данные в бинарную версию data.cdb:
Проверить что data.cdb содержит требуемые данные:
Управление сервисами:
Синхронизация зон со вторым ДНС-сервером.
Для синхронизации бинарного файла с данными по зонам (с другим сервером) воспользуемся scp.
На втором днс-сервере необходимо установить аналогичный комплект. Затем на первом сервере:
На втором сервере:
На первом сервере в файл /etc/tinydns/root/Makefile добавляем:
Теперь для синхронизации первого сервера со втором надо на первом сервере:
Смотрите так же Скрипт добавления зон
Для добавления разных экзотических записей есть
Примечание:
Если вдруг была удалена директория /etc/tinydns/supervise то надо сделать ps auxww |grep sup и грохнуть два процесса supervise. Затем сделать ps auxww |grep sv и грохнуть два процесса svscan. Инит перезапустит svscan, а тот перезапустит supervise и он пересоздаст каталоги.
После выхода PHP 5.3 в популярном репозитории для RHEL/CentOS PHP-пакеты были заменены на версию 5.3. В некоторых случаях это создает неудобства, так как далеко не все веб-приложения и скрипты работоспособны под этой версией. Поэтому при сетапе или обновлении сервера надо либо отключать этот репозиторий или ставить 5.2.10 пакеты вручную для и для
Иногда бывает, что ДиректАдмин по каким-то причинам не считает статистику по доменам. Вот несколько пунктов по которым это может происходить:
Чтобы проверить статистику делаем:
и смотрим /var/log/directadmin/system.log & /var/log/directadmin/error.log
Еще фишка с настройками вебалайзера. По дефолту, используются умолчальные настройки и они забиты в бинарник ДиректАдмина.
Чтобы кастомизировать настройки webalizer надо создать конфиг в /usr/local/directadmin/data/templates/custom/webalizer.conf и поместить туда директивы, которые должны отличаться от дефолтных, например:
Если по простому,то это штука, которая позволяет выполнять PHP-скрипты под Apache с правами их владельца, а не с правами веб-сервера. Это бывает необходимо если на сервере несколько пользователей (например, фтп), они активно меняют контент сайтов, но веб-серверу тоже нужен доступ к этим файлам. Тут то и происходит конфликт владельцев.
suPHP есть и в портах для FreeBSD:
и в пакетах для CentOS:
Запускается как обычный модуль для апача:
Конфиги в файле suphp.conf
Внимательнее к параметрам:
Из-за них может посыпаться много ошибок.
Для активации надо прописать либо в глобальной секции httpd.conf, либо в конкретном виртуал-хосте:
Не путать с модулем для апача !
Замечен такой косяк: если надо запускать что-то через exec и по относительному пути исполняемый файл не находится, то надо убедится, что в suphp.conf прописано с кавычками!