База знаний: Linux Server
Расширение раздела в Synology
Автор Алексей | HiTex.BY, Последнее изменение: Алексей | HiTex.BY на 16 января 2023 12:18

Проблема в том, что DSM выполняет автоматическое расширение только тогда, когда происходит событие добавления/замены диска. Это не срабатывает, когда вы намеренно расширяете базовый том с помощью виртуального хранилища — действие пользователя, которое никогда не произойдет в «настоящей» аппаратной системе Synology. Это также подчеркивает тот факт, что DSM действительно предназначен для непосредственного управления дисками, а не ESXi или RAID-контроллера, обеспечивающего резервирование дисков.

РЕДАКТИРОВАТЬ: одно из ограничений этой стратегии заключается в том, что диск изначально был разбит на разделы MBR, что возможно, если исходный размер диска был меньше 2 ТБ. Чтобы увеличить размер MBR-диска до более чем 2 ТБ, необходимо будет изменить тип раздела на GPT, что выходит за рамки данного совета.

Чтобы увеличить том вручную, выполните следующие общие задачи: разверните раздел(ы) на диске(ах), на котором размещается массив, разверните массив, а затем разверните том в массиве.  Это имеет разные уровни сложности в зависимости от типа массива , используете ли вы LVM, используете ли вы SHR и используете ли вы btrfs или ext4. Ваша ситуация, вероятно, наименее сложная - это Basic, один диск ext4. Обратите внимание, что даже эта конфигурация реализована в DSM в виде массива — в вашем случае RAID1 с 1 диском.

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

https://xpenology-com.translate.goog/forum/uploads/monthly_2019_01/1384724441_Volumeexp.png.5d10f7dcb55d5c9312a459f54c4e89a8.png?_x_tr_sl=auto&_x_tr_tl=ru&_x_tr_hl=ru

Последовательность такова:

1. Войдите в систему через SSH и определите свое устройство массива томов (должно быть /dev/md2, используя скриншоты примера)

$ df | fgrep volume1 /dev/md2 22490509088 16838480532 5652028556 75% /volume1

ПРИМЕЧАНИЕ: Если df возвращает что-то вроде /dev/vgX/volume_X вместо устройства /dev/md, значит, ваша система использует LVM. Проверьте устройство массива /dev/mdX под LVM с помощью команды pvdisplay и используйте ее для следующих команд. Если несколько устройств возвращаются для изменения размера определенного тома, у вас есть многодисковый массив SHR, и его следует остановить сейчас.

2. Определите хост-диск, обслуживающий массив (может быть /dev/sda или /dev/sdb в вашем конкретном примере).

Обратите внимание на приведенный ниже пример: /dev/sda3 — это третий раздел в /dev/sda.

$ sudo mdadm --detail /dev/md2 | fgrep /dev/
/dev/md2: 0 8 3 0 active sync /dev/sda

3. Остановите службу Synology .

$ sudo syno_poweroff_task -d

4. Остановите массив (эталонное устройство массива из шага № 1).

$ sudo mdadm --stop /dev/md2

5. Удалите раздел 3 с хост-диска массива и создайте новый, чтобы использовать все доступное пространство (ссылка на хост-устройство массива из шага № 2).

ВАЖНО: Стартовый сектор нового раздела должен совпадать со старым.

$ sudo fdisk /dev/sda

Welcome to fdisk (util-linux 2.26.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): p
Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 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: 0xa60f300d

Device     Boot   Start      End Sectors  Size Id Type
/dev/sda1          2048  4982527 4980480  2.4G fd Linux raid autodetect
/dev/sda2       4982528  9176831 4194304    2G fd Linux raid autodetect
/dev/sda3       9437184 16572415 7135232  3.4G fd Linux raid autodetect   <<-- this is the one we are interested in, note the start sector

Command (m for help): d
Partition number (1-3, default 3): 3

Partition 3 has been deleted.

Command (m for help): n
Partition type
   p   primary (2 primary, 0 extended, 2 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (3,4, default 3): 3
First sector (9176832-41943039, default 9177088): 9437184
Last sector, +sectors or +size{K,M,G,T,P} (9437184-41943039, default 41943039):

Created a new partition 3 of type 'Linux' and of size 15.6 GiB.

Command (m for help): p
Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 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: 0xa60f300d

Device     Boot   Start      End  Sectors  Size Id Type
/dev/sda1          2048  4982527  4980480  2.4G fd Linux raid autodetect
/dev/sda2       4982528  9176831  4194304    2G fd Linux raid autodetect
/dev/sda3       9437184 41943039 32505856 15.5G 83 Linux

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: Device or resource busy

The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8).

6. Перезагрузитесь (сейчас sudo shutdown -r)

7. ДОПОЛНИТЕЛЬНО: убедитесь, что ваш массив все еще не поврежден.

альтернативно, cat /proc/mdstat

$ df | fgrep volume1
/dev/md2 22490509088 16838480532 5652028556 75% /volume1

8. Расширьте массив, чтобы использовать все новое пространство в разделе основного диска.

$ sudo mdadm --grow /dev/md2 --size=max

9. Если ваша система использует LVM, выполните шаги, описанные в сообщении :

9.1. Сообщите lvm, что физическое устройство стало больше.
$ sudo pvresize /dev/md2 Physical volume "/dev/md2" changed 1 physical volume(s) resized / 0 physical volume(s) not resized

9.2. Расширение lv

$ sudo lvextend -l +100%FREE /dev/vg1/volume_1 
Size of logical volume vg1/volume_1 changed from 15.39 GiB (3939 extents) to 20.48 GiB (5244 extents). Logical volume volume_1 successfully resized.

9.3. Наконец, расширьте файловую систему (пример для  ext4, для btrfs другая комманда)

$ sudo resize2fs -f /dev/vg1/volume_1 
resize2fs 1.42.6 (21-Sep-2012) Filesystem at /dev/vg1/volume_1 is mounted on /volume1; on-line resizing required old_desc_blocks = 2, new_desc_blocks = 3 The filesystem on /dev/vg1/volume_1 is now 5369856 blocks long.

10. В противном случае расширьте том, чтобы использовать все новое пространство в массиве (это для ext4, у btrfs другая команда)

$ sudo resize2fs -f /dev/md2
Для BTFS: $ btrfs filesystem resize max /dev/md2

11. И перезагрузитесь в последний раз (sudo shutdown -r now)

(4 голос(а))
Эта статья полезна
Эта статья бесполезна

Комментарии (0)