Популярные дистрибутивы Linux для сервера
Операционная система Linux применяется во множестве областей, начиная от домашнего использования и заканчивая суперкомпьютерами, которые занимают первые позиции в рейтинге лучших компьютеров в мире.
Одна из важнейших областей, где применяется Linux — это серверное использование. Linux отлично масштабируется, может «подстраиваться» под различные аппаратные и программные возможности. Система может поддерживать изолированную работу более 1000 пользователей. Отменная надежность, высокие показатели беспрерывной работы, защищенность и огромные возможности настройки делают Linux фаворитом в использовании на серверах.
Сфера серверного применения Linux очень обширна. Это может быть и отдельно стоящий дома компьютер, и «colocation-размещение», и виртуальный выделенный сервер или арендованный выделенный сервер, сложные корпоративные облачные решения, сервера баз данных, технологии big data и многое многое другое.
Рассмотрим некоторые из самых популярных Linux дистрибутивов, которые используются на северах.
Ubuntu (Ubuntu Server)
Ubuntu, а также северная версия Ubuntu Server, является одним из самых часто используемых дистрибутивов Linux, применяемых в качестве серверных решений. По статистике ресурса The Cloud Market количество экземпляров Ubuntu, работающих на облачных серверах Amazon EC2, составляет более 300000, что в три раза больше, чем использование Debian или, например, в 10 раз больше, чем SUSE.
Наибольшей популярностью пользуются LTS версии Ubuntu Server, которые обеспечены поддержкой обновлениями в течение нескольких лет, что избавляет администраторов от необходимости периодического обновления дистрибутива до новой версии.
- Огромная популярность.
- Совместимость с популярными «облаками».
- Огромная пакетная база.
- Поддержка современных технологий и программных решений.
- Простота установки и настройки.
- Использование свободного и проприетарного ПО.
- Четкий график выхода релизов.
- Наличие LTS версий с долгосрочной поддержкой.
- Наличие коммерческой поддержки.
Debian
Debian заслуженно получил репутацию очень надежного и стабильного дистрибутива. Дистрибутив широко применяют в качестве серверной операционной системы. Дистрибутив не имеет официальной коммерческой поддержки.
Debian отличает высокая стабильность, надежность и безопасность. Дистрибутив не имеет четкого графика выхода релизов. В состав Debian входят только хорошо протестированные и наиболее стабильные версии программного обеспечения. Это часто приводит к тому, что в системе используются довольно старые версии программ и других компонентов.
- Высокая стабильность и надежность.
- Отсутсвие коммерческой поддержки.
- Не всегда свежии версии ПО.
- Использование только свободного ПО.
Red Hat Enterprise Linux
Дистрибутив Red Hat Enterprise Linux (RHEL) разрабатывается компанией Red Hat и предназначен для корпоративного использования. Дистрибутив распространяется на платной основе по подписке. В основе RHEL лежит open source дистрибутив Fedora, поддерживаемый сообществом. Лучшие и протестированные в Fedora решения попадают в RHEL.
В качестве серверного решения компания Red Hat предлагает систему Red Hat Enterprise Linux Server.
RHEL отличает высокая надежность, безопасность и стабильность, наличие специализированного программного обеспечения, поддержка облачных решений, big data, виртуализации и изолированных Linux-контейнеров.
- Распространяется по подписке.
- Предназначен для корпоративного использования.
- Нацеленность на серверное использование (версия RHEL Server).
- Наличие коммерческой поддержки.
Fedora Server
Дистрибутив Fedora Server — специальная версия дистрибутива Fedora, предназначенная для серверов. Также есть редакция Fedora Atomic, которая ориентирована на облачные вычисления.
Fedora Server содержит программное обеспечение, предназначенное для серверного использования: мощный инструмент Cockpit для мониторинга и управления системой, сервер баз данных на базе PostgreSQL, сетевое программное обеспечение и другие компоненты.
Fedora Server (с версии 28) поставляется с системой Fedora Modularity, которая призвана решить проблемы зависимостей жизненных циклов приложений друг от друга и от версии самой операционной системы.
- Поддерживается сообществом.
- Нацеленность на серверное использование.
- Модульный репозиторий — система Fedora Modularity.
- Широкое применение на серверах.
CentOS
Дистрибутив CentOS основан на Red Hat Enterprise Linux и является его свободным клоном. Компания Red Hat спонсирует CentOS и помогает его развитию.
CentOS использует ПО с открытым исходным кодом, которое представлено в Red Hat Enterprise Linux. Red Hat Enterprise Linux поставляется в виде готовых бинарных пакетов, но код программ, которые распространяются по лицензии GPL должен быть открыт, поэтому Red Hat дает доступ к исходному коду этих приложений.
CentOS показал себя как надежный, стабильный, безопасный дистрибутив и часто используется на серверах.
- Основан на Red Hat Enterprise Linux, но является свободным.
- Спонсируется компанией Red Hat.
- Разрабатывается сообществом.
- Совместим с RHEL.
SUSE Linux Enterprise Server
Дистрибутив SUSE Linux Enterprise Server (SLES) является коммерческим дистрибутивом и распространяется по подписке. Предназначен для корпоративного использования. Разрабатывается компанией Novell.
SLES поддерживает большое количество аппаратных платформ, поддерживает работу приложений в физической, виртуальной и облачной среде. Заявлено, что SLES стабильно работает при высоких нагрузках, хорошо защищен от сетевых атак. Система содержит средства для взаимодействия с другими операционными системами (включая Windows), что позволяет интегрировать систему в существующие инфраструктуры.
- Коммерческий дистрибутив.
- Распространяется по подписке.
- Является готовым серверным решением.
- Работа при высоких нагрузках.
Arch Linux и Gentoo
В завершение стоит упомянуть дистрибутивы Arch Linux и Gentoo. Хотя они и разные, но концепция у них очень похожа — пользователь строит систему полностью под свои нужды. Звучит это красиво, но для того, чтобы «собрать» под себя серверную систему требуется огромный опыт и очень много времени. Из-за этого Arch Linux и Gentoo редко применяются на серверах.
- Для опытных пользователей.
- Долгое время развертывания.
- Обновления по модели «rolling release».
- Возможность построить систему под себя.
Заключение
Мы рассмотрели некоторые популярные Linux дистрибутивы, которые используются на серверах. Их отличает высокая надежность, стабильность, безопасность, гибкость настройки, поддержка современных аппаратных решений и приспособленность к серверным задачам. Некоторые дистрибутивы распространяйся и поддерживаются на платной основе.
Источник
Домашний linux сервер своими руками
Хочется поделиться с хабросооществом информацией о том как я собирал домашний сервер.
Из софта на домашнем сервере будет «крутиться» следующий набор:
- torrent клиент с web-мордой
- DHCP — раздаем ip адреса и сетевые настройки
- TFTP — для сетевой загрузки
- OpenVPN — для хождения в сеть с нетбука из недоверенных сетей
- FTP/Samba/NFS — сетевые шары для доступа с домашних машин
- Radius — для WPA2 авторизации
- DigiTemp — мониторинг домашней температуры
Аппаратная часть
При выборе аппаратной части, вариантов было несколько:
- старенький комп
- самосбор на базе mini-ITX
- тонкий клиент HP T5000
- тонкий клиент на базе Neoware CA2
Первый вариант был сразу же отброшен из-за шума, пыли и энергопотребления. Второй был заказан, пока шли комплектующие, я успел передумать (захотелось шум и энергопотребление свести до минимума). В итоге, на Ebay были куплены тонкие клиенты HP t5000 и Neoware CA2. Месяц спустя пришли тонкие клиенты и из двух, после долгих размышлений, был выбран Neoware CA2. В него идеально поместился 2.5′ HDD и вторая сетевая карта.
После допиливания, в буквальном смысле, Neoware CA2 я принялся ставить на него Ubuntu 9.10 с офисного TFTP сервера. Установку производил самую минимальную. Если бы не было набора для сетевой установки, ставил бы Debian с USB CD-ROM и netinstall диска. Сам я ярый фанат RHEL/CentOS, но на домашний сервер решил ставить что-то из debian семейства, для расширения кругозора.
Torrent клиент и вебморда
Теперь перейдем к установке torrent клиента и вебморды. Была выбрана связка rtorrent + rutorrent, установка из репозитариев была отметена сразу, т.к. «родной» пакет был собран без xmlrpc-c который расширяет функционал rutorrent. Ниже фактически, скрипт для авто-установки rtorrent+rutorrent+lighttpd+php.
Устанавливаем всё что необходимо для компиляции xmlrpc-c, libtorrent, rtorrent
apt-get install checkinstall subversion build-essential make autoconf autotools-dev automake libtool libcurl4-openssl-dev libsigc++-2.0-dev pkg-config libncurses5-dev
apt-get remove rtorrent libtorrent11 libxmlrpc-c3 libxmlrpc-c3-dev libxmlrpc-core-c3 libxmlrpc-core-c3-dev
Компилируем и «заворачиваем» в .deb пакет xmlrpc-c, libtorrent, rtorrent
svn co xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/advanced xmlrpc-c
cd xmlrpc-c
./configure —prefix=/usr && make && checkinstall -D
cd ..
wget libtorrent.rakshasa.no/downloads/libtorrent-0.12.6.tar.gz
tar zxfv libtorrent-0.12.6.tar.gz
cd libtorrent-0.12.6
rm -f scripts/
./autogen.sh && ./configure —prefix=/usr && make && checkinstall -D
cd ..
wget libtorrent.rakshasa.no/downloads/rtorrent-0.8.6.tar.gz
tar zxfv rtorrent-0.8.6.tar.gz
cd rtorrent-0.8.6
rm -f scripts/
./autogen.sh && ./configure —with-xmlrpc-c —prefix=/usr && make && checkinstall -D
К сожалению, rtorrent не умеет работать в режиме daemon, по этому будем использовать screen
apt-get install screen -y
wget libtorrent.rakshasa.no/raw-attachment/wiki/RTorrentCommonTasks/rtorrentInit.sh —output-document=/etc/init.d/rtorrent
chmod +x /etc/init.d/rtorrent
sed -i ‘s/»user»/»torrents»/’ /etc/init.d/rtorrent
update-rc.d rtorrent defaults
useradd -d /torrents -m torrents
Создаем конфиг и папки для сессий и готовых торрент закачек, после чего стартуем rtorrent.
mkdir /torrents/.rtorrent_session
cat >> /torrents/.rtorrent.rc
Теперь займемся вебмордой rutorrent. Для работы rutorrent необходим вебсервер и интерпретатор php.
apt-get install lighttpd php5-cgi php5-cli php5-curl curl -y
lighty-enable-mod fastcgi
echo ‘server.modules += ( «mod_scgi» )’ >> /etc/lighttpd/lighttpd.conf
cat >> /etc/lighttpd/lighttpd.conf
( «127.0.0.1» =>
(
«host» => «127.0.0.1»,
«port» => 5000,
«check-local» => «disable»
)
)
)
EOF
/etc/init.d/lighttpd force-reload
Вебсервер готов, теперь будем ставить rutorrent и несколько полезных плагинов к нему.
cd /var/www/
svn checkout rutorrent.googlecode.com/svn/trunk/rutorrent
cd /var/www/rutorrent/plugins/
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/tracklabels
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/cookies
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/autotools
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/erasedata
chown -R www-data:www-data /var/www/
Теперь можно заходить по server_ip/rutorrent и начинать пользоваться.
Теперь установим DHCP сервер и создадим для него конфиг таким образом чтобы клиенты получали:
router 192.168.1.1
dns сервер 8.8.8.8
сервер времени time.nist.gov
tftp сервер 192.168.1.1
и для примера фиксированная выдача 192.168.1.100 клиенту с MAC-адресом 00:1B:FC:33:F0:25
aptitude install dhcp3-server
cat >> /etc/dhcp3/dhcpd.conf
строчки с option-150 нужны для моего VoIP телефона Cisco 7940.
TFTP и сетевая установка
aptitude install xinetd atftpd atftp
cat >> /etc/xinetd.d/tftp
Теперь проверим, работает ли tftp сервер
root@dvr:
# echo bla > /tftpboot/123
root@dvr:
# atftp 127.0.0.1
tftp> get 123
tftp>
root@dvr:
# cat 123
bla
Всё нормально, теперь создадим netinstall наборы для нескольких ОС: Ubuntu karmic, Ubuntu lucid, Debian lenny, Debian sid, Debian squeeze, Fedora 13, CentOS 5.5, Mandriva 2010.0, Suse 11.2, Slackware 13.1, Hardware Detection Tool, memtest и MHDD. Для этого предлагаю использовать слегка модифицированный скрипт который я взял с HowtoForge.
apt-get install lftp -y
wget itblog.su/tftpboot_installs.sh
bash tftpboot_installs.sh
Теперь добавим SystemRescueCd в PXE меню
wget «http://downloads.sourceforge.net/project/systemrescuecd/sysresccd-x86/1.6.3/systemrescuecd-x86-1.6.3.iso?use_mirror=citylan»
mount -o loop systemrescuecd-x86-1.6.1.iso /mnt/
cp /mnt/sysrcd.* /var/www/
cp /mnt/isolinux/initram.igz /tftpboot/
cp /mnt/isolinux/rescuecd /tftpboot/
cat >> /tftpboot/pxelinux.cfg/default
Без особого труда в это меню можно добавить продукты Acronis, инсталляцию и запуск Windows XP и прочее.
Вот так будет выглядеть наше меню:
Продолжение в следующей части. А именно:
- OpenVPN сервер для «хождения» в сеть из не доверенных сетей (например из гостиницы)
- FTP/Samba/NFS сетевые шары
- Radius для авторизации wi-fi клиентов
- DigiTemp зачатки умного дома, мониторинг температуры в квартире и за окном
- festival — говорящий будильник
- бакапы с хостинга
и подытожит статью скрипт который всё это установит в «два клика».
С удовольствием выслушаю замечания и дополнения.
Источник