Підключення додаткового диска до сервера Linux

Опис

У цьому розділі описано додавання та підключення нового порожнього диска до наявного сервера Linux, наприклад RHEL/CentOS або Debian/Ubuntu.

У прикладі додається диск розміром 90 GB, який буде змонтовано як /data.

Процедуру показано на CentOS Linux 7. Вона охоплює створення й форматування розділу, створення точки монтування, а також ручне та автоматичне монтування.

Розділ створюється за допомогою fdisk — утиліти командного рядка для перегляду й керування дисками та розділами Linux.

Перегляньте підключені диски й розділи до додавання нового диска:

fdisk -l

Disk /dev/vda: 10.7 GB, 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
Disk label type: dos
Disk identifier: 0x000a25ba

   Device Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048     1026047      512000   83  Linux
/dev/vda2         1026048    10485759     4729856   8e  Linux LVM

Disk /dev/mapper/vg0-rootfs: 4840 MB, 4840226816 bytes, 9453568 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

Після підключення нового диска розміром 90 GB команда fdisk -l покаже:

fdisk -l

Disk /dev/vda: 10.7 GB, 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
Disk label type: dos
Disk identifier: 0x000a25ba

   Device Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048     1026047      512000   83  Linux
/dev/vda2         1026048    10485759     4729856   8e  Linux LVM

Disk /dev/mapper/vg0-rootfs: 4840 MB, 4840226816 bytes, 9453568 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


Disk /dev/vdb: 96.6 GB, 96636764160 bytes, 188743680 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

У системі з’явився новий віртуальний диск: Disk /dev/vdb: 96.6 GB.

Створення розділу

У прикладі створюється один розділ, який займає весь вільний простір диска.

Примітка

Для розмічання нового диска доступні fdisk і parted. Старіша утиліта fdisk створює лише таблиці MBR, тоді як parted підтримує MBR і GPT.

MBR (Master Boot Record) не підтримує розділи понад 2 TB і більше чотирьох основних розділів. GPT (GUID Partition Table) не має цих обмежень, але є частиною стандарту EFI й потребує його підтримки ядром. Сучасні ядра та дистрибутиви зазвичай підтримують EFI.

Оскільки диск у прикладі має лише 90 GB, використовується fdisk.

Створіть розділ.

  1. Запустіть fdisk:

fdisk /dev/vdb
  1. Утиліта покаже таке меню:

fdisk /dev/vdb

Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x6561828e.
Command (m for help): m
Command action
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   g   create a new empty GPT partition table
   G   create an IRIX (SGI) partition table
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)
  1. Введіть n (Add a new partition) і натисніть Enter:

Command (m for help): n

Partition type:
 p   primary (0 primary, 0 extended, 4 free)
 e   extended
Select (default p):
  1. Створіть основний розділ: введіть p і натисніть Enter.

Select (default p): p
Partition number (1-4, default 1):
  1. Це буде єдиний розділ на диску з номером 1. Введіть 1 і натисніть Enter.

Partition number (1-4, default 1): 1
First sector (2048-188743679, default 2048):
  1. Залиште стандартне значення 2048 і натисніть Enter.

Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-188743679, default 188743679):
  1. Залиште стандартне значення 188743679 і натисніть Enter.

Using default value 188743679
Partition 1 of type Linux and of size 90 GiB is set
  1. Введіть w і натисніть Enter, щоб записати таблицю розділів на диск.

Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.

9. Якщо операцію виконано успішно, диск готовий до форматування. Linux визначає перший розділ як /dev/vdb1, а сам диск — як /dev/vdb.

Форматування розділу

  1. Відформатуйте /dev/vdb1 у файлову систему ext4:

mkfs -t ext4 /dev/vdb1
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
5898240 inodes, 23592704 blocks
1179635 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2172649472
720 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
    4096000, 7962624, 11239424, 20480000

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

Примітка

Під час форматування замініть /dev/vdb1 на шлях до власного розділу.

  1. Перевірте результат командою blkid:

blkid
/dev/mapper/vg0-rootfs: UUID="1e4b1167-6fa3-4d44-bdb7-282841e0b31e" TYPE="ext4"
/dev/vda2: UUID="9stkBB-ZiYX-S7sb-rGxJ-idrH-m0ov-OTEuNs" TYPE="LVM2_member"
/dev/vda1: UUID="ab1dd6e8-62a4-4752-befe-cda7f0e8383a" TYPE="ext4"
/dev/vdb1: UUID="10396c2f-9335-4966-8e94-377e413045b4" TYPE="ext4"

Створення точки монтування

12. Після розмічання та форматування виберіть точку монтування — каталог, через який надалі буде доступний диск. У прикладі використовується /data.

mkdir /data

Тепер розділ можна змонтувати.

Монтування розділу

  1. Для ручного монтування виконайте:

mount /dev/vdb1 /data

Автоматичне монтування розділу

  1. Для автоматичного монтування змініть /etc/fstab. Додайте до файла рядок:

UUID=10396c2f-9335-4966-8e94-377e413045b4 /data ext4 defaults 0 0

Після змін файл /etc/fstab матиме приблизно такий вигляд:

# /etc/fstab
# Created by anaconda on Thu Sep 14 14:20:31 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/vg0-rootfs  /                       ext4    defaults        1 1
UUID=ab1dd6e8-62a4-4752-befe-cda7f0e8383a /boot                   ext4    defaults        1 2
UUID=10396c2f-9335-4966-8e94-377e413045b4 /data ext4 defaults 0 0

Якщо розділ не було змонтовано на кроці 13, змонтуйте його тепер.

  1. Перевірте успішне підключення диска командою df -h:

df -h
Filesystem              Size  Used Avail Use% Mounted on
/dev/mapper/vg0-rootfs  4,4G  1,6G  2,5G  40% /
devtmpfs                3,9G     0  3,9G   0% /dev
tmpfs                   3,9G     0  3,9G   0% /dev/shm
tmpfs                   3,9G  8,6M  3,9G   1% /run
tmpfs                   3,9G     0  3,9G   0% /sys/fs/cgroup
/dev/vdb1                89G   57M   84G   1% /data
/dev/vda1               477M  121M  327M  28% /boot
tmpfs                   799M     0  799M   0% /run/user/0

Результат показує, що /dev/vdb1 успішно змонтовано до /data. Доступний обсяг менший за 90 GB, оскільки частину простору зарезервовано для службових потреб.

Диск готовий до використання.