Увеличение размера Volume для дроплета Digital Ocean

автор superman 18 июня 2017 г. 15:29:10

Теги: DropletVolumeUbuntuDigital_ocean



В личном кабинете Digital Ocean переходим на вкладку Droplets и выбираем Volumes. Выбираем volume который хотим изменить и в выпадающем меню More выбираем Resize Volume.

Я выбираю изменение размера до 150 Гб. Теперь заходим по ssh на дроплет. Ищем ваш раздел командой:

ls -all /dev/disk/by-id

У меня результат получился таким:

root@ubuntu-512mb-nyc1-01:~# ls -all /dev/disk/by-id
total 0
drwxr-xr-x 2 root root  80 Feb 22 14:56 .
drwxr-xr-x 8 root root 160 Feb 22 14:56 ..
lrwxrwxrwx 1 root root   9 Jun 18 13:07 scsi-0DO_Volume_volume-nyc1-01 -> ../../sda
lrwxrwxrwx 1 root root  10 Feb 22 14:58 scsi-0DO_Volume_volume-nyc1-01-part1 -> ../../sda1
root@ubuntu-512mb-nyc1-01:~# 

Где scsi-0DO_Volume_volume-nyc1-01-part1 это раздел, а scsi-0DO_Volume_volume-nyc1-01 это сам диск. Далее запускаем команду:

root@ubuntu-512mb-nyc1-01:~# lsblk /dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  150G  0 disk 
`-sda1   8:1    0  140G  0 part /mnt/volume-nyc1-01-part1

Теперь нам надо размонтировать раздел и отменить все приложения, которые используют этот диск. Проверим кто использует раздел:

root@ubuntu-512mb-nyc1-01:~# lsof +f -- /mnt/volume-nyc1-01-part1
root@ubuntu-512mb-nyc1-01:~# 

Никто. Теперь можно его отмонтировать:

root@ubuntu-512mb-nyc1-01:~# umount /mnt/volume-nyc1-01-part1
root@ubuntu-512mb-nyc1-01:~# 

Теперь можно обновить разметку диска:

root@ubuntu-512mb-nyc1-01:~# gdisk /dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01
GPT fdisk (gdisk) version 1.0.1

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help): 

Сделаем бэкап таблицы разделов на всякий случай:

Command (? for help): b

Введем название бэкап файла:

Command (? for help): b
Enter backup filename to save: partition_backup_2017.06.bak

Теперь перейдем в режим эксперта:

Command (? for help): x

Перемещаем новое пространство в конец диска:

Expert command (? for help): e

И возвращаемся в главное меню

Expert command (? for help): m

Посмотрим текущую таблицу разделов:

Command (? for help): p
Disk /dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01: 314572800 sectors, 150.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): BD8EAD44-99ED-4696-A6FB-C210B99BA9BA
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 314572766
Partitions will be aligned on 2048-sector boundaries
Total free space is 20973534 sectors (10.0 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048       293601246   140.0 GiB   8300  primary

Command (? for help): 

Как видим раздел у нас все еще 140 Гб, хотя уже доступно 150 Гб. Теперь нам нужно удалить этот раздел и создать его заново с новым размером.

Command (? for help): d
Using 1

И запишем эту информацию:

Command (? for help): n

В процессе создания будет задан ряд вопросов. В качестве подсказок используйте информацию, которую вы получили при просмотре текущей таблицы разделов ранее. Как то вот так например:

Partition number (1-128, default 1): 1
First sector (34-314572766, default = 2048) or {+-}size{KMGTP}: 2048
Last sector (2048-314572766, default = 314572766) or {+-}size{KMGTP}: 
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): 
Changed type of partition to 'Linux filesystem'

Запишем имя раздела:

Command (? for help): c
Using 1
Enter name: primary

Просмотрим новую разметку:

Command (? for help): p
Disk /dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01: 314572800 sectors, 150.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): BD8EAD44-99ED-4696-A6FB-C210B99BA9BA
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 314572766
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048       314572766   150.0 GiB   8300  primary

И запишем эту информацию на диск:

Command (? for help): w

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): Y
OK; writing new GUID partition table (GPT) to /dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01.
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot or after you
run partprobe(8) or kpartx(8)
The operation has completed successfully.

Проверим:

root@ubuntu-512mb-nyc1-01:~# lsblk --fs /dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01
NAME   FSTYPE LABEL UUID                                 MOUNTPOINT
sda                                                      
`-sda1 ext4         e5389172-2540-4749-9aae-00c1c055cc98 /mnt/volume-nyc1-01-part1
root@ubuntu-512mb-nyc1-01:~# 

Делаем проверку

root@ubuntu-512mb-nyc1-01:~# e2fsck -f /dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01-part1
e2fsck 1.42.13 (17-May-2015)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01-part1: 3095/9175040 files (87.7% non-contiguous), 34841084/36699899 blocks

Делаем ресайз

root@ubuntu-512mb-nyc1-01:~# resize2fs /dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01-part1
resize2fs 1.42.13 (17-May-2015)
The filesystem is already 36699899 (4k) blocks long.  Nothing to do!

Вот если вы получили ответ такой, то что-то пошло не так. Бывает Digital Ocean немного медлителен с ресайзом или раздел почему то примонтировался. Проверьте примонтирван раздел или нет командой df -Th, если так то отмонтируйте его и повторите операцию. Если и это не помогает то рекомендую перезагрузить дроплет. Верный результат работы выглядит как-то так

root@ubuntu-512mb-nyc1-01:~# resize2fs /dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01-part1
resize2fs 1.42.13 (17-May-2015)
Resizing the filesystem on /dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01-part1 to 39321339 (4k) blocks.
The filesystem on /dev/disk/by-id/scsi-0DO_Volume_volume-nyc1-01-part1 is now 39321339 (4k) blocks long.

Монтируем и проверяем

root@ubuntu-512mb-nyc1-01:~# mount -a
root@ubuntu-512mb-nyc1-01:~# df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  225M     0  225M   0% /dev
tmpfs          tmpfs      49M  3.1M   46M   7% /run
/dev/vda1      ext4       20G  8.4G   11G  45% /
tmpfs          tmpfs     245M     0  245M   0% /dev/shm
tmpfs          tmpfs     5.0M     0  5.0M   0% /run/lock
tmpfs          tmpfs     245M     0  245M   0% /sys/fs/cgroup
tmpfs          tmpfs      49M     0   49M   0% /run/user/0
/dev/sda1      ext4      148G  131G  9.5G  94% /mnt/volume-nyc1-01-part1

Раздел стал 150 Гб! Все Ок :)


comments powered by Disqus

2014-2018 © thenextcode.ru