При организации облачного хранилища данных на базе виртуального выделенного сервера, как правило, подразумевается использование удалённой машины, обладающей достаточным объёмом дискового пространства. Стандартные тарифы для VPS обычно предлагают разделы на HDD, SSD или NVMe-дисках размером в несколько десятков, а иногда и сотен гигабайт, причём эти разделы являются системными. И поскольку использование основного раздела для хранения большого объёма информации может быть довольно затратно, хостинг RUVDS предоставляет услугу по подключению к виртуальной машине дополнительного диска объёмом от 1 до 18 ТБ. Данная услуга доступна при заказе сервера с ядрами на процессоре с тактовой частотой 2,2 ГГц. Она представлена в нескольких дата-центрах RUVDS и называется «Большой диск».

Если при заказе услуги «Большой диск» с сервером на Windows Server дополнительный раздел инициируется в системе буквально в несколько кликов, то в случае с Linux-машиной необходимо произвести предварительную настройку нового раздела, чтобы начать его использовать. Далее рассмотрим, как настроить XFS-раздел на дополнительном диске, подключённом к VPS и работающем под управлением Ubuntu или Debian.
Что такое и почему XFS
Для разделов, предназначенных для хранилищ данных, в том числе S3-хранилищ, рекомендуется использовать XFS. XFS – журнальная файловая система, разработанная для обеспечения высокой производительности и надёжности при работе с большими объёмами данных. XFS эффективно обрабатывает крупные файлы, быстро выполняет операции ввода-вывода и поддерживает параллельный доступ к данным. Это делает её особенно удобной для серверов, хранилищ и систем резервного копирования.
Данная файловая система обеспечивает высокую производительность при записи и чтении крупных файлов. XFS эффективно распределяет пространство и поддерживает журналирование, что снижает риск потери данных при сбое. Кроме того, XFS хорошо масштабируется, стабильно работает на многотерабайтных дисках и позволяет быстро восстанавливать доступ к разделу после перезагрузки. Благодаря этим особенностям данную систему часто используют в серверах хранения и S3-хранилищах, где важны надёжность и скорость работы с большими объёмами данных.
Как настроить XFS-раздел на «Большом диске»
После запуска нового виртуального сервера на Ubuntu или Debian системный и дополнительный диски подключаются как тома /dev/sda и /dev/sdb соответственно, но иногда и наоборот. При этом изначально «Большой диск» в качестве раздела не виден в системе, что подтверждает вывод команды df:
$ df -h
В выводе, как правило, присутствует только системный раздел sda1 объёмом 40 ГБ:

Не стоит пугаться, если системный раздел подключён как
/dev/sdb1. Это нормальная ситуация, просто учитывайте данный аспект при дальнейшей настройке. В таком случае дополнительный том подключается как/dev/sda.
Команда lsblk, в свою очередь, показывает все блочные устройства, включая не смонтированные.
$ lsblk
Вывод команды в том числе показывает два раздела, размещённые на томе sdb.

Создание нового XFS-раздела на дополнительном диске
Первым шагом при настройке нового диска удалите существующие разделы тома sdb и создайте вместо них один новый. Для этого используйте классическую консольную программу для управления разделами на жёстких дисках – fdisk:
$ sudo fdisk /dev/sdb
Внутри интерфейса fdisk нажмите d для удаления раздела. Поскольку в нашем случае разделов два, необходимо проделать удаление дважды. Чтобы создать новый раздел, нажмите n и далее установите для нового раздела дефолтные параметры, просто нажимая Enter. Данный раздел получит номер 1 в томе sdb и будет занимать всё его доступное пространство.

После создания раздела нажмите w, чтобы выйти из интерфейса команды с сохранением внесённых изменений. Затем выполните команду lsblk, вывод которой покажет появление нового раздела sdb1.

На виртуальном сервере, управляемом Ubuntu или Debian, изначально нельзя создавать, проверять и обслуживать XFS-разделы. Дело в том, что по умолчанию в системе нет инструментов, позволяющих это делать. Для работы с файловой системой XFS необходима установка пакета xfsprogs, в состав которого входят утилиты, такие как mkfs.xfs – для форматирования, xfs_repair – для восстановления повреждённой структуры данных, xfs_info – для просмотра параметров, а также другие вспомогательные инструменты. Исходя из этого, обновите списки пакетов в системе и установите пакет xfsprogs:
$ sudo apt update
$ sudo apt install xfsprogs
При помощи следующей команды отформатируйте созданный раздел в файловую систему XFS:
$ sudo mkfs.xfs -f /dev/sdb1
Монтирование XFS-раздела
На следующем этапе создайте каталог, в который будет монтироваться раздел /dev/sdb1:
$ sudo mkdir -p /mnt/datastore
Теперь необходимо примонтировать раздел к созданному каталогу. Более того, нужно сделать так, чтобы раздел монтировался при старте системы. В противном случае после перезагрузки виртуальной машины данными в разделе можно будет воспользоваться только примонтировав раздел вручную.
Чтобы настроить автоматическое монтирование раздела, запустите команду, которая выводит уникальные идентификаторы и параметры файловой системы, записанные в метаданных указанного раздела:
$ sudo blkid /dev/sdb1
В выводе команды нас прежде всего интересует UUID – уникальный идентификатор раздела. Скопируйте данное значение в буфер обмена.

Затем откройте для редактирования файл /etc/fstab, содержащий список всех разделов, дисков, сетевых хранилищ и псевдофайловых систем, которые должны быть автоматически смонтированы при старте системы:
$ sudo nano /etc/fstab
В конец файла добавьте строку, которая означает, что при загрузке системы раздел с указанным UUID будет автоматически смонтирован в каталог /mnt/datastore как файловая система XFS. Вместо указанного в команде значения UUID используйте скопированный из вывода команды blkid.
UUID=bff2d811-135f-4151-8c8a-1c4a639a8ad0 /mnt/datastore xfs defaults 0 0
Сохраните изменения в файле, закройте его и следующей командой смонтируйте все файловые системы, описанные в /etc/fstab:
$ sudo mount -a
Поскольку файл /etc/fstab был изменён, а система инициализации systemd всё ещё использует старую версию конфигурации, закэшированную при загрузке, команда выводит предупреждение о необходимости перечитать конфигурацию, чтобы применить внесённые изменения, включая изменения в /etc/fstab.

Исходя из этого, запустите следующую команду для применения изменений, внесённых в файл /etc/fstab:
$ sudo systemctl daemon-reload
После чего ещё раз смонтируйте файловые системы, перечисленные в /etc/fstab:
$ sudo mount -a
Чтобы убедиться в том, что система видит «Большой Диск», выполните следующую команду:
$ df -h
Её вывод отображает присутствие в системе раздела объёмом около 1 ТБ, примонтированного к каталогу /mnt/datastore.

Также и lsblk показывает, что к разделу sdb1 примонтирован каталог /mnt/datastore:
$ lsblk

Таким образом новый XFS-раздел, размещённый на дополнительном томе при помощи услуги «Большой Диск», подготовлен к использованию в качестве директории для хранилища данных. Данный раздел можно использовать при организации системы хранения файлов на базе виртуального сервера под управлением Ubuntu или Debian.
