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

Перед установкой необходимо скачать установочный образ Ubuntu MATE 20.04 LTS (Focal Fossa), для этого открываем ссылку и скачиваем iso-файл с установщиком. Для установки я буду использовать диск с последней ночной сборкой Ubuntu, после того, как в апреле, будет выпущен официальный релиз, его можно будет скачать с этой страницы.

Далее создаём виртуальную машину и запускаем её с нашего iso-диска.

Установка.

В меню загрузчика Grub нам предлагают попробовать загрузить и посмотреть на Ubuntu MATE без установки, установить Ubuntu MATE, проверить диск на ошибки или загрузиться с первого установленного диска. Выбираем пункт Install Ubuntu MATE и нажимаем на Enter.

Перед запуском установщика будут проверены контрольные суммы файлов на диске с установщиком.

На первом экране установщика нам необходимо выбрать язык установщика. Не рекомендую выбирать Русский на данном этапе, т.к. помимо русского интерфейса установщика, по-русски будут называться каталоги в домашней папке пользователя – Рабочий стол, Мои документы и прочее, что доставит ряд неудобств в будущем.

С видео-драйвером по умолчанию, установщик Ubuntu MATE запускается в Parallels Desktop с разрешением 1400x1050, а в VMware ESXi с разрешением 1024x768. Для удобства дальнейшей установки лучше сразу изменить разрешение на более комфортное. Для этого нажимаем на клавиатуре Ctrl+Alt+T – у нас запустится MATE Terminal, а в нём выполняем команду mate-control-center для запуска панели управления MATE.

В панели управления в разделе Hardware выбираем пункт Displays. Далее либо повезёт, либо не повезёт. В случае Parallels Desktop доступны только два разрешения: 1400x1050 и 800x600, в случае VMware ESXi доступен для выбора целый спектр различных разрешений. Выбирайте любое понравившееся и нажимайте на кнопку Apply, а далее в появившемся диалоговом окне нажимайте на кнопку Keep This Configutation.

Если есть необходимость включить HiDPI-режим, выбираем в панели управления в блоке Look and Feel пункт MATE Tweak. После чего переходим во вкладку Windows и в пункте HiDPI выбираем HiDPI.

После изменения разрешения, закрываем настройки дисплея, терминал и возвращаемся к установщику.

Оставляем выбранным язык English и нажимаем на кнопку Continue.

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

Теперь необходимо выбрать вариант установки – нормальный или минимальный и ещё пара опций. Выбираем пункт Minimal installation для минимальной установки, убираем галочку с пункта Download updates while installing Ubuntu MATE (т.к. время это нам не сэкономит, а сразу после установки всё равно нужно будет обновлять систему). После чего нажимаем на кнопку Continue.

Теперь необходимо выбрать вариант разбиения нашего диска. Пункт Erase disk and install Ubuntu MATE просто создаст несколько разделов на диске (корневой раздел, раздел /boot и раздел со свопом). Пункт Use LVM with new Ubuntu MATE installation сделает то же самое, но с использованием LVM. Можно было бы выбрать этот варианта, но, к сожалению, Volume Group при таком варианте будет называться ubuntu-mate-vg, а это противоречит моему понятию о фэн-шуе. Во-первых наличие символов тире в названии Volume Group – само по себе зло, во-вторых при выполнении команды df -h у нас слева на пол экрана будет указан путь к разделу.

В прошлый раз я убедился, что разбивать диск используя инсталлятор смысла нет, т.к. нельзя настроить LVM. Поэтому будем разбивать диск вручную. Для запуска консоли нажимаем Ctrl+Alt+T.

Затем вводим команду sudo gparted /dev/nvme0n1 (если у Вас обычный диск, а не NVMe – вместо /dev/nvme0n1 необходимо писать /dev/sda).

Так как диск абсолютно пустой, первым делом создаём таблицу разделов, для этого выбираем в меню Device пункт Create Partition Table.... Выбираем тип gpt и нажимаем на кнопку Apply.

Создадим маленький системный раздел для загрузчика и EFI, для этого нажимаем правой кнопкой мыши на неразмеченной области диска и выбираем пункт New. Указываем размер раздела 128 MiB, выбираем тип файловой системы fat32 и имя раздела EFI System Partition после чего нажимаем на кнопку Add.

