web-server-nginx:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-operating-system-on-virtual-machine-and-disk-sizing
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версия | |||
| web-server-nginx:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-operating-system-on-virtual-machine-and-disk-sizing [05.09.2025 12:03] – удалено - внешнее изменение (Дата неизвестна) 127.0.0.1 | web-server-nginx:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-operating-system-on-virtual-machine-and-disk-sizing [05.09.2025 12:03] (текущий) – ↷ Страница перемещена из unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-operating-system-on-virtual-machine-and-disk-sizing в web-server-nginx:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-operat Алексей Максимов | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | ===== Настройка веб-сервера на базе стека LEMP в Ubuntu Server 14.04 LTS. Часть 1. Установка ОС ===== | ||
| + | ==== Подготовка виртуальной машины ==== | ||
| + | |||
| + | Готовим виртуальную машину для установки операционной системы **Ubuntu Server 14.04 LTS**. | ||
| + | В нашем примере будет использоваться виртуальная машина на базе гипервизора [[: | ||
| + | |||
| + | С сетевой точки зрения виртуальная машина будет изолированной, | ||
| + | |||
| + | Конфигурация виртуальной машины: | ||
| + | |||
| + | * Процессор: | ||
| + | * Память: | ||
| + | * Сеть: 1 контроллер 1Gb/s | ||
| + | * Диски: 3 отдельных виртуальных диска | ||
| + | |||
| + | Количество создаваемых виртуальных дисков определено таким образом, | ||
| + | * Первый диск будет использоваться под загрузочный раздел (/ | ||
| + | * Второй диск будет использоваться под раздел домашних папок пользователей (/home), раздел под логи и другие активно используемые и изменяемые файлы (/var), раздел корневых папок сайтов веб-сервера (/ | ||
| + | * Третий диск полностью будет использоваться под раздел файлов баз данных MySQL. | ||
| + | |||
| + | Конечная конфигурация дисков и разделов будет выглядеть таким образом: | ||
| + | |||
| + | |||
| + | < | ||
| + | ├─sda1 vfat 512M /boot/efi | ||
| + | ├─sda2 ext4 23.5G / | ||
| + | └─sda3 swap 6G [SWAP] | ||
| + | sdb 50G | ||
| + | ├─sdb1 ext4 10G /home | ||
| + | ├─sdb2 ext4 20G /var | ||
| + | └─sdb3 ext4 20G /var/www | ||
| + | sdc 20G | ||
| + | └─sdc1 ext4 20G / | ||
| + | |||
| + | \\ | ||
| + | ==== Установка ОС ==== | ||
| + | |||
| + | Подробно описывать процесс установки Ubuntu Server 14.04 LTS здесь мы не будем, так как он рассматривался ранее в статье блога [[http:// | ||
| + | |||
| + | Дойдя до шага разметки дисков, | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Согласимся с запросом на создание новой таблицы разделов на выбранном диске **Yes** | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Выбираем свободное место **FREE SPACE** и жмём **Enter** | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | В появившемся окне выбираем вариант создания нового раздела **Create a new patition** и жмём **Enter** | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Укажем небольшую величину, | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | На следующий вопрос отвечаем то, что мы хотим создать новый раздел в начале диска **Beginning** и жмём **Enter** | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | |||
| + | Затем откроется окно, в котором нам нужно будет задать параметры созданного раздела. | ||
| + | |||
| + | В поле **Use as:** выбираем из списка возможных значений **EFI boot partition **. | ||
| + | Убеждаемся в том, что поле **Bootable flag:** установлено в **on** | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Сохраняем настройки - выбираем вариант **Done setting up the partition** и жмём **Enter**. Мастер разметки вернёт нас обратно на окно выбра дисков. Снова выбираем свободное место **FREE SPACE** на первом диске ниже только что созданного раздела и нажимаем **Enter** | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | По аналогии с тем как делали ранее, создаём новый раздел: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Размер раздела рассчитываем по примерной формуле: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Раздел добавляем на свободное место с начала диска, то есть этот раздел будет создан сразу за загрузочным разделом, | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Настраиваем параметры раздела таким образом, | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Возвращаемся в меню создания разделов и выбираем оставшееся место на первом диске: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Создаём новый раздел: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Задаём размер раздела в 6GB под файл подачки (на весь оставшийся доступный размер свободного места): | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Определяем тип раздела как **swap area**: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | |||
| + | Переходим к разметке следующего, | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Создаём новую таблицу разметки разделов | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Выбираем свободное место для создания нового раздела: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | По аналогии с ранее описанной последовательностью действий, | ||
| + | |||
| + | Первый раздел второго диска под **/home**: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Второй раздел второго диска под **/var**: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Третий раздел второго диска под **/ | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | На третьем диске **sdc** по аналогии делаем раздел на полный размер диска с точкой монтирования **/ | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | В конечном итоге получаем планируемую разметку дисков: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Жмём **Finish patitioning and write changes to disk** | ||
| + | |||
| + | Завершаем процесс установки ОС и после первой загрузки системы убеждаемся в том, что точки монтирования расположены именно так как мы задумывали в процессе расметки с помощью команды: | ||
| + | |||
| + | < | ||
| + | |||
| + | \\ | ||
| + | ==== Включаем iptables ==== | ||
| + | |||
| + | Для системы имеющей выход в Интернет первым делом необходимо включить и настроить брандмауэр **iptables**. | ||
| + | Про базовую настройку iptables уже упоминалось [[http:// | ||
| + | |||
| + | Меняем политику для всего входящего трафика не попавшего ни под одно правило в цепочке **INPUT** на запрещающую: | ||
| + | |||
| + | < | ||
| + | sudo iptables -P FORWARD DROP </ | ||
| + | |||
| + | То же самое можно сделать и для протокола **IPv6**. Здесь в качестве интерфейса управления по аналогии с iptables будет выступать **ip6tables** | ||
| + | |||
| + | < | ||
| + | sudo ip6tables -P FORWARD DROP</ | ||
| + | |||
| + | Создадим 2 правила. | ||
| + | |||
| + | 1. Правило разрешающее любой входящий трафик на служебный внутренний loopback device. Это может потребоваться для корректной работы разного рода служб и приложений. | ||
| + | |||
| + | < | ||
| + | |||
| + | 2. Правило для поддержки уже разрешённых ранее и установленных соединений | ||
| + | |||
| + | < | ||
| + | |||
| + | |||
| + | Проверим что получилось в результате для протокола **IPv4**: | ||
| + | | ||
| + | < | ||
| + | |||
| + | А также для протокола **IPv6**: | ||
| + | |||
| + | < | ||
| + | |||
| + | Для сохранения правил в большинстве случаев можно использовать пакет **iptables-persistent**, | ||
| + | |||
| + | Создадим файл для сохранения всех правил **iptables** и настроим права доступа к нему: | ||
| + | |||
| + | < | ||
| + | sudo chown root:adm / | ||
| + | sudo chmod 640 / | ||
| + | |||
| + | Создадим файл для сохранения всех правил **ip6tables** и настроим права доступа к нему: | ||
| + | |||
| + | < | ||
| + | sudo chown root:adm / | ||
| + | sudo chmod 640 / | ||
| + | |||
| + | В этот файл мы будем записывать текущую конфигурацию правил iptables после их корректировки. | ||
| + | |||
| + | Для того, чтобы правила **iptables** автоматически восстанавливались автоматического из файла **/ | ||
| + | |||
| + | <file php / | ||
| + | # Load iptables rules from this file | ||
| + | iptables-restore < / | ||
| + | ip6tables-restore < / | ||
| + | ...</ | ||
| + | |||
| + | Для сохранения текущих правил iptables вручную в любой момент времени, | ||
| + | |||
| + | < | ||
| + | sudo ip6tables-save | sudo tee / | ||
| + | |||
| + | или | ||
| + | |||
| + | < | ||
| + | sudo sh -c " | ||
| + | |||
| + | \\ | ||
| + | ==== Установка компонент интеграции Hyper-V ==== | ||
| + | |||
| + | Обновляем все пакеты и ядро системы и выполняем перезагрузку: | ||
| + | |||
| + | < | ||
| + | sudo apt-get dist-upgrade | ||
| + | sudo reboot</ | ||
| + | |||
| + | После загрузки системы узнаём текущую версию загруженного ядра: | ||
| + | |||
| + | < | ||
| + | |||
| + | 3.13.0-83-generic</ | ||
| + | |||
| + | Как видно, в моём случае это **3.13.0-83-generic**. | ||
| + | Выполняем установку пакетов необходимых для улучшения интеграции Ubuntu Server 14.04 64-bit с Hyper-V с подстановкой версии ядра в имена пакетов **linux-tools** и **linux-cloud-tools**: | ||
| + | |||
| + | < | ||
| + | | ||
| + | | ||
| + | |||
| + | Перезагружаем сервер и проверяем лог загрузки на предмет отсутствия ошибок запуска компонент интеграции: | ||
| + | |||
| + | < | ||
| + | |||
| + | * Starting Hyper-V VSS Protocol Daemon | ||
| + | * Starting Hyper-V KVP Protocol Daemon | ||
| + | * Stopping Hyper-V KVP Protocol Daemon | ||
| + | |||
| + | |||
| + | Проверяем наличие процессов дополнительных средств Hyper-V: | ||
| + | |||
| + | < | ||
| + | |||
| + | root 872 1 0 19:59 ? 00:00:00 / | ||
| + | root 873 1 0 19:59 ? 00:00:00 / | ||
| + | |||
| + | После установки компонент интеграции у нас появится возможность выполнять онлайн-бекап виртуальной машины такими средствами как [[microsoft-system-center: | ||
| + | |||
| + | ---- | ||
| + | |||
| + | {{: | ||
| + | |||
| + | {{tag> | ||
| + | |||
| + | ~~DISCUSSION~~ | ||