Обновление centos 7 до 8

Несколько IP на одном сетевом адаптере

В зависимости от версии операционной системы, дополнительные адреса добавляются посредством:

  1. Псевдонимов — создание нового виртуального интерфейса с названием <имя интерфейса>:<номер>.
  2. Добавлением IPADDRx и NETMASKx в конфигурационном файле.

Рассмотрим оба варианта подробнее.

Создание псевдонимов (более ранние версии CentOS 7 и ниже)

Создаем новый конфигурационный файл для сетевого интерфейса:

vi /etc/sysconfig/network-scripts/ifcfg-ens32:1

DEVICE=ens32:1
BOOTPROTO=static
IPADDR=192.168.0.156
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

* где ens32 — имя физического интерфейса, :1 — виртуальный номер.

Перезапускаем сетевые службы.

Настройка конфигурационного файла (поздние версии CentOS 7 и выше)

Открываем конфигурационный файл для сетевого интерфейса, например:

vi /etc/sysconfig/network-scripts/ifcfg-ens32

DEVICE=ens32
BOOTPROTO=static
IPADDR=192.168.0.155
NETMASK=255.255.255.0
IPADDR1=192.168.0.156
NETMASK1=255.255.255.0
IPADDR2=192.168.0.157
NETMASK2=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

* где ens32 — имя физического интерфейса, дополнительные адреса задаются с помощью опций IPADDR1, IPADDR2, NETMASK1, NETMASK2.

Перезапускаем сетевые службы.

Cкачать CentOS 7

Скачать свежую на текущий момент версию CentOS 7.2.1511 можно двумя способами:

  1. Через torrent сеть
  2. С ближайшего зеркала

Я в качестве такого зеркала предпочитаю использовать :

Скачать CentOS 7
Torrent Yandex Mirror Размер
Скачать CentOS 7 DVD torrent Скачать CentOS 7 DVD iso 4G
СкачатьCentOS 7 NetInstall torrent СкачатьCentOS 7 NetInstall iso 360M
СкачатьCentOS 7 Everything torrent СкачатьCentOS 7 Everything iso 7G
СкачатьCentOS 7 LiveGNOME torrent СкачатьCentOS 7 LiveGNOME iso 1G
СкачатьCentOS 7 LiveKDE torrent СкачатьCentOS 7 LiveKDE iso 1G
СкачатьCentOS 7 Minimal torrent СкачатьCentOS 7 Minimal iso 634M

Напоминаю, что 32 bit или i386 редакции CentOS 7 не существует. Все дистрибутивы только x86_64, то есть 64 bit.

Начало истории

Череда событий, которая привела к улучшению условий программы Red Hat Developer, началась с отказа Red Hat от дальнейшего развития дистрибутива CentOS 8. Как сообщал CNews, компания объявила об этом в начале декабря 2020 г. Выпущенный в сентябре 2019 г., он изначально должен был получать апдейты до 31 мая 2029 г., но теперь последнее обновление для него выйдет 31 декабря 2021 г.

Интерфейс CentOS

CentOS принято считать бесплатной модификацией RHEL без корпоративной поддержки. Отказавшись от CentOS 8, Red Hat, предложила пользователям перейти на CentOS Stream. Ее главное отличие от обычной CentOS заключается в подходе к процессу выпуска обновлений.

«ВТБ Лизинг» внедряет управление данными как ценным бизнес-активом
ИТ в банках

CentOS, как и RHEL, получает всесторонне протестированные патчи и модификации, то есть система работает стабильно, но сами обновления выходят достаточно редко. В то же время CentOS Stream – это в некотором роде тестовый полигон для нововведений, апдейты для него выходят в разы чаще на фоне обычной CentOS. Но разница в том, что тестирование этих патчей будут проводить сами разработчики, и стабильность работы CentOS Stream Red Hat уже не гарантирует.

Типы iso образов CentOS 7

Релиз CentOS содержал в себе несколько видов iso образов. Подробное описание каждого из них представлено в таблице:

Редакции CentOS 7
CentOS-7-x86_64-DVD Этот DVD образ содержит все пакеты, которые могут быть установлены с помощью инсталлера. Рекомендуется для большинства пользователей.
CentOS-7-x86_64-NetInstall Этот NetInstall образ для установки по сети и для восстановления. Инсталлятор спросит, откуда будет производиться установка пакетов. Удобно использовать, если у вас есть локальный репозиторий пакетов.
CentOS-7-x86_64-Everything В этом Everything образе содержится полный набор пакетов CentOS 7. Он может быть использован для установки, либо обновления локального зеркала. Для этого образа требуется двухсторонний DVD, либо флешка на 8 Гб.
CentOS-7-x86_64-LiveGNOME
CentOS-7-x86_64-LiveKDE
Эти два образа являются LiveCD CenOS 7. В зависимости от названия используется та или иная графическая оболочка. Они разработаны для тестирования окружения CentOS 7. Они не устанавливаются на жесткий диск, если вы не собираетесь этого делать принудительно. Набор установленного программного обеспечения поменять нельзя, это можно сделать только на установленной операционной системе с помощью yum.
CentOS-7-x86_64-Minimal С помощью этого Minimal образа можно установить базовую систему CentOS с минимальным набором пакетов, необходимых для работоспособности системы. Все остальное можно доустановить позже с помощью yum. Набор пакетов в этом образе будет такой же, как и на DVD при выборе установки minimal.

Я обычно использую для установки либо minimal образ, либо netinstall.

CentOS 7 minimal

Если вы используете диск centos minimal iso, то увидите следующий экран:

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

  1. Выбор часового пояса centos.
  2. Выбор раскладки клавиатуры.
  3. Поддержка каких языков будет осуществляться на сервере.
  4. Откуда будет происходить установка. Так как у нас дистрибутив centos minimal, установка будет с локального iso.
  5. Выбор пакетов для установки. В образе minimal доступен только минимальный набор софта.
  6. Разбивка жесткого диска. Подробнее коснемся этого пункта, когда будем разбирать установку на raid.
  7. Настройка сетевых интерфейсов.

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

Итак, нажимаем на DATE & TIME и настраиваем параметры времени:

  1. Указываем регион.
  2. Выбираем город.
  3. Включаем при необходимости службу времени для синхронизации часов centos с внешними серверами.
    Это возможно сделать только если вы уже настроили сетевые параметры. Если нет, то вернитесь к этой настройке позже.
  4. Выбираем список внешних серверов для синхронизации времени: 
  5. Указываем формат, в котором будет отображаться текущее время.
  6. При необходимости изменяем дату сервера.

После завершения настроек жмем сверху синюю кнопку Done.

Идем в следующую настройку — KEYBOARD LAYOUT:

  1. Добавляем необходимые раскладки. Я добавил Russian.
  2. Нажимаем Options и выбираем, как будет происходить переключение раскладок.
  3. Тестируем раскладки и переключение. Если все в порядке, идем дальше.

Нажимаем LANGUAGE SUPPORT:

Выбираем дополнительные языки, которые будет поддерживать система. Чаще всего мне это не нужно, но для примера добавим поддержку русского языка. Это может пригодиться, например, при создании файлового архива с русскими названиями в файлах. С поддержкой русского языка можно работать в консоли с русскими названиями папок и файлов. Если у вас, к примеру, сервер настраивается для работы в качестве шлюза, поддержка дополнительных языков скорее всего не пригодится. После выбора снова жмем Done.

Теперь выполним сетевые настройки. Идем в раздел NETWORK & HOSTNAME. Подробно о я указывал в одной из своих статей, поэтому останавливаться на этом вопросе не буду. Включаем ползунок в положение ON и получаем автоматически настройки по dhcp:

  1. Включение ползунка в положение ON активирует интерфейс, он получает настройки по dhcp.
  2. Если вы хотите изменить эти настройки, нажимаете Configure.
  3. Указываете hostname. Если забудете, то после установки этот параметр можно изменить.

Завершаем настройку нажатием на Done. Теперь можно вернуться в настройки часов и активировать Network Time.

Теперь перейдем в раздел INSTALLATION SOURCE. При установке centos minimal менять этот параметр нет необходимости. Там по-умолчанию установлен локальный источник, нам это подходит. Можно ничего не трогать:

В разделе SOFTWARE SELECTION при minimal установке тоже нечего выбрать, уже указан единственно возможный вариант:

Нам осталось рассмотреть последнюю обязательную настройку, без которой установка centos не начнется — INSTALLATION DESTINATION. Зайдя в нее вы увидите список подключенных к серверу дисков. В моем случае это один жесткий диск.

Если ваш диск определился правильно, выбираете его и нажимаете Done. Выскакивает окошко с предупреждением, что для установки системе понадобится примерно 1 Гб места на жестком диске, а на вашем жестком диске нет необходимого свободного места. Это происходит потому, что раньше на этом диске была установлена другая система и она занимала весь жесткий диск. Нам нужно удалить всю старую информацию для установки новой системы. Делаем это, нажимая Reclaim space:

Выбираем диск и удаляем все существующие разделы на нем — жмем сначала Delete all, а потом Reclaim space:

После этого установщик выберет весь диск в качестве диска для установки. После этого можно начать непосредственно установку centos, нажав кнопку Begin Installation.

Дальше рассмотрим вариант, когда вы выполняете установку с образа netinstall.

Мотивация Кука

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

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

Кис Кук уверен, что подход к разработке Linux нужно менять полностью

Например, в ноябре 2017 г. CNews рассказывал о том, как россиянин Антон Коновалов всего за несколько месяцев выловил в коде ядра Linux, по меньшей мере, 15 багов в драйверах USB. Он подчеркнул, что такие уязвимости можно использовать для запуска произвольного кода и захвата контроля над пользовательскими системами.

В июле 2021 г. эксперты по информационной безопасности компании Qualys нашли в ядре уязвимости с зашкаливающим уровнем опасности. Они позволяют вызвать крах системы и выполнить произвольный код. И если в случае «дыр», выявленных Антоном Коноваловым их возраст не был установлен, то находкам Qualys совсем недавно исполнилось шесть и семь лет.

Более того, одну из этих уязвимостей они нашли, успешно проэксплуатировав вторую. Из-за них под угрозой оказались пользователи Debian, Ubuntu, Red Hat и целого ряда других популярных дистрибутивов Linux.

DHCP

Для автоматического получения IP-адреса от сервера DHCP мы должны задать следующее значение для опции BOOTPROTO в конфигурационном файле:


BOOTPROTO=dhcp

* в наших примерах выше данный параметр имеет значение static.

Переопределение DNS с помощью dhclient.conf

Также мы можем переопределять настройки для DHCP с помощью конфигурационного файла. Например, если мы хотим, чтобы адреса DNS были заданы определенные, а не полученны от DHCP, открываем конфиг:

vi /etc/dhcp/dhclient.conf

Вставляем запись:

interface «enp0s3»
{
    supersede domain-name-servers 8.8.8.8, 8.8.4.4;
}

* где enp0s3 — имя сетевого интерфейса, который будет получать адрес от сервера DHCP. 8.8.8.8, 8.8.4.4 — адреса, которые будут настоены на интерфейсе, независимо от того, какие предложит сервер DHCP.

Или мы можем использовать адреса от DHCP, но сделать приоритетными свои:

interface «enp0s3»
{
    prepend domain-name-servers 127.0.0.1;
}

* в данном примере, мы зададим в качестве основного сервера DNS — 127.0.0.1.

Чтобы данный метод сработал в CentOS 8, необходимо открыть файл:

vi /etc/NetworkManager/NetworkManager.conf

В раздел  добавить:

dhcp=dhclient

Переопределение DNS в NetworkManager (альтернативный способ)

Метод, описанный выше по переопределению DNS не подходит для NetworkManager без изменения настройки dhcp, так как адреса будут получены и обработаны с помощью встроенных методов. Выше, предоставлено решение в виде настройки dhcp=dhclient, однако мы рассмотрим альтернативный способ, на случай, если кому-то это пригодится.

Создаем файл:

vi /etc/NetworkManager/dispatcher.d/99-resolv.conf.dhclient

#!/bin/bash
sleep 1
rm -f /etc/resolv.conf
echo ‘# Generated by dispatcher’ > /etc/resolv.conf
echo ‘nameserver 127.0.0.1’ >> /etc/resolv.conf
echo » >> /etc/resolv.conf
cat /var/run/NetworkManager/resolv.conf >> /etc/resolv.conf

* в данном примере мы создали скрипт, который сначала добавит нужную нам запись в файл /etc/resolv.conf, а после добавит туда значения, полученные от DHCP

Обратите внимание, что в конкретном примере:

  • адрес 127.0.0.1 задается в качестве приоритетного сервера DNS.
  • остальные настройки получаем от DHCP, которые NetworkManager помещает в файл /var/run/NetworkManager/resolv.conf.

Разрешаем запуск скрипта:

chmod +x /etc/NetworkManager/dispatcher.d/99-resolv.conf.dhclient

Перезапускаем сеть:

systemctl restart NetworkManager

Через 2 секунды проверяем:

cat /etc/resolv.conf

Видео установки CentOS 7 на raid 1

Онлайн курсы по Mikrotik

Если у вас есть желание научиться работать с роутерами микротик и стать специалистом в этой области, рекомендую пройти курсы по программе, основанной на информации из официального курса MikroTik Certified Network Associate. Помимо официальной программы, в курсах будут лабораторные работы, в которых вы на практике сможете проверить и закрепить полученные знания. Все подробности на сайте .

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

  • Знания, ориентированные на практику;
  • Реальные ситуации и задачи;
  • Лучшее из международных программ.

1.1 Официальное ядро

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

  • Prepatch: ядро ​​Prepatch или «RC» — это основная предварительная версия ядра, в основном предназначенная для разработчиков ядра и энтузиастов Linux. Он должен быть скомпилирован из исходного кода и обычно содержит новые функции, которые необходимо протестировать, прежде чем их можно будет поместить в стабильную версию. Ядро Prepatch поддерживается и выпускается Линусом Торвальдсом.
  • Mainline: Дерево Mainline поддерживается Линусом Торвальдсом. Эта версия ядра представит все новые функции. Новое ядро ​​Mainline выпускается каждые 2-3 месяца.
  • Стабильный: после выпуска каждого основного ядра оно считается «стабильным». Любые исправления в стабильном ядре будут отслеживаться из дерева Mainline и использоваться назначенными разработчиками стабильного ядра. До следующего основного ядра доступно только несколько версий ядра с исправлением ошибок, если только оно не указано как «ядро долгосрочного обслуживания». Стабильное обновление ядра выпускается по требованию, обычно 2-3 раза в месяц.
  • Долгосрочные: Обычно для исправления ошибок старого ядра предоставляется несколько версий ядра с «долгосрочным обслуживанием». Эти ядра будут исправлять только основные ошибки и не будут часто выпускать версии.

Долгосрочный выпуск ядра:

издание Обслуживание человек Дата выхода Жизненный цикл проекта
4.14 Greg Kroah-Hartman 2017-11-12 Jan, 2020
4.9 Greg Kroah-Hartman 2016-12-11 Jan, 2019
4.4 Greg Kroah-Hartman 2016-01-10 Feb, 2022
4.1 Sasha Levin 2015-06-21 May, 2018
3.16 Ben Hutchings 2014-08-03 Apr, 2020
3.2 Ben Hutchings 2012-01-04 May, 2018

Необходимо сменить язык программирования

Проблему с бесчисленным количеством уязвимостей в Linux Кис Кук частично связывает и с языком программирования С, самым популярным в мире (статистика Tiobe на июль 2021 г.). «Linux, написанный на C, по-прежнему будет иметь длинный хвост проблем», – подчеркнул Кук, добавив, что Linux следовало бы писать на «более безопасных» языках.

«ВТБ Лизинг» внедряет управление данными как ценным бизнес-активом
ИТ в банках

В качестве примера Кук привел язык Rust. Как сообщал CNews, согласно опросу Stack Overflow, большинство программистов называют его своим самым любимым языком. К тому же, он очень нравится и киберпреступникам.

Также Кук считает неправильным нынешний алгоритм поиска уязвимостей в коде ядра. Программисты задействуют базу данных Mitre CVE (Common Vulnerabilities and Exposures), используя ее для оценки опасности существующих уязвимостей. Кук уверен, что она совершенно не годится для решения этой задачи, поскольку, с его слов, «не всем уязвимостям присваиваются CVE-метки, и к тому же они назначаются несвоевременно».

Сравниваем FreeBSD и Linux

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

И FreeBSD, и дистрибутивы семейства Linux являются UNIX-подобными операционными системами. Линукс изначально создавался Линусом Торвальдсом как свободная альтернатива UNIX-подобной системе MINIX, в то время как FreeBSD ближе к изначальной версии UNIX: первая ОС семейства BSD даже носила название Berkeley Unix.

Общее UNIX-наследие обоих семейств проявляется в использовании сходных паттернов. И там, и там взаимодействие пользователя с системой осуществляется преимущественно с помощью командного интерпретатора (shell), программный интерфейс приложения (API) обладает схожим функционалом, есть сходство и в иерархии файловой системы. Благодаря этому гораздо проще портировать приложения из FreeBSD в Linux и наоборот, нежели из других, не-UNIX-подобных систем.

Одно из основных отличий между семейством BSD и дистрибутивами, в основе которых лежит ядро Linux, состоит в типе лицензирования.

Большинство дистрибутивов Linux и приложений для них распространяются под лицензией GNU GPL, также известной как лицензия «copyleft» («авторское лево»), позволяющая использовать оригинальный код для создания новых продуктов, не запрашивая разрешения владельца исходных текстов, но сохраняя условия его распространения. Эта лицензия продвигает идею свободного распространения и открытости превыше всего

Поэтому при разработке проприетарного ПО стоит с осторожностью использовать продукты, лицензированные GPL

Операционные системы семейства BSD, в том числе и FreeBSD, распространяются под лицензией BSD, содержащей больше свободы, чем лицензия GPL, не требуя от всех производных продуктов сохранения всех условий исходной лицензии. Программное обеспечение под лицензией BSD можно свободно использовать для разработки проприетарных приложений с закрытым исходным кодом.

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

Настройка сети из консоли (командами)

Настройка из консоли будет работать только до перезагрузки системы. Ее удобно применять для временного конфигурирования или проведения тестов.

Назначение IP-адреса или добавление дополнительного к имеющемуся:

ip a add 192.168.0.156/24 dev ens32

* в данном примере к сетевому интерфейсу ens32 будет добавлен IP 192.168.0.156.

Изменение IP-адреса:

ip a change 192.168.0.157/24 dev ens32

* однако, по факту, команда отработает также, как add.

Удаление адреса:

ip a del 192.168.163.157/24 dev ens32

Добавление маршрута по умолчанию:

ip r add default via 192.168.0.1

Добавление статического маршрута:

ip r add 192.168.1.0/24 via 192.168.0.18

Удаление маршрутов:

ip r del default via 192.168.160.1

ip r del 192.168.1.0/24 via 192.168.0.18

Подробнее про управление маршрутами в CentOS.

Пользователи негодуют

CentOS – это, согласно статистике W3Tech, один из самых распространенных Linux-дистрибутивов. Он находится на втором месте с долей 18,8% уступая лишь Ubuntu с его 47,5% и опережая Debian (17,5%). RHEL, ближайший родственник CentOS, занял четвертую строчку с 1,8-процентной долей.

По версии портала ZDnet, Red Hat отказывается от CentOS именно для продвижения RHEL. На протяжении многих лет CentOS была единственным выбором опытных Linux-администраторов, которые мало нуждались в технической поддержке, в то время как RHEL выбирали компании, которым нужна была полная поддержка со стороны разработчиков. Теперь, после решения Red Hat, тысячам компаний придется перейти на другой вариант Linux, и они очень недовольны этим фактом.

Пользователи завалили интернет гневными комментариями в адрес Red Hat

Как создать ИТ-инфраструктуру с нуля для производственной компании?
Инфраструктура

Негодующие пользователи оккупировали и портал Reddit. Участник под псевдонимом nixcraft написал: «Принцип использования CentOS полностью отличается от CentOS Stream, многие люди используют CentOS для производственных корпоративных рабочих нагрузок, а не для разработки». Его тема, созданная 8 декабря 2020 г., набрала свыше 615 комментариев.

Другой пользователь Reddit, DocToska, пишет, что развивал свои проекты с открытым исходным кодом на последних выпусках CentOS, начиная с CentOS 4. Флагманский продукт его компании работает на CentOS 8 как раз потому, что они сделали ставку на поддержку до 2029 г. «CentOS Stream якобы теперь является заменой CentOS, но очевидным недостатком является то, что стабильность и надежность приносятся в жертву на алтаре передовых технологий. Я недоволен этим. Если Red Hat забивает лошадь, на которую мы ставим средства к существованию, то мы переедем на другой дистрибутив и прихватим с собой пару тысяч клиентов», – добавил он.

Возможные ошибки

Например: 

Причина: в системе не установлен один из пакетов, содержащий необходимые библиотеки.

Решение: необходимо воспользоваться поисковиком, чтобы определить, какой именно пакет необходим для продолжения установки и воспользоваться командой yum install <имя пакета> для его установки.

2.  Ошибка 127

Например: [include/generated/timeconst.h] Ошибка 127

Причина: как и с предыдущей ошибкой, в системе не установлен один из пакетов, содержащий необходимые библиотеки.

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

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: