Centos - описание ОС версии плюсы минусы. Какой дистрибутив лучше — Ubuntu или CentOS

Операционная система CentOS - в первую очередь рассчитана для использования на серверах и в крупных компаниях, но может вполне успешно применяться и на компьютерах обычных пользователей для решения повседневных задач. Дистрибутив Ubuntu рассчитан на новых пользователей, но имеет очень даже неплохую версию для серверов.

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

Казалось бы, что разработчик дистрибутива не так важен, но на самом деле это имеет значение. Операционная система разрабатывается африканской компанией Canonical, основанной Марком Шатлвортом. Дистрибутив основан на Debian и основной своей целью ставит простоту для новых пользователей, удобность настройки. Первый релиз состоялся в 2004 году. Canonical разрабатывает собственную оболочку для Gnome - Unity, которая должна стать единой для смартфонов и компьютеров. Также компания пытается продвинуть Ubuntu на рынок телефонов и планшетов, правда пока не очень успешно. Кроме этого, Canonical занимается продвижением Ubuntu на серверах и на данный момент больше всего веб-серверов работают на Ubuntu.

Дистрибутив CentOS поддерживается сообществом и основан на Red Hat Linux. Тут, казалось полное преимущество на стороне Ubuntu, но... CentOS это бесплатная версия Red Hat, по сути, это полностью та же самая система, собранная из исходников Red Hat Linux, которая получает регулярные обновления, спустя некоторое время после того, как их выпускает компания Red Hat.

Эта компания занимается разработкой серверных операционных систем начиная с 1993 года и выпускает обновления для своих систем на протяжении 10 лет, в отличие строка поддержки Ubuntu - два года, причем в старые версии ядер портируются многие интересные новые возможности. Red Hat - занимается только разработкой операционной системы коммерческого уровня для серверов и компаний. Все это перенимает CentOS.

В этом аспекте побеждает явно Red Hat, а вместе с ним и CentOS. Хотя Canonical делает много для Ubuntu, но они тратят много сил на сторонние вещи, ту же самую систему для смартфонов. И создатель ядра Linux - Линус Торвальдс сотрудничает с Red Hat.

2. Программное обеспечение

В Ubuntu используется унаследованный от Debian формат пакетов Deb. В CentOS используется разработанный в Red Hat, формат rpm. Фактически, для конечного пользователя они почти не отличаются, разве только можно заметить, что системы с системой управления пакетами RPM скачивают больше метаданных при обновлении репозитория, а также здесь не поддерживаются рекомендованные зависимости.

Более интересна доступность программного обеспечения. Для Ubuntu вы найдете почти все программы, которые вам будут нужны. Установочные пакеты собираются даже для новых, только что вышедших программ и несмотря на то, что они не добавляются в репозитории, здесь есть PPA и вы сможете установить оттуда все, что вам понадобится. Но некоторого старого ПО можно и не найти.

В CentOS с этим ситуация немного другая. RPM пакеты выпускаются не так активно как Deb, есть репозиторий, со сторонним программным обеспечением, но там есть далеко не все новые программы. Тем не менее, старые версии программ будет найти проще, и в целом программы лучше совместимы с системой и боле стабильны. В вопросе доступности программного обеспечения Ubuntu vs CentOS лучше показывает себя, все же Ubuntu.

3. Окружение рабочего стола

Ubuntu использует собственную оболочку Unity, которая работает поверх новой версии окружения рабочего стола Gnome 3. Она вносит несколько изменений в интерфейс и выглядит в целом очень даже неплохо.

В CentOS используется классическая и привычная всем версия Gnome 2. Окружение выглядит немного старомодно, но работает вполне стабильно и поддерживает все необходимые функции. Внешний вид системы - это личное дело каждого и оболочку очень легко сменить, но обычно под какое окружение система заточена изначально, с тем она и будет работать лучше всего.

4. Установка

Установка Ubuntu или CentOS не сильно отличается. Системы используют разные установщики, но суть везде одна. Ubuntu имеет более упрощенный установщик, в котором вы можете настроить базовую конфигурацию системы, разбить диск и создать пользователей.

В CentOS установщик тот же, что и у Fedora и Red Hat, кроме всего прочего, здесь вы можете выбирать компоненты, которые нужно установить, например, рабочий стол Gnome или KDE, а также задать настройки сети.

Установщик Ubuntu похож на мастер, вам просто нужно перемещаться от шага к шагу и устанавливать нужные параметры, в CentOS есть главное меню, в котором нужно будет настроить каждый пункт.

5. Стабильность

Ubuntu, в версиях LTS позиционирует себя как очень стабильный дистрибутив, но про стабильность Ubuntu можно очень много спорить. Возможно, она работает отлично с настройками по умолчанию, но если попытаться использовать какие-нибудь нестандартные функции или их комбинации, сразу всплывают куча багов и недоработок, которые никто не спешит исправлять.

С другой стороны, CentOS, которая основана на Red Hat тщательно тестируется перед тем, как выйти в свет, хотя и дистрибутив содержит более старое программное обеспечение, но оно точно хорошо отлажено, а ошибки исправлены, хотя из этого правила тоже бывают исключения.

Если вы хотите новые версии программ - ваш выбор Ubuntu, но если нужна стабильность, лучше посмотреть в сторону другого дистрибутива, когда будете решить Ubuntu или CentOS.

6. Сообщество и документация

Ubuntu - самый популярный дистрибутив среди новичков, и поэтому для него существует очень много форумов, сообществ пользователей, а также различных статей в сети. В том числе очень много материалов на русском. Также есть большое количество пользователей, которые, скорее всего, уже сталкивались с вашей проблемой и могут вам помочь в ее решении.

Про CentOS намного меньше информации в сети и намного меньше форумов. Ее сфера распространения - сервера, и крупные компании. Документация есть, но большинство из нее на английском.

Если выполнять сравнение ubuntu и centos. В этом пункте тоже, без сомнения, лучше Ubuntu, но только для новых пользователей, если вы и так уже достаточно разбираетесь в системе, то сможете справиться с CentOS.

Выводы

В этой статье мы сравнили два достаточно популярных в своих сферах дистрибутива чтобы вы смогли определить что лучше Ubuntu или CentOS именно для вас. Они - отличные системы и хорошо подходят для решения задач, на которые они были рассчитаны. А какой дистрибутив вы используете? Ubuntu vs CentOS? Какой бы выбрали? Напишите в комментариях!

Трудно выбирать систему ни разу не взглянув на нее, прикрепляю к статье два видео с быстрым обзором обоих операционных систем:

Многие и не подозревают, что все сервисы и услуги, которыми мы пользуемся в Сети, базируются на точно таких же компьютерах, что работают в наших квартирах, только настроены совершенно иначе, не могут похвастать красивым графическим интерфейсом и управляются с помощью специализированных команд. Эти компьютеры именуются серверами. Люди осведомленные, конечно, знают, как произвести настройку и «поднять» собственный сервер. Тем же, кто в этом деле новичок, необходимо проштудировать не один форум, чтобы окончательно освоиться. Одно известно точно: для настройки недорогого и стабильного сервера необходимо выбрать такую же недорогую и стабильную основу, а именно операционную систему на основе Linux. Выбор большинства падает на CentOS 7. В данном материале собрана краткая информация о том, как произвести установку CentOS 7 и создать на ее основе базовый сервер.

Что такое CentOS?

CentOS - Linux, главным достоинством которого является стабильность. Данная система, как и ближайший конкурент Fedora, была построена на исходном коде платного дистрибутива Red Hat Linux. Последний, в свою очередь, является идеальным инструментом для системных администраторов, в работе которых требуется предсказуемость, стабильная работа и удобное управление.

CentOS не может похвастать самыми последними версиями пакетов, в отличие от той же Fedora, но каждый системный администратор будет этому только рад, когда Fedora или другой современный дистрибутив со своими свежими пакетами «упадет», а CentOS продолжит спокойно работать независимо от обстоятельств. В данном материале вкратце описывается процесс настройки и установки CentOS 7, основные особенности системы и рабочая среда.

Загрузка CentOS 7

Перед установкой CentOS 7 необходимо загрузить дистрибутив операционной системы на официальном сайте.

Существует несколько вариантов загрузки:

  • ISO-файл для записи на диск - идеальный вариант для большинства с полноценной системой и графическим интерфейсом;
  • ISO-файл для установки с жесткого диска и USB-флешки - самый полный комплект пакетов;
  • ISO для минимальной выгрузки - содержит в себе только базовую операционную систему с минимальным набором пакетов и без графического интерфейса (на этой версии дистрибутива можно без проблем «поднять» сервер, не устанавливая ничего лишнего).

В числе загрузочных файлов можно отыскать два «живых» образа диска с двумя разными рабочими средами (KDE и Gnome). Эти образы подойдут тем, кто хочет опробовать систему в деле до установки на жесткий диск.

Установка CentOS 7

Даже при выборе минимального образа CentOS 7 предложит воспользоваться графическим интерфейсом для установки системы на жесткий диск.

Процесс этот проходит в 6 основных шагов:

  • Настройка даты и времени - на этом этапе достаточно выбрать свой часовой пояс, и время будет выставлено автоматически.
  • Настройка языка и раскладки - необходимо выбрать один основной язык системы и один дополнительный, а также указать необходимые раскладки клавиатуры для них.
  • Источник установки - на данном этапе можно ничего не менять, тогда файлы для установки будут взяты с носителя с системой.
  • Программное обеспечение для установки - на этом этапе необходимо выбрать минимальный пакет программ, так как нам нужно развернуть сервер без рабочего стола и графического интерфейса.
  • Место установки - на этом этапе выбираем жесткий диск, на который будет произведена установка, а также разметку.
  • Настройка интернета - здесь нужно внести данные о подключении к Сети.

После введения данных необходимо будет создать профиль пользователи и указать пароль Root. После завершения процесса установки компьютер перезагрузится и предложит запустить новую операционную систему.

Установка сервера CentOS 7

Здесь вкратце поговорим о том, как развернуть универсальный сервер на базе CentOS 7 с минимальным набором необходимых инструментов, которые требуются для его полноценной работы.

Итак, для начала необходимо отыскать сам сервер. Его можно либо нанять в Сети (от 250 рублей), либо настроить на локальной машине. Единственное, что потребуется, - это данные SSH, которые будут использоваться для входа на сервер. Возьмем в качестве примера абстрактный почтовый адрес [email protected] и имя пользователя c паролем тоже centos.

Начать конфигурацию стоит с создания пользователя и выдачи ему всех необходимых прав:

  • Добавляем пользователя командой useradd centos;
  • Создаем для него уникальный пароль - passwd centos;
  • Заставляем систему отправлять root-почту этому пользователю - vi /etc/aliases;
  • Даем пользователю права sudo командой visudo (командная строка отзовется подтверждением операции).

После нужно отключить Firewall и SeLinux. Это необходимо сделать для того, чтобы случайно не лишить себя прав доступа к серверу. Приостановить работу Firewall можно, используя команды systemctl stop firewalld и systemctl disable firewalld. Ситуация с SeLinux немного сложнее: необходимо открыть соответствующий конфигурационный файл в текстовом редакторе Vi с помощью команды vi /etc/selinux/config, разыскать там строку SELINUX=enabled и заменить на SELINUX=disabled. Затем нужно перезагрузить систему.

Следующим этапом настройки будет установка SSH.

Для этого необходимо:

  • Добавить соответствующие ключи с севера [email protected].
  • Изменить порт в конфигурационном файле /etc/ssh/sshd_config на Port 222.
  • Запретить вход на сервер без прав Root, вписав строку PermitRootLogin without-password.
  • И перезагрузить сервер командой systemctl restart sshd.

Также нужно обновить все системы и установить хранилища epel и rpmforge. Для этого необходимо:

  • Обновить все системные элементы командой yum update.
  • Загрузить новые системные компоненты командой yum -enablerepo=cr update.
  • Если существующих компонентов недостаточно, можно загрузить более современные версии epel и rpmforge, для этого вводим команду yum -y install *адрес репозитория, где хранится нужная версия программного обеспечения* (подходящий репозиторий можно легко найти на профильных ресурсах).

Проверка сервисов, настройка Apache и PHP

Для установки дополнительных компонентов в существующий каркас сервера потребуется проверка и отключение некоторых сервисов и MTA-служб.

Для этого нужно:

  • Проверить, что из служб уже запущено, командой systemctl -t service.
  • Отключить все ненужные и запретить их запуск, например для установки почтовых служб потребуется отключение postfix командами systemctl stop postfix и systemctl disable postfix.

Затем нужно загрузить Apache и PHP, необходимые для полноценного функционирования нашего сервера.

Итак, для этого:

  • Устанавливаем пакет Apache командой yum -y install httpd.
  • Вносим изменения в конфигурационный файл (там необходимо указать адрес сервера, имя, подписи и прочее).
  • Запускаем Apache и включаем функцию автозапуска командами systemctl start httpd и systemctl enable httpd.
  • Затем добавляем PHP командой yum -y install php php-mbstring php-near.
  • Перезагружаем Apache командой systemctl restart httpd.

Установка системы управления БД MySql

Перед тем как произвести установку MySql в CentOS 7, стоит уточнить, что при использовании стандартного менеджера загрузок Yum система скачает альтернативную версию программы под название MariaDB, поэтому в случае с CentOS придется идти обходным путем.

Для установки MySql необходимо:

  • Загрузить клиент MySql с официального репозитория утилиты с помощью команды wget *ссылка на файл с клиентом MySql*.
  • Затем установить его в sudo rpm -ivh *полное название rpm файла с нужной версией MySql* и sudo yum install mysql-server.
  • Затем дважды подтвердить операцию, введя в командную строку Y.

мониторинга Zabbix

Для установки Zabbix в CentOS 7 необходимо найти свежую версию клиента на официальном сайте разработчика и затем инсталлировать его в системе.

Для этого необходимо:

  • Добавить репозиторий командой rpm Uvh *ссылка на rpm-файл с актуальной версией Zabbix*.
  • Обновить список доступного программного обеспечения командой yum update.
  • Затем установить клиент Zabbix в систему командой yum install zabbix-agent.
  • После остается проверить версию клиента (нужна третья) и утвердительно ответить на все запросы, вводя Y в командной строке.

Установка почтового сервера Zimbra

Перед тем как произвести установку Zimbra в CentOS 7, необходимо подготовить для этого систему.

Итак, нужно проделать следующее:

  • Правильно настроить файл etc/hosts и hostname.
  • Разрешить в iptables все порты Zimbra.
  • Выключить SeLinux.
  • Выключить все MTA-службы.
  • Обновить операционную систему командой yum update -y.
  • Затем нужно загрузить соответствующие пакеты командой yum install perl perl-core ntpl nmap sudo libidn gmp.
  • Затем - саму утилиту Zimbra *ссылка на файл с утилитой Zimbra актуальной версии*.
  • Распаковать файл командой tar и перейти в соответствующую директорию командой cd.
  • После чего нужно запустить процесс установки командой./install.sh —platform-override.
В популярном использовании, «Linux» часто относится к группе распределенной операционной системы, построенной на ядре Linux. В строгом смысле этого слова, хотя, Linux относится только к наличию самого ядра. Для того, чтобы установить полную операционную систему, дистрибутивы часто включают в себя набор инструментов и библиотеки из проекта GNU и других источников. Другие разработчики в последнее время используют Linux для создания и запуска мобильных приложений; он также играет ключевую роль в развитии доступных устройств, таких как Chromebooks, где работает операционная система на ядре. В облачных вычислений и серверных сред в целом, является популярным выбором из нескольких практических соображений:
  • Его распределения остаются актуальными и поддерживается сообществами других разработчиков.
  • Он может работать в широком диапазоне аппаратных средств и устанавливатся рядом с уже существующими системами (полезной чертой местных условий развития).
  • Он поддерживает централизованную установку программного обеспечения из уже существующих хранилищ.
  • Его потребность в ресурсах на низком уровне.
  • Это часто вершина ума, когда разработчики строят приложение экосистем и оснастки для серверов, что приводит к высокому уровню совместимости.
  • Он поддерживает необходимые изменения в поведении операционной системы.

Linux также ведет свое происхождение от движения за открытое и , и, как следствие некоторые разработчики выбирают его за сочетание этических и практических соображений:

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

Чтобы понять роль Linux в рамках сообщества разработчиков (и за ее пределами), в этой статье будут изложены краткая история Linux путем Unix, а также обсудим некоторые популярные дистрибутивы Linux.

Корни в Unix

Linux имеет свои корни в Unix и Multics, два проекта, общие цели создания надежной многопользовательской операционной системы.

Начала Unix

Unix разработан из проекта Multics в компьютерных наук Научно-исследовательский центр The Bell Laboratories. Разработчики, работающие над Multics в Bell Labs и в других местах были заинтересованы в создании многопользовательской операционной системы с хранением одноуровневого, динамическое связывание (в котором запущенный процесс может запросить добавление другого сегмента в адресное пространство, позволяя ему выполнять код этого сегмента) и иерархической файловой системой.

Bell Labs прекратила финансирование проекта Multics в 1969 году, но группа исследователей, в том числе Кен Томпсон и Деннис Ритчи, продолжали работать с основными принципами проекта. В 1972-3 они приняли решение переписать систему в C, который сделал Unix однозначно портативным: в отличие от других современных операционных систем, он может одновременно перемещаться и переживать свое оборудование.

Исследования и разработки в Bell Labs (позже AT & T), продолжение с Unix System Laboratories развивают версию Unix, в сотрудничестве с Sun Microsystems, которая будет широко принята коммерческими поставщиками Unix. В то же время, исследования продолжались в академических кругах, прежде всего компьютерных систем Research Group в Университете Калифорнии в Беркли. Эта группа подготовила Berkeley Software Distribution (BSD), который вдохновил целый ряд операционных систем, многие из которых до сих пор используются сегодня. Два дистрибутива BSD для исторической справки, является NeXTStep, операционной система начата с ​​NeXT, которая стала основой для MacOS, среди других продуктов, и MINIX, образовательная операционной система, которая сформировала как базовую основу для Линуса Торвальдса, вследствии этой основы и разработал Linux.

Основные возможности Unix

Unix ориентирован вокруг принципов ясности, переносимости и одновременности.

  • Ясность: модульная конструкция Unix позволяет запускать функции в ограниченном и определенным образом. Его файловая система является единой и иерархической, что упрощает обработку данных. В отличие от некоторых своих предшественников, Unix реализует сотни (а не тысячи) системных вызовов, каждый из которых предназначен для прямой и ясной цели.
  • Переносимость: Написав Unix в C, группа в Bell Labs позиционируется Unix для широкого использования и принятия. C был разработан, чтобы иметь низкоуровневый доступ к памяти, минимальную задержку времени выполнения и эффективную связь между языком и машинными инструкциями. Базис в C делает Unix более гибким и легко работающим на различных аппаратных средствах.
  • Одновременность: Ядро Unix адаптировано к цели (совместно с проектом Multics) поддерживать нескольких пользователей и рабочих процессов. Пространство ядра остается отличным от пространства пользователя в Unix, что позволяет одновременно запускать несколько приложений.

Эволюция Linux

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

Эксперименты с открытым исходным кодом

Ричард Столлман был центральной фигурой среди разработчиков, которые были вдохновлены, чтобы создать не запатентованные альтернативы Unix. Работая в лаборатории искусственного интеллекта Массачусетского технологического института, он приступил к работе над проектом GNU (рекурсивный от «GNU не Unix!»), В конце концов покинул лабораторию в 1984 году, чтобы он мог распространять компоненты GNU как свободное программное обеспечение. GNU ядро, известное как GNU Hurd, стало в центре внимания Фонда свободного программного обеспечения (FSF), основанный в 1985 году и в настоящее время во главе с Столлмана.

Между тем, другой разработчик разработал другую бесплатную альтернативу Unix: финский студент Линус Торвальдс. После того, как становится разочарованием в связи с MINIX для получения лицензии, Торвальдс объявил группу пользователей MINIX 25 августа 1991 года, он начал разрабатывать свою собственную операционную систему, которая напоминала MINIX. Хотя первоначально разработана на MINIX с помощью компилятора GNU C, Linux ядро ​​быстро стало уникальным проектом с ядром разработчиков, выпущенной версию 1.0 ядра с Торвальдсом в 1994 году.

Торвальдс был исполнителем GNU кода, включая GNU C Compiler, с его ядром, и это остается верным, что многие дистрибутивы Linux опираются на компоненты GNU. Столлман лоббировала расширить термин «Linux» в «GNU/Linux», как он утверждает, захватит и роль проекта GNU в развитии системы Linux и основные идеалы, в которых способствовал проект GNU и ядро Linux. Сегодня «Linux» часто используется для обозначения как наличие ядра Linux и GNU элементов. В то же время встроенные системы на многих портативных устройствах и смартфонах часто используют ядро Linux с небольшим количеством компонентов GNU.

Основные возможности Linux

Хотя ядро Linux ​​унаследовало многие цели и свойство от Unix, он отличается от предыдущей системы следующим:

  • Его основной компонент ядра, который разрабатывается независимо от других компонентов операционной системы. Это означает, что Linux заимствует элементы из различных источников (например, GNU), которое объединяет всю операционную систему.
  • Это бесплатно и с открытым исходным кодом. Поддержка сообщества разработчиков, ядро под лицензией GNU General Public License (ответвление работы FSF по проекту GNU), и доступны для скачивания и модификации. GPL предусматривает, что производная работа должна поддерживать лицензионные условия оригинального программного обеспечения.
  • Он имеет монолитное ядро, похожее на Unix, но оно может динамически загружать и выгружать код ядра по требованию.
  • Он имеет симметричную многопроцессорную (SMP) поддержку, в отличие от традиционных реализаций Unix. Это означает, что одна операционная система может иметь доступ к нескольким процессорам, которые разделяют основную память и доступ ко всем устройствам ввода/вывода.
  • Ядро является превентивным, еще одно отличие от Unix. Это означает, что планировщик может принудительно переключиться на драйвер или другую часть ядра во время выполнения.
  • Ядро ​​не различает между потоками и обычными процессами.
  • Включает в себя интерфейс командной строки (CLI), а также может включать в себя графический интерфейс пользователя (GUI).

Популярные дистрибутивы Linux

Разработчики сегодня поддерживают множество популярных дистрибутивов Linux. Среди самых давних является , бесплатный и с открытым исходным кодом, который имеет 50000 пакетов программного обеспечения. Debian вдохновил другой популярный дистрибутив, финансируемый Canonical Ltd. Ubuntu использует инструменты формата пакета deb и управления пакетами Debian.

Аналогичная зависимость существует между Red Hat, Fedora и . Red Hat создала дистрибутив в 1993 году, а спустя десять лет разделила свои усилия на Red Hat Enterprise Linux и Fedora, сообщества на основе операционной системы, которая использует ядро Linux и элементы из проекта GNU. Red Hat также имеет отношение к проекту CentOS, другим популярным дистрибутивом Linux для веб-серверов. Это соотношение, однако, не включает оплачиваемое техническое обслуживание. Debian, CentOS поддерживается сообществом разработчиков.

Вывод

В этой статье мы рассмотрели корни в Linux в Unix и некоторые из их характерных черт. Все замечания можно оставлять внизу в комментариях.

Сегодня мы анонсируем доступность релиза операционной системы CentOS 7 в облаке InfoboxCloud , основанного на пакетной базе Red Hat Enterprise Linux 7 и полностью совместимого с ним. В конце поста ссылка на бесплатное тестирование в облаке.

CentOS 7 - первый релиз ОС, после перехода команды CentOS в RedHat. Данная ОС стабильна и готова к корпоративному использованию.

Мы начинаем обзор новой ОС, состоящий из серии теоретических и практических статей. В первой главе обзора будет рассказано о поддержке контейнеров Linux в CentOS 7.

В облаке по умолчанию устанавливается минимальная версия CentOS 7 для обеспечения максимальной безопасности через снижение поверхности атаки. Все необходимые компоненты ОС устанавливаются из стандартных репозиториев.

Ключевые изменения CentOS 7
  • Поддержка контейнеров Linux (включая поддержку Docker ). Контейнеры расширяют возможности по разработке, доставке и изоляции софта для тестовых и производственных задач. Так же контейнеризация увеличивает безопасность ПО, снижая поверхность атаки;
  • Интеграция Active Directory / Identity Management (IdM)
  • Использование systemd , стандарта управления процессами, сервисами, безопасностью и другими ресурсами;
  • Встроенные профили и инструменты для оптимизации производительности и простого масштабирования;
  • Унифицированные инструменты управления и фреймворк управления OpenLMI , являющийся фактически стандартом индустрии для администрирования и настройки системы;
  • Техническая предварительная версия технологии установки обновлений ядра без перезагрузки kpatch ;
Поддержка контейнеров Linux
Docker безусловно выстрелил, породив изрядный шум в блогосфере и социальных сетях. В самых различных областях начали активно использоваться контейнеры для изоляции приложений друг от друга и от внешней среды, как средство доставки и развертывания программного обеспечения.

В контейнерная виртуализация используется уже несколько лет как один из вариантов виртуализации: более быстрый и экономичный, чем гипервизорная технология. Стандартный функционал InfoboxCloud позволяет быстро из панели управления создавать быстрые и эффективные контейнеры с необходимой ОС. Использование контейнеров внутри виртуальной машины InfoboxCloud (флаг "Разрешить управление ядром ОС " при создании сервера в облаке) приносит новые возможности:

  • Сохраняя возможность управления ядром ОС появляется возможность изоляции приложений друг от друга. В случае сбоя одного приложения система останется стабильной.
  • Разработчики хотят предоставлять программное обеспечение, которое легко развертывать, обновлять и масштабировать . Использование контейнеров позволяет иметь больший контроль над средой исполнения программного обеспечения. Появляется возможность создания портативного образа ПО и окружения, который легко переносить между средами исполнения.
Основные возможности контейнеров Linux:
  • Управление ресурсами;
  • Процесс изоляции;
  • Безопасность;
  • Инструменты управления из командной строки.
В контексте контейнеров Linux управление ресурсами организовано через cgroups . Cgroups позволяют пользователю выделять ресурсы, такие как процессорное время, системная память, пропускная способность сети, блок ввода-вывода или любую комбинацию из этих ресурсов для установки ограниченной пользователем группы задач или процессов, запущенных в данной системе. Пользователи могут заниматься мониторингом любых настроенных cgroups, запрещать cgroups доступ к определенным ресурсам, или даже динамически переконфигурировать cgroups на запущенной системе. Используя cgroups, системные администраторы имеют точный контроль за выделением, приоритизацией, уменьшением, управлением и мониторингом системных ресурсов. Аппаратные ресурсы (ресурсы гипервизора) могут быть легко поделены между задачами и пользователями, часто повышая общую эффективность системы. Cgroups – не новая концепция. Она появилась еще в Cent OS 6. В CentOS 7 стали лучше возможности управления контрольными группами через Systemd - менеджер ОС и сервисов.

Изоляция процессов, сердце архитектуры контейнеров Linux, представлена пространствами имен ядра (kernel namespaces ) CentOS. Сейчас Linux реализовывает шесть различных типов пространств имен. Цель каждого - обернуть каждый глобальный ресурс системы в абстракции . Каждый ресурс предоставляется в качестве изолированного инстанса для процесса внутри пространства имен, что обеспечивает изоляцию - иллюзию того, что группа процессов одинока в системе. Пространства имен необходимы, потому что ядро Linux ничего не знает о контейнерах. Задача пространства имен - научить ядро понятию изолированного окружения.

CentOS 7 реализует следующие пространства имен:

  • PID пространство имен предоставляет изоляцию идентификаторов процессов, позволяя процессам в различных пространствах имен PID иметь одинаковые PID. Одно из главных преимуществ пространств имен PID – возможность контейнеров мигрировать между хостами с сохранением тех же идентификаторов процессов внутри контейнера. PID пространство имен позволяет каждому контейнеру иметь собственный процесс инициализации, который управляет различными задачами инициализации системы, и управлять жизненным циклом контейнера.
  • Сетевые пространства имен предоставляют изоляцию сетевых контроллеров, системных ресурсов, ассоциированных с сетями, файрволлов и таблиц маршрутизации. Сетевые пространства имен позволяют каждому контейнеру иметь собственный виртуальный сетевой стек, который ассоциирован с группами процессов. Каждое пространство имен имеет свое собственное loopback устройство и пространство процесса. Виртуальные или реальные устройства могут быть добавлены к каждому сетевому пространству имен, и IP адреса могут быть назначены на эти устройства и использованы как сетевая нода.
  • Пространства имен UTS изолируют два системных идентификатора: nodename и domainname , возвращаемые системным вызовом uname(). Пространства имен UTS позволяют каждому контейнеру иметь собственный hostname и NIS domain name. Это полезно для инициализации и конфигурационных скриптов, которые совершают свои действия на основе этих имен.
  • Пространства имен монтирования изолируют набор точек монтирования файловых систем подобно группе процессов и помогают созданию различных файловых систем только для чтения. Процессы в различных пространствах имен монтирования могут иметь различные видения иерархии файловой системы. В дополнение к пространствам имен монтирования, системные вызовы mount() и umount() перестают действовать в глобальном пространстве точек монтирования (видимом для всех процессов ОС). Вместо этого они действуют только в пределах пространства имен монтирования, ассоциированным с процессом контейнера.
  • IPC пространства имен изолируют определенные ресурсы межпроцессного взаимодействия (IPC), такие, как объекты System V IPC и очереди сообщений Posix. Каждое пространство имен IPC имеет свой собственный набор идентификаторов System V и свою собственную очередь сообщений POSIX файловой системы.
  • Пользовательские пространства имен изолируют идентификаторы пользователя и группы так, что пользовательские процессы и идентификаторы групп могут быть различными внутри и снаружи пользовательского пространства имен. Наиболее интересный случай - когда процесс обычный не привилегированный ID снаружи пользовательского пространства имен и в то же самое время иметь идентификатор пользователя 0 внутри пространства имен. Это означает, что процесс имеет полные root привилегии для операций внутри пользовательского пространства имен, но является непривилигерованным для операций снаружи пространства имен.
Для обеспечения безопасности так же используется SELinux, который, как и в случае с cgroups, не является новой концепцией и существует начиная с CentOS 4. SELinux применяет метки безопасности и политики для контейнеров Linux и их ресурсов, предоставляя дополнительный уровень безопасности поверх безопасности, предоставляемой пространствами имен ядра.

Команда RedHat (вы ведь знаете, кто все это разработал на самом деле) начала работать над Docker начиная с версии 0.7. Вкладом Red Hat был новый драйвер хранения, который позволил Docker запуститься на Cent OS 7. В течении дальнейшего сотрудничества и вклада Red Hat в Docker был разработан новый встроенный драйвер исполнения, основанный на libcontainer, разработанный для доступа к API ядра контейнера напрямую, без сторонних зависимостей. Этот нативный набор инструментов может управлять возможностями ядра системы, такими как cgroups, пространства имен, сетевые интерфейсы, файрвол и другие особенности ядра. Благодаря Red Hat в Cent OS 7 Docker сейчас готов для корпоративного применения.

Таким образом, контейнеры Linux - важная open source технология для упаковки и доставки приложений, сочетая легковесную изоляцию и гибкость методов развертывания, основанных на образах.

Использованные в подготовке статьи источники.

По сообщению от 28 ноября 2018 года операционная система типового дистрибутива АИС ФССП России «ГосЛинукс» включена в как «Прикладное ПО общего назначения».

В результате экспертизы подготовлено экспертное заключение «о несоответствии требованиям Правил № 1236». Программное обеспечение является произведением от CentOS , которая распространяется по лицензии GPL. Принято решение изменить класс программного обеспечения на прикладное ПО и включить сведения в реестр.

Ранее этому программному продукту дважды было отказано во внесении в реестр. ОС «ГосЛинукс» является доработанным в рамках контракта программным обеспечением операционной системы CentOS, исключительные права на которое у ООО «Корпорация «Ред Софт » не возникают. В ФССП настаивают на том, права на продукт принадлежат РФ .

Совместимость с «АльфаДок»

ОС «Гослинукс», в свою очередь, является Linux -дистрибутивом на основе RPM пакетной базы, предоставляющим защищенную и доверенную среду для выполнения прикладного программного обеспечения пользователей. Разработчиком дистрибутива выступила компания «Ред Софт».

По утверждению разработчиков, «Гослинукс» - первая сертифицированная операционная система на базе свободного программного обеспечения , пригодная для использования во всех государственных органах, государственных внебюджетных фондах и органах местного самоуправления России . Правообладателем продукта является Российская Федерация в лице Федеральной службы судебных приставов.

2016

«Гослинукс» не может попасть в реестр российского ПО

Заявка Федеральной службы судебных приставов (ФССП) на включение в реестр отечественного программного обеспечения ОС «Гослинукс», разработанной в рамках госконтракта с «Ред Софт» , получила отрицательное заключение одного из представителей экспертного совета. Об этом TAdviser рассказали в ФССП в октябре 2016 года. Отрицательное заключение вынес, в частности, Алексей Смирнов - советник генерального директора СПО-разработчика «Базальт СПО» .

На корректное взаимодействие с операционной системой прошли проверку шесть ИТ-систем «ГЛОБУС-ТЕЛЕКОМа». Это – система контроля, инвентаризации и технического учета программно-аппаратной инфраструктуры «СКИТ », программа анализа сетевого трафика «СКИТ. Трафик», ИТ-система анализа телефонного трафика «СКИТ. АТС». Также были протестированы: ИТ-система постоянного контроля и горячего резервирования каналов связи «СКИТ. Дуплекс», программа управления бизнес-процессами Globus FDOC , мультисервисная интеграционная среда для обеспечения межведомственного взаимодействия в электронном виде «МИС.Межвед».

2015

Размещение в национальном фонде алгоритмов и программ

В августе 2015 года в ФССП сообщили TAdviser, что совместно с Минкомсвязью разместили "Гослинукс" в национальном фонде алгоритмов и программ .

Фонд создан для хранения ПО, разработанного за государственные деньги. По задумке, ведомства-заказчики смогут размещать в нем программы, разработанные за их средства, а другие ведомства - использовать эти решения бесплатно.

По состоянию на август 2015 года фонд содержит преимущественно специализированные решения, которые не применимы для широкого круга госзаказчиков. "Гослинукс" стала первым общесистемным программным продуктом в фонде.

Таким образом, "Гослинукс" можно назвать первой операционной системой, рекомендованной для использования министерствами и ведомствами федерального уровня.

Переход на "Гослинукс" в ФССП

В 2015 году ФССП планировала перевести на свободное ПО 60% из более чем 40 тыс. рабочих станций и 90% из 2,5 тыс. серверов.

2014

В 2014 году операционная система получила сертификат соответствия ФСТЭК , подтверждающий оценочный уровень доверия ОУД3 и соответствие требованиям руководящего документа Гостехкомиссии России по 4 уровню контроля отсутствия недекларированных возможностей.

"В июне 2014 года мы рекомендовали территориальным органам самостоятельно осуществлять постепенную замену используемых устаревших ОС (в первую очередь Windows XP и Windows Server 2003) на ОС типового дистрибутива. К июлю в территориальных органах было установлено 3214 экземпляров ОС", - говорили в ФССП.

Оценка стоимости владения свободными продуктами в сравнении с владением правами на проприетарные аналоги пока не проводилась. "По самым грубым оценкам, стоимость работ, связанных с "Гослинукс", в десятки раз ниже стоимости закупаемых другими ведомствами лицензий на проприетарные операционные системы", - считают в ФССП.

По состоянию на август 2015 года ОС "Гослинукс" установлена и применяется в работе судебных приставов в 70 субъектах Российской Федерации.

2013

Разработка "Гослинукс" по заказу ФССП велась в течение 2013 года компанией «Ред Софт» на базе свободного дистрибутива CentOS 6.4.

Первое внедрение ОС было в управлении ФССП Владимирской области. Следующими пилотными регионами стали Костромская и Пензенская области.