Рассмотрим установку CentOS 8 Linux сервера и настройку отображения русских букв в консоли после установки.

Скачать CentOS Linux можно с официального сайта centos.org. Возможно, будет удобнее для этого воспользоваться Яндекс зеркалом где есть и торрент ссылки. Мы скачали файл CentOS-8.1.1911-x86_64-boot.iso размером 620 Мб. Этот файл необходимо записать на загрузочный USB-Flash диск, воспользовавшись утилитой usb-creator-gtk (Создать загрузочный диск).

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

На первом экране мы видим название устанавливаемой OS (операционной системы) и можем прервать установку и перейти в меню настройки. Но, чаще всего этого делать не надо.

Когда на экране появится окно "Добро пожаловать в CentOS Linux 8" мы можем выбрать язык диалогов на весь этап установки OS.

Установка CentOS на компьютер

Этап "Обзор установки". На этом этапе есть возможность настроить некоторые параметры нашего сервера. Делается это так, например, выбираем пункт "Keyboard", открывается новое окно. В новом окне делаем желаемые настройки, нажимаем кнопку готово и возвращаемся обратно в окно "Обзор установки". Повторяем операцию для настройки других параметров.

Установка CentOS на компьютер

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

Установка CentOS на компьютер

Здесь мы просто включили сеть. Можно сменить имя компьютера (имя узла).

Установка CentOS на компьютер

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

Установка CentOS на компьютер

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

Установка CentOS на компьютер

 Для установки CentOS мы выбрали диск объёмом 120 Гб.

Установка CentOS на компьютер

 Выбрали разметку диска по-своему, и выделили для домашнего каталога (точка монтирования /home) 35 Гб.

Установка CentOS на компьютер

Для работы Linux на диске должен быть создан раздел swap. Обычно, под swap раздел рекомендуется выделять в 2 раза больше места, чем установлено в компьютере оперативной памяти.

Установка CentOS на компьютер

Мы хотели чтобы операционная система занимала на диске 50 Гб. Поэтому под корневую файловую систему (точка монтирования /) мы выделили 46 Гб, что в сумме с разделом swap составит запланированные 50 Гб.

Установка CentOS на компьютер

Оставшееся место на диске пока размечать не будем.

Установка CentOS на компьютер

 

Установка CentOS на компьютер

 

Установка CentOS на компьютер

На этапе установки, названном "конфигурация", мы можем создать 2 пользователя.

Установка CentOS на компьютер

Пользователю root создадим пароль toor.

Установка CentOS на компьютер

 Создадим пользователя Admin с правами локального администратора и паролем Worlds_21

Установка CentOS на компьютер

Пусть у пользователя Admin домашним каталогом будет /home/administrator.

Установка CentOS на компьютер

 

Установка CentOS на компьютер

После перезагрузки компьютера запускается операционная система CentOS без графической оболочки.

Установка CentOS на компьютер

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

Настройка русского языка в CentOS после установки на компьютер

 Решается проблема просто. В командной строке выполняем команду:

[root@localhost ~]# setfont UniCyr_8x16

и русские буквы тут же появятся. Но после перезагрузки компьютера мы опять увидим квадратики. Поэтому, редактируем файл /etc/vconsole.conf

Настройка русского языка в CentOS после установки на компьютер

 В этом файле необходимо закомментировать строку FONT= и добавить свою строку FONT="UniCyr_8x16"

Перезагружаем компьютер, шрифты не слетают.

Настройка русского языка в CentOS после установки на компьютер

Проверяем в консоли возможность переключить ввод с клавиатуры на русский язык. Во время установки я настроил сочетание клавиш для смены языка Ctrl-Shift. НЕ РАБОТАЕТ! Проверяем настройки локали:

[root@localhost ~]# localectl status
   System Locale: LANG=ru_RU.UTF-8
       VC Keymap: us
      X11 Layout: ru,us
       X11 Model: pc105
     X11 Options: terminate:ctrl_alt_bksp,grp:shifts_toggle,grp_led:scroll

Выполняем команду:

[root@localhost ~]# localectl set-keymap ru

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

Следующей нашей задачей на сегодня будет настройка приветствия для пользователя Admin. При входе пользователя Admin в систему должно выводиться сообщение "Hello, its <Дата>", где Дата - текущая дата и время данной OS в любом формате.

По умолчанию интерпретатором командной строки в большинстве версий Linux является bash. Bash отвечает и за текст приглашения (prompt) в командной строке. Поэтому - читаем manual bash.

[Admin@LinuxClient ~]$ man bash

Можно найти быстрее решение поставленной задачи если в командной строке набрать:

[Admin@LinuxClient ~]$ man -k prompt
pam_issue (8)        - PAM module to add issue file to user prompt

Открываем man на странице pam_issue (8)

[Admin@LinuxClient ~]$ man pam_issue
DESCRIPTION
       pam_issue is a PAM module to prepend an issue file to the username prompt. It also by
       default parses escape codes in the issue file similar to some common getty's (using \x
       format).

       Recognized escapes:

       \d
           current day

       \l
           name of this tty

       \m
           machine architecture (uname -m)

       \n
           machine's network node hostname (uname -n)

       \o
           domain name of this system

       \r
           release number of operating system (uname -r)

       \t
           current time

       \s
           operating system name (uname -s)

       \u
           number of users currently logged in

       \U
           same as \u except it is suffixed with "user" or "users" (eg. "1 user" or "10 users")

       \v
           operating system version and build date (uname -v)

 Manual page pam_issue(8) line 9 (press h for help or q to quit)

Теперь всё понятно, задаём новое значение системной переменной PS1

[Admin@LinuxClient ~]$ PS1='Hello, its <\d \t>'
Hello, its <Пт фев 07 19:28:23>

Чтобы настройки не слетели после перезагрузки компьютера, надо поместить эту строку в файл настроек bash в домашней папке пользователя Admin (~/.bashrc) :

Создадим пользователя User

Hello, its <Пт фев 07 20:03:03>sudo adduser User

Добавим пользователя User в группу wheel (sudo):

Hello, its <Пт фев 07 22:02:24>sudo usermod -a -G wheel User

Зададим пароль Worlds_20 для пользователя User

Hello, its <Пт фев 07 20:03:21>sudo passwd User
[sudo] пароль для Admin: 
Изменение пароля пользователя User.
Новый пароль : 
Повторите ввод нового пароля : 
passwd: данные аутентификации успешно обновлены.
Hello, its <Пт фев 07 21:54:57>su User
Пароль: 
[User@LinuxClient home]$

 Для пользователя User настроим sudo допускающее запуск только команды whoami без ввода пароля и оставим выполнение других команд с паролем от текущего пользователя. Для этого в файл /etc/sudoers добавим строчку User All=NOPASSWD:/bin/whoami

Создадим пользователя User1

Hello, its <Пт фев 07 20:03:03>sudo adduser User1

Пусть у пользователя User1 не будет пароля и он должен автоматически входить в систему. Для этого добавим в файл /etc/systemd/system/getty.target.wants/Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript. в секцию [Service] три строчки:

Type=simple
ExecStart=
ExecStart=-/sbin/agetty --autologin User1 --noclear %I 38400 linux

Должно получиться следующее: