На главную
- Инструкции для UNIX-систем
- Обзор
- Подключение к серверу по SSH
- Подключение к серверу по SFTP
- Авторизация по SSH-ключу
- Смена или сброс пароля root
- Смена пароля root для MySQL
- Добавление пользователей
- Управление правами доступа
- Защита SSH от подбора пароля. Fail2ban
- Подключение к базе данных MySQL
- Создание дампа базы и восстановление данных
- Установка LAMP на Ubuntu
- Установка phpMyAdmin на Ubuntu с LAMP
- Установка SSL-сертификата на Nginx
- Установка модулей PHP (CentOS)
- Установка модулей PHP (Debian / Ubuntu)
- Настройка параметров PHP (CentOS)
- Настройка параметров PHP (Debian / Ubuntu)
- Настройка перенаправлений
- Настройка перенаправлений (Nginx)
- Настройка FTP в Ubuntu 20.04
- Оптимизация MySQL с помощью MySQLTuner
- Сканирование с помощью ClamAV
- Управление службами в systemd
- Логирование в systemd
- Аудит системных событий
- Добавление дополнительного IP
- Настройка статического IP
- Добавление и удаление диска
- Изменение размера диска
- Монтирование резервных копий
- Создание swap, изменение его размера
- Установка и удаление программ. Менеджеры пакетов
- Установка графической оболочки XFCE на Ubuntu
- Настройка iptables
- Настройка OpenVPN
- Установка произвольной ОС на сервер
- Удаленный доступ к MySQL
- Установка QEMU-агента
- Установка Zabbix-агента
- Установка и работа с PostgreSQL
- Установка почтового сервера iRedMail
- Установка SSL на сервер с Keitaro
- Установка Minecraft на CentOS 7
- Запуск Wordpress на сервере c Ubuntu
- Запуск бота в фоновом режиме
- Установка сертификатов Минцифры
- Подготовка образа для создания облачного сервера
- Диагностика и решение проблем
- Инструкции для Windows
- Панели управления
Установка произвольной ОС на сервер
Большинство популярных ОС можно установить на сервер Timeweb Cloud автоматически, выбрав нужный вариант при создании сервера. Если же вам нужна операционная система, которой нет в готовых образах, ее можно установить на сервер вручную. В инструкции рассмотрим несколько примеров, как это можно сделать.
Варианты установки могут быть следующими:
- Установка ОС из ISO-образа установочного диска.
- Установка из сырого (raw) образа диска, обычно файл имеет расширение .img.
- Установка через подключение образа ядра ОС.
Прежде чем начинать установку, внимательно изучите сайт разработчика/поставщика ОС. Вероятно, у него уже есть инструкции по ручной установке системы.
Перед началом работы
Что важно знать:
- Виртуализация аппаратная — QEMU/KVM.
- Все серверы работают с Legacy BIOS, поэтому не пытайтесь ставить UEFI.
- Со стороны клиента нет доступа к BIOS, пользователь ограничен функционалом панели управления.
Основная задача — запустить установщик ОС, для чего потребуется эмулировать загрузку с LiveCD. Так как нет способа инициализировать «пустой» сервер, то первоначально потребуется установить сервер с любой доступной к установке операционной системой. В этой статье в качестве примера «базовой системы» будет использован Debian 11.
Запуск установщика будем выполнять через GRUB, он есть в большинстве ОС. На установочных дисках обычно содержится собственный загрузчик для инициализации с диска программы установки. Мы воспользуемся функцией GRUB chainloader, чтобы запустить этот загрузчик из «базовой системы».
Постнастройка
В Timeweb Cloud для многих операций с сервером через панель управления используется qemu-guest-agent
. После установки операционной системы желательно установить и при необходимости сконфигурировать его. Обычно это несложно, и будет достаточно настроек по умолчанию.
Установка ОС из ISO с использованием дополнительного диска
Этим способом можно установить большинство операционных систем из ISO-образов.
Для работы потребуется:
- Сервер с установленной операционной системой. В нашем случае – Debian 11.
- Прямая ссылка на образ ISO.
- Подключенный дополнительный диск.
Размечать или форматировать дополнительный диск не нужно, просто добавьте его.
Ниже будет показан пример установки системы GNU Guix System.
Запись ISO
1. Скачайте ISO на сервер:
wget https://ftp.gnu.org/gnu/guix/guix-system-install-1.3.0.x86_64-linux.iso
2. Добавьте в ПУ дополнительный диск. Он будет подключен к системе как устройство /dev/vdb
.
3. Запишите ISO на этот диск:
dd if=guix-system-install-1.3.0.x86_64-linux.iso of=/dev/vdb
На /dev/vdb
появится файловая система. Проверьте, что это так, командой:
fdisk -l
Disk /dev/vda: 10 GiB, 10737418240 bytes, 20971520 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x5569f8be Device Boot Start End Sectors Size Id Type /dev/vda1 * 2048 20971519 20969472 10G 83 Linux Disk /dev/vdb: 10 GiB, 10737418240 bytes, 20971520 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x00000000 Device Boot Start End Sectors Size Id Type /dev/vdb1 * 0 1247275 1247276 609M 0 Empty /dev/vdb2 1247276 1253035 5760 2.8M ef EFI (FAT-12/16/32)
Как можно видеть, появились разделы /dev/vdb1
и /dev/vdb2
.
Какие и сколько разделов появятся на диске vdb, зависит от содержимого образа ISO.
Подготовка к настройке меню GRUB
Далее нужно добавить в меню GRUB дополнительный пункт, который позволит запустить установщик ОС.
Чтобы при загрузке системы увидеть меню GRUB и успеть выбрать нужный пункт, задайте ожидание 60 секунд. Выполните следующую команду:
sed -e 's%GRUB_TIMEOUT=.*%GRUB_TIMEOUT=60%' -i.bak /etc/default/grub
Также нужно отредактировать конфигурационный файл /boot/grub/device.map
. Относительно параметров в этом файле GRUB будет определять диски. Нужно привести содержимое файла к следующему виду:
(hd0) /dev/vda (hd1) /dev/vdb
Здесь мы говорим GRUB использовать обозначение hd0
для диска /dev/vda
(тут установлена «базовая система») и hd1
для /dev/vdb
.
Автоматически сгенерировать /boot/grub/device.map
можно командой grub-mkdevicemap
, однако, если такой команды нет, то потребуется вручную отредактировать файл.
Выполните, чтобы быстро отредактировать файл:
cp /boot/grub/device.map{,.bak}; printf '(hd0)\t/dev/vda\n(hd1)\t/dev/vdb\n' > /boot/grub/device.map
Примените изменения:
grub-mkconfig -o /boot/grub/grub.cfg
Теперь можем приступать к конфигурации загрузчика. Ниже описано два варианта, предпочтителен chainloader
.
Загрузка через chainloader
Команда GRUB chainloader
позволяет запустить другой загрузчик. Можно по цепочке загрузить GRUB -> GRUB или другой загрузчик ОС.
Приведите файл /etc/grub.d/40_custom
к следующему виду:
#!/bin/sh exec tail -n +3 $0 # This file provides an easy way to add custom menu entries. Simply type the # menu entries you want to add after this comment. Be careful not to change # the 'exec tail' line above. menuentry "Guix ISO" { set root='hd1' chainloader +1 }
После запустите команду для применения настроек:
grub-mkconfig -o /boot/grub/grub.cfg
Пункт меню GRUB будет называться Guix ISO.
Загрузка через configure
Этот способ сложнее и годится только для тех случаев, когда на установочном диске также установлен GRUB и по какой-либо причине chainloader
не работает.
Также вам потребуется найти файл конфигурации GRUB на диске, чтобы указать верный путь до него. Поискать конфиг можно, «погуляв» по файловой системе в ISO; примонтируйте файл и посмотрите, что внутри:
mount guix-system-install-1.3.0.x86_64-linux.iso /mnt
Команда configure
загружает конфигурационный файл с диска. При этом в отличие от chainloader
, GRUB не запускает другой загрузчик, а применяет конфигурацию «к себе».
Вот фрагмент кода, который нужно добавить в /etc/grub.d/40_custom
:
menuentry "Guix ISO" { set root='hd1' configure /boot/grub/grub.cfg }
Загрузка и установка системы
После выполнения команды grub-mkconfig
можно произвести перезагрузку сервера. Ее следует выполнить через панель управления, чтобы иметь быстрый доступ к веб-консоли VNC.
Вся дальнейшая установка будет проходить через веб-консоль.
Если веб-консоль «залипла», можно воспользоваться функцией «Вставить из буфера» в правом углу над окном консоли.
1. Выберите в меню GRUB пункт Guix ISO.
2. Вы попадете в установочную программу. Выполните установку.
В процессе:
- Установщик предложит вам определить диск для установки ОС, выбирайте диск
/dev/vda
. - Cогласитесь на установку SSH-сервера и DHCP-клиента. Последнее важно, поскольку иначе на сервере не будет работать сеть.
3. Когда программа установки сообщит о том, что все готово, выполните перезагрузку сервера.
4. Проверьте, что вы можете авторизоваться в свежеустановленной системе, что сеть и демон SSH работают. Если все хорошо, можно удалить дополнительный диск.
На этом установка завершена, однако вам может потребоваться установка пакета qemu-guest-agent
.
Установка OpenBSD через образ ядра
В этом случае не потребуется подключать к серверу дополнительный диск. Вместо этого установка ОС будет производиться через загрузку из GRUB образа ядра BSD.
Для работы будет нужен только сервер с установленной операционной системой, в нашем случае — Debian 11.
Обязательно внимательно прочитайте гайд по установке OpenBSD.
1. Подключитесь к существующему серверу и скачайте образ ядра BSD:
wget https://mirror.yandex.ru/pub/OpenBSD/7.1/amd64/bsd.rd -O /boot/bsd.rd
Дальнейшие действия выполняются через VNC-консоль в ПУ.
2. Нажмите в ПУ кнопку перезагрузки сервера. Пока сервер перезагружается, в консоли воспользуйтесь функцией вставки текста и вставьте латинскую букву С.
3. Откроется консоль загрузчика GRUB. В нее надо последовательно ввести и выполнить следующие команды:
set root=(hd0,msdos1) kopenbsd /boot/bsd.rd boot
4. Начнется загрузка ядра и установщика OpenBSD. Далее внимательно читайте подсказки на экране и вводите ответы. Следуйте инструкции.
На большинство вопросов установщика можно отвечать простым нажатием Enter.
- На вопросе настройке сети (the IPv4 settings) следует ответить
dhcp
. - Согласиться на установку sshd (по умолчанию yes).
- Создание обычного пользователя можно пропустить. В таком случае необходимо ответить yes на вопрос о доступе root по ssh.
- По завершении согласиться на reboot.
Первый запуск сервера будет долгим из-за применения патчей (в консоли будет отображаться текст: Checking for available binary patches).
Дальнейшую настройку системы можно выполнить по SSH.
Установка Mikrotik Cloud Hosted Router
Обратите внимание, что в Timeweb Cloud виртуальные серверы работают за NAT и имеют только один сетевой интерфейс с серым IP. Два интерфейса можно получить только на выделенном сервере.
Установку ОС будем производить через raw-образ диска. Получить ссылку на образ (нам нужен Raw disk image
) можно на сайте Mikrotik.
Для работы нам потребуется сервер с установленной операционной системой, в нашем случае — Debian 11.
1. Загрузите сервер в режиме восстановления. Это нужно для того, чтобы полностью остановить запись на диск /dev/vda
. В качестве диска восстановления (LiveCD) используется SystemRescue.
Дальнейшая работа будет выполняться через веб-консоль.
2. Скачайте образ Mikrotik CHR:
wget https://download.mikrotik.com/routeros/6.49.6/chr-6.49.6.img.zip
3. Проверьте контрольную сумму, чтобы убедиться, что образ не поврежден. Найдите на этой странице строку Checksum и сумму для выбранной версии ОС и формата файла. В нашем случае это строки:
MD5 chr-6.49.6.img.zip: 484ba7de7f71b8672ca76ceaf46b0d27 SHA256 chr-6.49.6.img.zip: dc0a70dc806ef068c54b5541c9668270b058dda11307d958d059a7c292320003
Проверьте sha256, хэш-сумма должна совпасть:
sha256sum chr-6.49.6.img.zip
4. Распакуйте образ и запишите его на диск /dev/vda
:
unzip chr-6.49.6.img.zip dd if=/tmp/chr-6.49.6.img of=/dev/vda
5. Загрузите сервер в стандартном режиме. При первом старте ОС автоматически выполнит ресайз файловой системы.
Готово. Таким способом можно попробовать установить многие другие ОС, которые поставляются в виде raw-дисков. Обратите внимание, что места на LiveCD может не хватить. Можно загрузить образ прямо в оперативную память. Потребуется инициализировать RAM-диск:
mount -t tmpfs tmpfs /tmp