Теперь создадим основной раздел для Ubuntu, для этого нажимаем правой кнопкой мыши на неразмеченной области диска и выбираем пункт New. Указываем размер раздела 71950 MiB, выбираем тип файловой системы lvm2 pv и имя раздела Linux LVM Partition после чего нажимаем на кнопку Add.

Размер 71950 MiB кажется не логичным и не ровным, но данный размер позволит создать LVM и разделы, чей размер будет показан достаточно ровным. 60.0G для root и 1.0G для boot.

Первых двух разделов уже достаточно, но я создам ещё и третий раздел /srv, т.к. он будет использоваться для вполне определённых целей на выезде. Единственное на что хочу обратить внимание – в случае SSD-дисков обычно оставляют в конце диска немного неразмеченного пространства. Это положительно сказывается на производительности и времени жизни диска.

Для записи всех изменений на диск, выбираем в меню Edit пункт Apply All Operations, а в появившемся окне с предупреждениями нажимаем на кнопку Apply.

Затем закрываем окно с информацией о завершении разбиения.

После реального создания разделов на диске, выделяем первый раздел EFI System Partition, нажимаем на нём правой кнопкой мыши и выбираем пункт Manage Flags.

Выделяем галочками флаги boot и ESP, после чего нажимаем на кнопку Close.

Закрываем GParted и возвращаемся к консоли, где выполняем следующие команды:

$ sudo pvcreate /dev/nvme0n1p2
$ sudo vgcreate vg_radio /dev/nvme0n1p2
$ sudo lvcreate -n lv_boot -L 1072m vg_radio
$ sudo lvcreate -n lv_root -L 62680m vg_radio
$ sudo lvcreate -n lv_swap -L 8192m vg_radio
$ sudo lvs --units m

Здесь я использую название группы томов vg_radio, потому что vg – это volume group, а radio – будущий hostname виртуальной машины. А у разделов в названиях lv – это logical volume, а boot, root и swap их предназначения.

Размеры логических томов (кроме раздела для swap'а) подобраны опытным путём, в основном для того, чтобы в выводе команды df -h показывались ровные значения.

После настройки LVM закрываем консоль и возвращаемся к инсталлятору. Выбираем пункт Something else и нажимаем на кнопку Continue.

Скорее всего с первого раза наши новые разделы и логические тома LVM не отобразятся в окне разбиения диска инсталлятора.

Просто нажмите на кнопку Back, снова выберите пункт Something else и нажмите на кнопку Continue.

Нам необходимо сопоставить созданные логические тома и разделы точкам монтирования и выберем для них файловые системы. Для начала выберем раздел /dev/mapper/vg_radio-lv_root, который мы определили под корневой и нажмите на кнопку Change. В окошке редактирования раздела выбираем тип файловой системы Ext4, ставим галочку для форматирования раздела и выбираем точку монтирования /, после чего нажимаем на кнопку OK.

Повторяем то же самое для раздела /dev/mapper/vg_radio-lv_boot. Выделяем раздел и нажемаем на кнопку Change. В окошке редактирования раздела выбираем тип файловой системы Ext4, ставим галочку для форматирования раздела и выбираем точку монтирования /boot, после чего нажимаем на кнопку OK.

Теперь выбираем раздел /dev/mapper/vg_radio-lv_swap и нажимаем на кнопку Change. В следующем окне выбираем тип раздела swap area и нажимаем на кнопку OK.

Глядя на следующий скриншот легко забыть про ещё два раздела. Раздел под данные /srv и раздел под EFI-загрузчик.

Выбираем раздел /dev/nvme0n1p3 и нажимаем на кнопку Change. В окошке редактирования раздела выбираем тип файловой системы Ext4, ставим галочку для форматирования раздела и выбираем точку монтирования /srv, после чего нажимаем на кнопку OK.

Напоследок выделяем раздел /dev/nvme0n1p1 и нажимаем на кнопку Change. В окошке редактирования раздела убеждаемся что в поле Использовать как выбрано значение EFI System Partition и нажимаем на кнопку OK.

В качестве устройства для установки загрузчика оставляем выбранный по умолчанию диск /dev/nvme0n1.

Теперь нажимаем на кнопку Install Now, для начала установки Ubuntu MATE на наш диск.

Программа-установщик покажет нам изменения разделов, которые мы сейчас делали. Для продолжения установки нажмём на кнопку Continue.

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

Перед самой установкой нужно будет ввести название компьютера и данные необходимые для создания пользователя, под которым мы будем работать. Заполняем форму и нажимаем на кнопку Continue.

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

Перед перезагрузкой установщик нас попросит убрать примонтированный .iso-образ и нажать на кнопку Enter для продолжения. Но т.к. сам установщик выполнит команду eject перед показом этого сообщения – .iso-образ отмонтируется автоматически, поэтому просто нажимаем на кнопку Enter.

Обновление системы после установки.

После того как мы залогинились в систему первый раз – запустится приложение Welcome, которое сразу же спросит, хотим ли мы собирать телеметрию и отправлять разработчикам. Нажимаем на кнопку Do Not Send.

В следующем окне приложения снимем галочку с пункта Open Welcome when I log on и нажмём на кнопку Close, чтобы данное приложение больше не запускалось.

Как видно на экране, у нас уже запущен Software Updater, просто кликнем на названии этого приложения на таскбаре. Как мы видим, присутствует достаточно много обновлений, нажмём на кнопку Install Now для их установки. Приложения сначала будут скачиваться, а затем устанавливаться. После установки обновлений появится сообщение в котором возможно нужно будет нажать кнопку Restart Now для перезагрузки. Но если обновления для системных пакетов (вроде ядра) не устанавливались – в перезагрузке нужды не будет, тогда просто нажмём на кнопку OK.

Настройка после установки.

Настройка экрана.

После перезагрузки Ubuntu MATE запустится в графическом режиме, но с разрешением 1024x768.

В случае использования Parallels Desktop – изменить разрешение можно будет только после установки Parallels Tools. Для этого в меню Parallels Desktop выбираем пункт Установить Parallels Tools в меню Действия. После монтирования образа с Parallels Tools, данный образ автоматически примонтируется и откроется в Ubuntu. Кликаем дважды на иконке install-gui для установки. Вводим пароль и нажимаем на кнопку OK. После установки нажимаем на кнопку Reboot.

В случае VMware ESXi или в случае установки Ubuntu на голое железо, просто открываем панель управления, затем в блоке Hardware открываем пункт Displays и выбираем любое понравившееся разрешение из списка, после чего нажимаем на кнопку Apply, а затем на кнопку Keep This Configuration, если выбранное разрешение нас устраивает. Для того чтобы включить скейлинг, в панели управления в блоке Look and Feel запускаем апплет MATE Tweak. Затем в левом меню выбираем раздел Windows и в пункте HiDPI вместо значения Auto-detect выбираем HiDPI.

Теперь интерфейс приобретает человеческий вид. :)

Небольшой совет пользователям MacBook с экранами Retina. Если вы хотите использовать встроенный в macOS Screen Sharing, он же Общий экран, то при подключении к удалённому компьютеру по VNC масштаб по умолчанию будет, скажем так, не оптимальным и варианта правильно изменить данный масштаб я не нашёл, можно только вручную растянуть окно подключения. Лучше всего на маке использовать программу VNC Viewer от RealVNC. В этой программе в настройках подключения во вкладке Options установите в параметре Scaling значение 50%. Теперь при использовании этого подключения будет автоматически устанавливаться правильный масштаб.

Настройка терминала:

Запускаем терминал (нажимаем правой кнопкой мыши на рабочем столе и выбираем в меню пункт Open Terminal) и первым делом выполняем команду:

$ gsettings set org.mate.caja-open-terminal desktop-opens-home-dir true

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

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

$ sudo usermod -a -G audio,bluetooth,dialout,lp,netdev,plugdev wakko

Затем сразу установим SSH-сервер:

$ sudo apt install openssh-server

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

Далее ещё выполняем ряд команд для настройки терминала:

$ gsettings set org.mate.terminal.keybindings help 'disabled'
$ gsettings set org.mate.terminal.keybindings new-tab '<Super>t'
$ gsettings set org.mate.terminal.keybindings close-tab '<Super>w'
$ gsettings set org.mate.terminal.keybindings new-window '<Super>n'
$ gsettings set org.mate.terminal.keybindings close-window '<Super>q'
$ gsettings set org.mate.terminal.keybindings copy '<Super>c'
$ gsettings set org.mate.terminal.keybindings paste '<Super>v'
$ gsettings set org.mate.terminal.keybindings select-all '<Super>a'
$ gsettings set org.mate.terminal.keybindings search-find '<Super>f'
$ gsettings set org.mate.terminal.keybindings full-screen '<Super>Return'
$ gsettings set org.mate.terminal.keybindings next-tab '<Super>braceright'
$ gsettings set org.mate.terminal.keybindings prev-tab '<Super>braceleft'
$ gsettings set org.mate.terminal.keybindings switch-to-tab-1 '<Super>1'
$ gsettings set org.mate.terminal.keybindings switch-to-tab-2 '<Super>2'
$ gsettings set org.mate.terminal.keybindings switch-to-tab-3 '<Super>3'
$ gsettings set org.mate.terminal.keybindings switch-to-tab-4 '<Super>4'
$ gsettings set org.mate.terminal.keybindings switch-to-tab-5 '<Super>5'
$ gsettings set org.mate.terminal.keybindings switch-to-tab-6 '<Super>6'
$ gsettings set org.mate.terminal.keybindings switch-to-tab-7 '<Super>7'
$ gsettings set org.mate.terminal.keybindings switch-to-tab-8 '<Super>8'
$ gsettings set org.mate.terminal.keybindings switch-to-tab-9 '<Super>9'
$ gsettings set org.mate.terminal.keybindings switch-to-tab-10 '<Super>0'
$ gsettings set org.mate.terminal.profile:/org/mate/terminal/profiles/default/ allow-bold true
$ gsettings set org.mate.terminal.profile:/org/mate/terminal/profiles/default/ font 'Monospace 10'
$ gsettings set org.mate.terminal.profile:/org/mate/terminal/profiles/default/ use-system-font false
$ gsettings set org.mate.terminal.profile:/org/mate/terminal/profiles/default/ custom-command 'env TERM=xterm-256color /bin/bash'
$ gsettings set org.mate.terminal.profile:/org/mate/terminal/profiles/default/ use-custom-command true
$ gsettings set org.mate.terminal.profile:/org/mate/terminal/profiles/default/ default-size-columns 110
$ gsettings set org.mate.terminal.profile:/org/mate/terminal/profiles/default/ default-size-rows 36
$ gsettings set org.mate.terminal.profile:/org/mate/terminal/profiles/default/ use-custom-default-size true
$ gsettings set org.mate.terminal.profile:/org/mate/terminal/profiles/default/ scrollbar-position 'hidden'

После этого перезагружаем терминал.

Отключим горячую клавишу Command / Win:
$ gsettings set com.solus-project.brisk-menu hot-key ''
$ gsettings set org.mate.mate-menu hot-key ''
Включим горячую клавишу Super+R для диалога Run Application:
$ gsettings set org.mate.Marco.global-keybindings panel-run-dialog '<Super>r'
Выключим горячую клавишу Super+T для запуска терминала:
$ gsettings set org.mate.Marco.global-keybindings run-command-4 'disabled'

Для запуска терминала останутся горячие клавиши <Ctrl><Alt>+t, а <Super>+t будет использоваться в терминале для открытия новых вкладок.

Настройка рабочего стола (устанавливаем чёрный фон, для более быстрой работы RDP и VNC):
$ gsettings set org.mate.background picture-filename ''
$ gsettings set org.mate.background color-shading-type 'solid'
$ gsettings set org.mate.background primary-color 'rgb(0,0,0)'

Настройка рабочего окружения:

$ gsettings set org.mate.caja.preferences default-folder-viewer 'list-view'
$ gsettings set org.mate.caja.window-state sidebar-width 80
$ gsettings set org.mate.caja.window-state geometry '900x600+0+28'
$ gsettings set org.mate.interface enable-animations false
$ gsettings set org.mate.media-handling automount-open false
$ gsettings set org.mate.media-handling automount false
$ gsettings set org.mate.power-manager button-power shutdown
$ gsettings set org.mate.screensaver lock-enabled true
$ gsettings set org.mate.screensaver idle-activation-enabled false
$ gsettings set org.mate.screensaver themes []

Настройка клавиатуры и раскладки:

$ gsettings set org.mate.peripherals-keyboard delay 300
$ gsettings set org.mate.peripherals-keyboard rate 50
$ gsettings set org.mate.peripherals-keyboard-xkb.kbd layouts "['us', 'ru']"
$ gsettings set org.mate.peripherals-keyboard-xkb.kbd options "['grp_led\tgrp_led:scroll', 'grp\tgrp:ctrl_shift_toggle']"
$ gsettings set org.mate.peripherals-keyboard-xkb.indicator font-family 'Ubuntu 14'

Теперь установим Midnight Commander и ряд дополнительных утилит:

$ sudo apt install mc atop curl htop iotop pinfo screen

Установка полного DNS-имени компьютера:

$ sudo hostnamectl set-hostname radio.acmelabs.spb.ru

Добавляем права на редактирование сетевых соединений группе netdev:

$ sudoedit /etc/polkit-1/localauthority/50-local.d/10-network-manager.pkla
[Let Group 'netdev' Modify System Settings for Network]
Identity=unix-group:netdev
Action=org.freedesktop.NetworkManager.settings.modify.system
ResultAny=yes
ResultInactive=no
ResultActive=yes

Добавляем права всем пользователям использовать Wi-Fi:

$ sudoedit /etc/polkit-1/localauthority/50-local.d/50-allow-wi-fi-scan.pkla
[Allow Wi-Fi Scan for All Users]
Identity=unix-user:*
Action=org.freedesktop.NetworkManager.wifi.scan
ResultAny=no
ResultInactivity=no
ResultActive=yes

Убираем предупреждение update-initramfs:

После обновления ядра, во время создания образов initrd.img появляются следующие предупреждения:

I: The initramfs will attempt to resume from /dev/dm-2
I: (/dev/mapper/vg_radio-lv_swap)
I: Set the RESUME variable to override this.

Для того, чтобы их не было, выполним несколько команд:

$ sudo blkid | grep swap
/dev/mapper/vg_radio-lv_swap: UUID="b13bf4a9-03c1-4e32-a583-5a347dc73a06" TYPE="swap"
$ sudoedit /etc/initramfs-tools/conf.d/resume
RESUME=UUID=b13bf4a9-03c1-4e32-a583-5a347dc73a06
$ sudo update-initramfs -u -k all

Отключаем 30-секундное ожидание загрузчика grub во время запуска Ubuntu:

$ sudoedit /etc/default/grub
GRUB_RECORDFAIL_TIMEOUT=2
$ sudo update-grub

Установка и настройка RDP:

В прошлый раз я устанавливал VNC, но с тех пор отказался от него и полностью перешёл на RDP.

$ sudo apt install xrdp
$ sudo adduser xrdp ssl-cert
$ sudoedit /etc/xrdp/sesman.ini
[Security]
AllowRootLogin=false

$ sudoedit /etc/xrdp/xrdp_keyboard.ini
[default_rdp_layouts]
rdp_layout_us=0x00000409
rdp_layout_ru=0x00000419

[layouts_map_ru]
rdp_layout_us=ru,us
rdp_layout_ru=ru,us

[rdp_keyboard_ru]
keyboard_type=4
keyboard_type=7
keyboard_subtype=1
; model=pc105 # при необходимости
options=grp:alt_shift_toggle
rdp_layouts=default_rdp_layouts
layouts_map=layouts_map_ru

$ sudo systemctl restart xrdp.service xrdp-sesman.service

После подключения по RDP мы получаем примерно такую красоту:

Осталось только по этой заметке настроить рабочее окружение в консоли и наша Ubuntu готова к работе.


Следующая запись Предыдущая запись