Centos 8 установка и настройка

Обновлено: 05.07.2024

Проект CentOS предоставил сообществу бесплатную операционную систему корпоративного уровня путем перекомпиляции исходного кода Red Hat Enterprise Linux, который популярен среди многих профессиональных пользователей Linux. Новый CentOS 8 поставляется со многими новыми функциями, такими как BaseOS, предоставляющий пакеты для настройки минимальной операционной системы, AppStream для дополнительных приложений, которые Вам могут понадобиться, новый инструмент Podman, который заменяет Docker.

В этом руководстве мы рассмотрим процесс, который поможет Вам установить последний релиз CentOS 8.

Шаг 1: Скачайте Centos 8

Последнюю версию Centos 8 можно скачать с официального сайта CentOS, который предлагает прямую загрузку или загрузку через торрент. Размер новой версии составляет около 7 ГБ. Размер минимальной версии 1,6 ГБ.

Centos 8 требует минимум 2 ГБ оперативной памяти для установки, но рекомендуется 4 ГБ и более. Он поддерживает следующие архитектуры:

  • 64-битные архитектуры AMD и Intel
  • 64-разрядная архитектура ARM
  • IBM Power Systems, Little Endian

Шаг 2: Создайте загрузочную USB флешку

В нашем случае для выполнения установки мы будем использовать USB-устройство. Чтобы сделать его загрузочным, нам понадобится USB флеш-карта с размером не менее 8 ГБ. Чтобы создать загрузочное устройство, мы будем использовать команду dd. Если ваше USB-устройство sdb, используйте команду ниже. Если имя устройства отличается, обязательно замените его в команде.

Шаг 3: Установка CentOS 8

Вставьте USB-устройство, а затем включите компьютер и загрузитесь с него. В моем случае компьютер поддерживает установку EFI, что означает, что я выполню процесс установки EFI. Это не очень отличается от установки с BIOS, и мы увидим, где это может быть что-то по-другому во время следующих шагов этого руководства.

При установке по EFI, у вас будет подобное меню

При установке через BIOS возможно это будет выглядеть так

В нашем случае возьмем первый вариант, чтобы сразу начать установку без тестирования носителя.

Шаг 4: Выберите язык для процесса установки

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

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

страница сводка по установке centos 8

Шаг 6: Выберите язык клавиатуры для процесса установки

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

Выберите язык для клавиатуры

Шаг 7: Настройте сеть и имя хоста

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

Шаг 8: Настройте расположение и часовой пояс

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

настройка расположения и часового пояса

Шаг 9: Выберите место назначения для установки

Выберите место назначения для установки

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

После проверки Вашего выбора вам будет предложено выбрать схему разбивки

Шаг 10: Выберите схему разбивки

На этом шаге вам нужно будет выбрать тип установки, которую вы хотите выполнить

Выберите тип раздела для создания

CentOS предлагает 3 типа разбивки:

  • Стандартный раздел
  • Раздел в виде логического тома (LVM)
  • Тонкая инициализация LVM

В нашем случае мы будем использовать стандартную схему для создания различных точек монтирования, которые нам понадобятся.

Шаг 11: Создайте точки монтирования

Рекомендуется создать 4 точки монтирования:

  • /boot: Этот раздел содержит ядро, позволяющее CentOS 8 загружаться.
  • /: Это корневой раздел, содержащий всю файловую систему, необходимую для запуска ОС
  • /home: Это раздел, содержащий ваши личные данные
  • swap: Этот раздел создается в качестве компенсации, когда не хватает оперативной памяти. Вы можете назначить 4 ГБ для подкачки

Мы добавим еще один раздел просто в качестве примера, но вы можете пропустить создание этого раздела

  • /var: который содержит переменные данные, такие как файлы системного журнала, почта, временные файлы и многое другое

Создание точки монтирования

Вы увидите список точек монтирования, которые можно создать

Выберите точку монтирования

Сначала мы создадим /boot раздел. В нашем случае мы будем выбирать именно раздел EFI

Создание загрузочного раздела EFI

Во время установки BIOS, вы будете иметь только /boot, как показано ниже

Создание загрузочного раздела bios для системы BIOS

Теперь, когда он создан, давайте посмотрим на подробности нашего загрузочного раздела EFI. Нам нужно проверить, была ли выбрана правильная файловая система

выберите файловую систему для созданного загрузочного раздела efi

Для системы BIOS результат работы загрузочного раздела будет отличаться


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

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

создайте корневой раздел

После создания проверьте информацию о созданном разделе. В нашем случае мы будем использовать файловую систему xfs

выберите файловую систему xfs для корневого раздела

Мы будем следовать тому же процессу, чтобы создать раздел /home

создание домашнего раздела

Теперь проверьте, что файловая система также xfs

назначить файловую систему xfs для домашнего раздела

Теперь мы можем создать раздел подкачки SWAP

создание раздела подкачки

Для раздела подкачки файловая система будет не xfs, а swap

Теперь вы можете создать /var раздел

создание раздела var

используйте файловую систему xfs

назначьте файловую систему xfs для раздела var

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

сводка примененного разбиения на разделы

Шаг 12: Выберите среду и компоненты для установки

Теперь вам нужно будет настроить програмное обеспечение

Настройка выбора программного обеспечения

Выберите, хотите ли вы установить CentOS с графическим интерфейсом (GUI) или минимальную установку без графического интерфейса. Вы также можете дополнительно выбрать нужные компоненты

Установите среду GUI с этой функцией

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

Установите компоненты для сервера centos

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

Шаг 13: Начинаем установку

После выбора окружения и компонентов можно запустить процесс установки

Начните установку centos 8

Теперь начнется загрузка и установка различных пакетов

Шаг 14: Создайте свою учетную запись пользователя

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

создайте учетную запись пользователя

Я рекомендую создать учетную запись пользователя с правами администратора

создать учетную запись администратора

Шаг 15: Настройте пароль пользователя root

Вам нужно будет настроить пароль пользователя root. Рекомендуется использовать более сильный, который должен отличаться от пароля вашей учетной записи пользователя для обеспечения должной безопасности

Установите пароль пользователя root

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

Шаг 16: Перезагрузитесь и примите лицензионное соглашение

После перезагрузки вы увидите что-то вроде этого

CentOS представит вам лицензионное соглашение

вам просто нужно принять эти условия

Теперь вы можете завершить настройку

Шаг 17: Войдите в свою новую операционную систему

Теперь вы можете войти в свой новый CentOS 8

Войдите в свой centos 8

Вы можете посмотреть страницу приветствия. Вам нужно будет подтвердить некоторые настройки системы.

Подтвердите язык клавиатуры

подтвердите конфигурацию клавиатуры

подтвердите настройку конфиденциальности

При необходимости настройте учетные записи в интернете

при необходимости настройте учетную запись в интернете

Теперь вы можете начать использовать свой CentOS 8

Далее вы увидите страницу запуска gnome

Наслаждайтесь вашим CentOS 8

Исследуйте centos 8

Заключение

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

date

05.02.2021

directory

CentOS, Linux

comments

комментариев 5

В этой статье мы рассмотрим чистую установку с нуля и в базовую настройку сервера CentOS 8 в минимальной конфигурации.

Что нового в CentOS 8?

Рассмотрим наиболее крупные изменения в релизе CentOS 8:

  • Используется ядро Linux kernel 4.18.
  • Переход с пакетного менеджера yum на dnf. В данный момент yum существует как алиас к dnf.
  • Выполнено разделение основного репозитория на 2 — это BaseOS и AppStream. Сделано это для того, чтобы у пользователя появилась возможность устанавливать разные версии пакетов на сервер. BaseOS работает как и раньше.
  • Обновилось все ПО, в том числе и ядро. В базовом репозитории теперь устанавливается php версии 7.2 (наконец-то).
  • Замена iptables на nftables. Лично я пока еще со вторым не работал напрямую, поэтому не могу сказать, хорошо это или плохо. Единственный момент, если нужно будет переносить какие-то проекты на новую ОС, придется разбираться с правилами, так как есть сервера с чистым iptables.
  • network-skripts не используются по умолчанию для настройки сети, теперь управления сетью возложено на Network Manager.
  • По умолчанию устаналивается веб-интерфейс управления сервером cockpit (удобно для новичков).
  • Для управления контейнерами используется podman (вместо docker и mobdy).
  • Новая версия стека TCP/IP 4.16 с улучшенной производительностью и поддержкой алгоритмов контроля BBR и NV.
  • Новые версии дситрибутивов:

Установка CentOS 8 с помощью ISO-образа

В рекомендуемых требования указано, что для установки CentOS 8 необходимо минимум 10 Гб места на диске и 512 Мб RAM на одно ядро процессора

Перезапустив виртуальную машину с примонтированным образом, я вошел в VNC-консоль. Первым шагом, вам будет предложено выбрать дальнейшие действия. Так как вы выполняем установку, нам интересен первый пункт меню:

Выбрав его, у вас запустится процесс установки:

запуск установки centos 8

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

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

язык установки centos 8

параметры установки centos 8

Для запуска установки, обязательно настроить только один пункт “Installation Destination”, там вы указываете разбивку диска, но я предпочитаю так же, сразу настроить сеть и дату со временем.

выбор часового пояса в centos

В зависимости от вашего часового пояса, вы устанавливаете свои параметры, для меня это Москва.

Чтобы настроить сеть, переходим в пункт “Network & Host Name”

настройка сети при установке centos 8

В поле “Host Name” указываем имя сервера и для конфигурации сетевых интерфейсов нажимаем “Configure”

автоматически подключать сеть

В главной вкладке, нужно отметить галочкой “Automatically connect to this network when it is available”, это нужно для того, чтобы сетевой интерфейс поднимался автоматически.

Перейдите во вкладку “IPv4 Settings” (либо IPv6 если вы используете данный протокол) настройте IP-адрес, маску подсети и шлюз:

задать статический ip адрес при установке centos 8

Для ввода конкретного IP, нужно выбрать метод “Manual” и нажать кнопку “Add”, после чего у вас появится возможность ввести нужные данные. Сохранив все, мы вернемся к начальному окну настроек сети

сеть в centos подключена

Как можно увидеть на скриншоте, IP адрес добавился и сетевой интерфейс уже поднят (состояние Connected).

Следующим шагом мы перейдем к разбивке диска:

настройка диска при установке centos 8

Для примера установки я воспользовался автоматической разбивкой от разработчиков CentOS. Если вы хотите разбить диск по-своему, нужно выбрать пункт “Custom”.

Если контроллер вашего сервера не поддерживает аппаратный RAID, в этом пункте меню вы можете собрать программный RAID из дисков сервера на базе mdadm .

Так как на моей виртуальной машине, ранее была установлена ОС, система установки увидела это. Я удалил разделы предыдущей операционной системы в последующих открывающихся меню:

очистка разделов на диске при установке centos 8

reclaim disk space

Удалить разделы можно кнопкой “Delete all”, после чего потребуется нажать кнопку “Reclaim space”, чтобы размер дискового пространства стал актуальным.

Список пакетов для установки выбирается в пункте Software Selection. Если вы планируете использовать CentOS 8 в качестве сервера, достаточно выбрать Minimal Install, а из добавлений Standard и Guest Agents (если вы ставите гостевую ОС в виртуальной машине).

После вышеописанных действий, можно запускать установку кнопкой “Begin Installation”

начать установку centos 8

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

задать пароль root и создать новаых пользователей при установке centos 8

Нажмите на кнопку “Root Password”, введите и повторите пароль и нажмите “Done”, чтобы вернуться к установке:

пароль root

перезагрузка сервера после устаноовки centos 8

На этом установка CentOS 8 завершена.

Базовая настройка CentOS 8 после установки

Базовая настройка CentOS 8 практически не отличается от настройки CentOS, я делаю базовые настройки одинаковые на всех серверах.

CentOS 8: Установка обновлений и инструментов администратора

Как уже отмечалось ранее, в CentOS 8 на замену yum, пришел dnf.

Dnf – это следующее поколение приложения YUM, менеджер пакетов для дистрибутивов Linux на основе RPM-пакетов. Ранее dnf использовался в дистрибутивах Fedora, а теперь и в CentOS 8.

Первое действие, которое я выполняю на вновь установленном сервере, это обновление системы:

Если образ свежий, то скорее всего у вас не будет пакетов для обновлений как в моем случае:

Если у вас обнаружатся обновления, обязательно их установите.

Следующим шагом, подключим репозиторий EPEL и установим необходимые утилиты для удобного администарирования сервера:

dnf install epel-release -y
dnf install mc wget screen nano net-tools bind-utils curl lsof vim -y

Мне для комфортного администрирования хватает этого набора утилит, вы можете установить свои привычные утилиты.

Автоматическое обновление системы я не включаю, так как всегда устанавливаю необходимые обновления вручную. Если вы хотите настроить автоматическое обновление, установите пакет dnf-automatic:

dnf install -y dnf-automatic

Чтобы проверить активные задания на обновления системы введите:

systemctl list-timers *dnf-*

Отключение SELinux

На начальном этапе я всегда отключаю SELinux (для применения изменения нужно перезагрузить сервер):

Отключение SELinux налету, можно выполнить командой:

Настройка сети в CentOS 8

Так как сеть я настроил на этапе установки системы, настройка ее в данный момент не требуется (подробная статья по настройке сети в CentOS). Хочу лишь сказать, что в CentOS 8, сеть управляется только через Network Manager и утилиту nmcl. Network-scripts по умолчанию не поддерживаются. Если честно, в своей работе я всегда отключал NM и не использовал, для меня это не удобный инструмент, теперь придется разбираться и с ним.

Проверка статуса сети:

Установка и смена hostname

Если вы не задали корректный hostname сервера при установке или просто хотите изменить, это можно выполнить несколькими способами. Измените его в файле /etc/hostname или поменяйте с помощью команды:

hostnamectl set-hostname нужный_хостнейм

Настройка firewalld в CentOS 8

Настройка времени и часового пояса (time-zone)

Чтобы посмотреть текущее время и time-zone, нужно ввести команду date:

Мы указали time-zone при установке самой системы, поэтому у нас время по Москве. Чтобы поменять time-zone, нужно воспользоваться соответствующей командой:

timedatectl set-timezone Europe/Moscow

Где вместо Europe/Moscow вы можете указать свой вариант, например:

Настройка истории команда в bash_history

Для удобного просмотра истории, я всегда добавляю пару строк в .bashrc, чтобы в последствии можно было легко ориентироваться в отчетах.

При настройке по умолчанию, вывод history выглядит следующим образом:

То есть мы видим, что выполнялось на сервере, но не видим время и точную дату, для меня это критично, так как доступ к серверам могут иметь несколько специалистов. Поэтому приведем history к приятному виду:

Откроем файл /root/.bashrc и добавим в него нужные строки:
nano /root/.bashrc

Теперь при проверке history, мы видим точное время выполнения той или иной команды:

Cockpit: Веб-интерфейс управления сервером в CentOS 8

Как мы уже упоминали, в CentOS 8 предустановлен веб-интерфейс управления сервером cockpit. Он также управляется через systemctl. Вы можете запустить его и добавить в автозгрузку:

По–умолчанию веб сервер Cockpit слушает на порту 9090. Добавьте этот порт в разрешенные:

Cockpit - веб интерфейс управления сервером centos 8

С помощью веб-интерфейса Cockpit вы можете смотреть загрузку своего сервера, управлять сетями и хранилищами, контейнерами, смотреть логи.

На этом моя типовая настройка CentOS сервера закончена, далее я выполняю настройки согласно технического задания по различным проектам и обычно они отличаются.

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

Чтобы войти на сервер, вам нужно знать публичный IP-адрес вашего сервера. Также вам потребуется пароль или, если вы установили ключ SSH для аутентификации, приватный ключ для учетной записи root user. Если вы еще не выполнили вход на сервер, вы можете воспользоваться нашей документацией по подключению к вашему Droplet с помощью SSH, которая подробно описывает этот процесс.

Если вы еще не подключились к серверу, выполните вход в систему как root user, используя следующую команду (замените выделенную часть команды на публичный IP-адрес вашего сервера):

Примите предупреждение об аутентичности хоста, если оно появится на экране. Если вы используете аутентификацию по паролю, укажите пароль root для входа в систему. Если вы используете ключ SSH с защитой по фразе-паролю, вам может быть предложено ввести фразу-пароль в первый раз при использовании ключа в каждом сеансе. Если вы первый раз выполняете вход на сервер с помощью пароля, вам также может быть предложено изменить пароль root.

Подробнее о root

root user — это пользователь с правами администратора в среде Linux, который имеет очень широкий набор привилегий. Из-за такого широкого набора привилегий учетной записи root не рекомендуется использовать ее на регулярной основе. Это связано с тем, что часть возможностей, получаемых с помощью учетной записи root, включает возможность внесения очень разрушительных изменений, даже если это происходит непреднамеренно.

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

Шаг 2 — Создание нового пользователя

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

Этот пример создает нового пользователя с именем sammy, но вы должны заменить это имя на любое предпочитаемое вами имя:

Далее мы установим надежный пароль для пользователя sammy :

Вам будет предложено ввести пароль дважды. После этого ваш пользователь будет готов к работе, но сначала мы предоставим этому пользователю дополнительные права на использование команды sudo . Это позволит нам запускать команды с правами root при необходимости.

Шаг 3 — Предоставление административных прав

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

Чтобы не выполнять выход из стандартной учетной записи и выполнять вход в систему с учетной записью root, мы можем настроить так называемого «суперпользователя» или добавить привилегии root для стандартной учетной записи. Это позволит нашему обычному пользователю запускать команды с правами администратора, указав слово sudo перед каждой командой.

Чтобы добавить эти права для нового пользователя, нам нужно добавить нового пользователя в группу wheel. По умолчанию в CentOS 8 пользователям, которые принадлежат к группе wheel, разрешается использовать команду sudo .

Используя права root, запустите эту команду, чтобы добавить нового пользователя в группу wheel (замените выделенный текст на новое имя пользователя):

Теперь, когда вы войдете в систему со стандартным пользователем, вы можете ввести sudo перед командами для выполнения действий с правами суперпользователя.

Шаг 4 — Настройка базового брандмауэра

Брандмауэры обеспечивают базовый уровень безопасности для вашего сервера. Эти приложения отвечают за отклонение трафика для каждого порта на сервере, за исключением тех портов/служб, для которых вы открыли прием трафика. CentOS имеет службу firewalld для выполнения этой функции. Инструмент с именем firewall-cmd используется для настройки политик брандмауэра firewalld .

Примечание. Если ваши серверы работают на платформе DigitalOcean, вы можете использовать облачные брандмауэры DigitalOcean вместо firewalld . Мы рекомендуем использовать только один брандмауэр в один момент времени, чтобы избежать конфликтов, которые могут затруднять отладку.

Сначала установите firewalld :

Конфигурация firewalld по умолчанию позволяет использовать соединения ssh , поэтому мы можем запустить брандмауэр немедленно:

Проверьте состояние службы, чтобы убедиться в ее запуске:

Обратите внимание на значение active и enabled , что означает, что она будет запускаться по умолчанию при перезагрузке сервера.

Теперь, когда служба запущена и работает, мы можем использовать утилиту firewall-cmd для получения и установки информации о политике для брандмауэра.

Сначала мы перечислим службы, которые уже разрешены:

Чтобы посмотреть дополнительные службы, которые вы можете активировать по имени, введите:

Чтобы добавить разрешенную службу, используйте флаг --add-service :

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

Шаг 5 — Активация внешнего доступа для стандартного пользователя

Теперь, когда у нас есть стандартный пользователь non-root user для повседневного использования, нам нужно убедиться, что мы можем использовать его для подключения по SSH к серверу.

Примечание. Пока вы не убедитесь, что вы можете войти в систему и использовать sudo с новым пользователем, мы рекомендуем не выходить из учетной записи root. Таким образом, если у вас есть проблемы, вы можете устранить их и внести необходимые изменения в качестве root. Если вы используете DigitalOcean Droplet и сталкиваетесь с проблемами при использовании подключения SSH в учетной записи root, вы можете войти в Droplet, используя консоль DigitalOcean.

Процесс настройки доступа SSH для нового пользователя зависит от того, использует ли учетная запись с правами root на сервере пароль или ключи SSH для аутентификации.

Если учетная запись root использует аутентификацию по паролю

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

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

Вам будет предложено использовать пароль обычного пользователя при использовании sudo в первый раз для каждого сеанса (и периодически после этого).

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

Если учетная запись root использует аутентификацию по ключу SSH

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

/.ssh/authorized_keys нового пользователя для успешного входа.

Поскольку ваш открытый ключ уже включен в файл

/.ssh/authorized_keys учетной записи root на сервере, мы можем скопировать структуру этого файла и директории для нашей новой учетной записи.

Самый простой способ копирования файлов с правильным правами владения и разрешениями — воспользоваться командой rsync . Она будет копировать директорию .ssh пользователя root user, сохранит разрешения и изменит владельцев файлов, все в одной команде. Обязательно измените выделенные ниже части согласно имени вашего стандартного пользователя:

Примечание. Команда rsync использует источники и пункты назначения, оканчивающиеся на завершающий слеш, иначе, чем те, которые этот завершающий слеш не имеют. При использовании rsync ниже убедитесь, что директория источника (

/.ssh ) не включает завершающий слеш (убедитесь, что вы не используете

Если вы случайно добавите в команду завершающий слеш, rsync будет копировать содержимое директории

/.ssh учетной записи root в домашнюю директорию пользователя sudo вместо копирования всей структуры директории

/.ssh . Файлы будут находиться в неправильном месте, и SSH не сможет найти и использовать их.

Теперь, вернувшись в новый терминал на локальном компьютере, откройте новый сеанс SSH с пользователем non-root user:

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

Вам будет предложено использовать пароль обычного пользователя при использовании sudo в первый раз для каждого сеанса (и периодически после этого).

Заключение

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

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

Решив испытать восьмерку в «дикой природе», я обнаружил, что мои хостинг провайдеры не спешат с изготовлением образа виртуального сервера на CentOS 8. А идея с «собственным ISO» и «VNC консолью» не вселяла уверенности из-за скромных характеристик VDS и прожорливости современной анаконды (anaconda).

Оставалось скопировать развернутый образ новой CentOS сразу на жесткий диск VDS, загрузив сервер «по сети». Способ не блещет новизной, однако найти подробную и законченную инструкцию по его реализации я, например, не смог. Поэтому захотелось поскорее восполнить этот пробел и рассказать об установке CentOS 8 на такой VDS:




Кстати, таким способом можно установить или переустановить не только CentOS и не обязательно в виртуальном окружении.


Как и было сказано в начале статьи:

К слову, хостинг провайдеры сейчас в своих самых бюджетных тарифах предлагают VDS с более могучими характеристиками. Предустановленной операционной системой пусть будет CentOS 7. Думаю, что сейчас это возможно практически у всех поставщиков виртуализации.

Прежде всего, понадобится «донор» — дополнительный сервер с установленной CentOS 8. Хотя это и не важно, но если технические характеристики донора будут соответствовать таковым у VDS, то мороки с настройкой будет значительно меньше.

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

Так как в рассматриваемом случае имеется KVM VDS, то донора можно испечь в домашних условиях — на любом дистрибутиве Linux с libvirt. Я предпочитаю экстра минимальную начальную установку, что в условиях задачи будет весомым подспорьем. В этой статье я рассказал о стандартном способе изготовления крошечного образа CentOS. Под спойлером соответствующий kickstart файл и способ его применения:

Разместить этот файл можно на любом доступном Web-ресурсе и указать в начале установки:

image

Обращаю внимание на пароль root-а: настоятельно рекомендую сделать его архисложным, дабы на последующих этапах не поиметь проблем с хулиганами, сканирующими Интернет в поисках развлечений.

После изготовления донора, нужно забрать с его диска все файлы в один архив, скажем, centos8.tgz. Сделать это можно разными способами: подключить диск донора к другой виртуальной машине, примонтировать к гипервизору, либо в самом доноре запаковать все его файлы, исключив виртуальные каталоги (/dev, /proc и т.п.)

Далее, от донора понадобятся еще два файла: ядро (vmlinuz) и модифицированный рамдрайв (initrd). Ядро можно взять в каталоге /boot донора (vmlinuz-что-то-там), а рамдрайв нужно изготовить особенный, включив в него возможность загрузки по сети с NFS-сервера. Для этого в работающей операционной системе донора нужно выполнить:


и забрать из корня диска необходимый initrd.

В итоге три файла, которые понадобятся в дальнейшем:

  • centos8.tgz — архив со всеми файлами установленной CentOS 8
  • initrd — временная файловая система с поддержкой NFS
  • vmlinuz — ядро ОС

Донор теперь больше не нужен, хотя может и пригодиться (см. далее)

Для загрузки VDS по сети без использования локального диска потребуется сервер с NFS-ресурсом. Такой сервер может быть любым, главное его сетевая доступность с IP-адреса VDS. Можно попробовать домашнее оборудование (с возможным «пробросом портов на роутере») или любой другой VDS, взятый, например, на тест. Наконец, использовать «донора», если суметь на нем NFS (шутка). После установки CentOS 8, NFS-сервер, как и донор, больше не понадобятся.

Экспортируемый NFS-ресурс должен содержать в своем корне файл centos8.tgz и его распакованное содержимое. Вот краткая инструкция по изготовлению на примере CentOS 7:


100.100.100.100 — это, разумеется, IP-адрес VDS с будущей CentOS 8.

Прежде всего, нужно скопировать в корень VDS файлы рамдрайва (initrd) и ядра (vmlinuz), полученные на первом шаге. Затем, настроить GRUB:

/etc/grub.d/40_custom


200.200.200.200 — IP-адрес NFS-сервера.

/etc/default/grub


И перезагрузить VDS:


Если все пройдет без ошибок, то VDS загрузит CentOS 8 донора, а локальный диск будет полностью отмонтирован:


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


На крохотных VDS я предпочитаю такую конфигурацию диска:


Форматирование, удаление резервации и установка значения UUID равному «донорскому»:


Копирование файлов операционной системы и установка загрузчика:


Так как Network Manager понимает legacy, то для настройки сети можно создать соответствующий ifcfg-файл. Имя интерфейса можно узнать:

Читайте также: