Операционная система centos. Что лучше, Ubuntu или CentOS. Выделим позитивные качества CentOS для выделенного сервера

Сегодня мы анонсируем доступность релиза операционной системы 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 технология для упаковки и доставки приложений, сочетая легковесную изоляцию и гибкость методов развертывания, основанных на образах.

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

И является совместимым с ним.

Срок поддержки каждой версии CentOS составляет 10 лет. Каждая версия обновляется каждые 6 месяцев для поддержки новых аппаратных средств.

2019: Утечка памяти ядра Linux от 754.el6 и старше

По информации компании, в декабре 2018 года несколько пользователей Carbon Reductor DPI вручную обновили ядро операционной системы CentOS, через несколько дней система мониторинга Carbon Soft обнаружила проблему с нехваткой оперативной памяти на серверах . После подключения инженеров, выяснили, что ядра система от 754.el6 имеют утечку памяти, в результате чего весь сервер перестаёт работать - у нескольких операторов связи перестала работать фильтрация по реестру запрещённых сайтов.

После локализации проблемы с обновлением операционной системы разобрались и исправили неполадку. В данной ситуации реакция инженеров помогла избежать нескольким интернет-провайдерам штрафов от Роскомнадзора .

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

2016: CentOS Atomic Host

CentOS Atomic Host - компиляция продукта Red Hat Enterprise Linux Atomic Host 7.2 , созданного на основе наработок свободного проекта Atomic.

Сборки CentOS Atomic Host доступны в форме установочного ISO, образов виртуальных машин Vagrant (Libvirt, VirtualBox), qcow2 (OpenStack, AWS, Libvirt) и AMI (Amazon Machine Image). Основными компонентами CentOS Atomic Host являются пакеты с ядром Linux 3.10.0-327, docker-1.8.2-10, cloud-init-0.7.5-10, atomic-1.6-6.gitca1e384, kubernetes-1.0.3-0.2, etcd-2.1.1-2, ostree-2015.9-2 и flannel-0.5.3-8.

Atomic Host предоставляет базовое окружение, которое содержит только минимальный набор компонентов (systemd, journald, docker, rpm-OSTree, geard и т.п.), необходимых для запуска и управления изолированными контейнерами. Все пакеты, обеспечивающие работу конечных приложений, поставляются непосредственно в составе контейнеров, а хост-система не содержит ничего лишнего. Состав хост-системы неделим и обрабатывается как целостный образ, без разбиения на отдельные пакеты. При этом сам образ формируется на основе штатных RPM-пакетов CentOS 7 при помощи системы rpm-ostree.

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

Особенности Atomic Host

  • Обновление окружения Atomic Host производится атомарно, через замену образа всей системы, без разбивки на отдельные пакеты, что даёт возможность легко откатиться на прошлое состояние в случае проблем.
  • Для управления кластерами контейнеров задействован фреймворк Kubernetes, открытый компанией Google .
  • Помимо cgroups и пространств имён дополнительная изоляция приложений внутри контейнеров обеспечивается системой SELinux, что добавляет дополнительный барьер защиты.
  • Окружение Atomic Host может быть развёрнуто не только на физических серверах, но и в виртуальных машинах, приватных и публичных облачных окружениях, включая возможность запуска под управлением Amazon Web Services и Google Compute Engine.
  • Выполняемые в окружении Atomic Host образы контейнеров, оформляются в формате Docker ;
  • Для обновления системного окружения используется технология OSTree, при которой системный образ атомарно обновляется из Git-подобного хранилища, позволяющего применять методы версионного контроля к компонентам дистрибутива (например, можно быстро откатить систему к прошлому состоянию). RPM-пакеты транслируются в репозиторий OSTree при помощи специальной прослойки rpm-ostree;
  • Предоставляются средства для инкрементального применения обновлений, избавляющие от необходимости полной замены образа при каждом обновлении;
  • Установка и привязка контейнеров к systemd, а также координация выполнения контейнеров на разных хостах, осуществляется при помощи нового инструмента GearD. GearD войдёт в состав будущего выпуска платформы OpenShift и берёт на себя задачи быстрой доставки и развёртывания кода приложений в программных окружениях на базе изолированных контейнеров с использованием методов непрерывной интеграции;
  • Поддержка запуска привилегированных контейнеров, позволяющих распространять в форме контейнеров управляющие приложения, которым требуется доступ к содержимому базовой хост-системы или к другим контейнерам.

2015: CentOS 7.1511 для архитектуры i686, ARM и PowerPC

21 декабря 2015 года проект CentOS объявил о доступности редакций дистрибутива CentOS Linux 7.1511 для альтернативных платформ, поддерживаемых силами проекта CentOS .

Стали доступны сборки для 32-разрядной архитектуры i386/i686, Armhfp (может использоваться на платах Raspberry Pi2, Сubie truck, Bananapi и т.п.), PowerPC64 и PowerPC8 LE. Ожидается релиз CentOS 7.1511 для ARM64/Aarch64.

Дистрибутив RHEL 7.2 , используемый в качестве основы CentOS 7.1511, выпускается только для 64-разрядных систем. Адаптация пакетной базы для 32-разрядных систем выполнена в результате деятельности группы CentOS Linux AltArch SIG (Special Interest Group), в которую вошли участники, заинтересованные в портировании CentOS на платформы и архитектуры, отличные от x86_64 и официально не поддерживаемые в базовой редакции.

Сегодня мы анонсируем доступность релиза операционной системы 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 технология для упаковки и доставки приложений, сочетая легковесную изоляцию и гибкость методов развертывания, основанных на образах.

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

Пришло время познакомиться с очень популярным дистрибутивом Linux CentOS , который широко используется в качестве платформы для всевозможных серверов, рассматривать дистрибутив мы будем на примере версии CentOS 7.1 процесс установки которой мы, конечно же, подробно разберем.

Как я уже сказал, дистрибутив CentOS очень популярен среди операционных систем для серверов и он наравне с такими дистрибутивами как Debian или Ubuntu активно используется системными администраторами для Web-серверов, серверов баз данных и других.

И начнем мы как обычно с обзора дистрибутива CentOS, а затем перейдем к рассмотрению его установки.

Дистрибутив Linux CentOS

CentOS (Community ENTerprise Operating System ) – бесплатный дистрибутив операционной системы Linux, основанный на коммерческом Red Hat Enterprise Linux. Срок поддержки каждой версии 10 лет. Новые версии выходят примерно, раз 2-3 года и обновляются каждые 6 месяцев.

CentOS поддерживает архитектуру процессора i386, x86_64, а последняя версия (на данный момент доступна 7.1 ) поддерживает только x86_64.

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

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

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

Где скачать CentOS?

Как я уже сказал, что на данный момент актуальной версией дистрибутива является CentOS 7.1 и загрузить его можно с официального сайта вот с этой страницы

Где нам предлагаю 3 варианта загрузки, оптимальным вариантом является загрузка DVD образа, размер которого чуть более 4 гигабайт. Я для примера буду скачивать именно его, т.е. жму «DVD ISO ». Если Вас интересует расширенный набор пакетов, то выбирайте «Everything ISO», а если только минимум, то соответственно «Minimal ISO». После нажатия на ссылку у Вас откроется страница со списком зеркал для скачивания, Вы выбираете любое на Ваше усмотрение, например я, скачиваю с http://mirror.yandex.ru/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1503-01.iso.

Установка CentOS 7.1

Для примера предлагаю установить CentOS со средой рабочего стола GNOME и набором офисных программ, а также популярных приложений для GNOME. Сам процесс установки не сложный, напоминает установку Fedora 21 .

Шаг 1

Загружаемся с диска и выбираем «Install CentOS 7 »

Шаг 2

Затем выбираем язык и жмем «Продолжить »

Шаг 3

Потом нам необходимо настроить процесс установки, для начала подтвердим то, что мы хотим автоматически разбить диск, для этого щелкаем на «Место установки »

И просто сразу жмем «Готово » (Если Вы хотите сами создать разделы на диске, то выбираете соответствующий пункт )

Шаг 4

Затем так как мы решили сразу установить GNOME, офис и дополнительные приложения, жмем «Выбор программ »

И отмечаем нужные нам пакеты, т.е. окружение GNOME, приложения GNOME, офисный комплект и жмем «Готово »

После чего можно нажимать кнопку «Начать установку »

Шаг 5

Все установка началась, но нам еще необходимо задать пароль для root пользователя (суперпользователь) и создать пользователя, под которым мы будем работать. И для начала зададим пароль для root пользователя. Жмем кнопку «Пароль root »

Затем соответственно придумываем и вводим пароль. Жмем «Готово »

Заполняем необходимые поля и жмем «Готово »

Вот и все ждем окончания процесса установки

Как установка будет завершена, жмем «Перезагрузить »

После того как система будет перезагружена, выбираем созданного пользователя, вводим пароль и жмем «Войти »

Вот мы и в первый раз загрузили систему CentOS 7 и нам предлагают подтвердить язык системы, жмем «Далее »

Выбираем раскладку клавиатуры по умолчанию, жмем «Далее »

Все можем начинать пользоваться CentOS 7

Скриншоты CentOS 7.1 (GNOME)

Меню приложений

Файловый менеджер

Меню обзор

На этом предлагаю заканчивать, удачи!

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