При апгрейде VPS может потребоваться перераспределение дискового пространства.

Перераспределение может удалить или повредить ваши данные. Мы не можем нести ответственность за потерю или повреждение ваших данных. Прежде чем что-то делать, убедитесь, что вы создали резервную копию всех своих данных.

Требования

  • Вы должны иметь SSH доступ к VPS (root доступ).
  • Вам необходимо загрузить VPS в rescue mode.

После апгрейда RAM и CPU будут автоматически обновлены. Что касается дискового пространства то для его расширения необходимо вручную произвести следующие настройки:

В данном руководстве представлены шаги, которые необходимо выполнить, чтобы увеличить дисковое пространство.

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

Отмонтирование раздела

После входа на VPS в режиме восстановления ваш раздел будет автоматически смонтирован. Чтобы изменить его размер, вам нужно его отмонтировать. Если вы знаете имя вашего раздела, вы можете пропустить следующий шаг. Если вы не знаете имя вашего раздела, используйте следующую команду:

# lsblk

Раздел, соответствующий режиму восстановления, будет установлен в каталоге /, который фактически является корневым разделом системы. Напротив, раздел вашего VPS, вероятно, будет помещен в каталог, связанный с / mnt, или не смонтирован вообще.

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 254:0 0 10G 0 disk
└─sda1 254:1 0 10G 0 part /
sdb 254:16 0 25G 0 disk
└─sdb1 254:17 0 25G 0 part /mnt/sdb1

Чтобы отмонтировать раздел, используйте следующую команду:

# umount /dev/sdb1

Проверка файловой системы

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

# e2fsck -yf /dev/sdb1

e2fsck 1.42.9 (4-Feb-2014)
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/sdb1: 37870/1310720 files (0.2% non-contiguous), 313949/5242462 blocks
Если вы получили ошибку суперблока, не продолжайте. Процедура устранения этой проблемы приведена в конце данного руководства.

Запуск приложения fdisk

Если проверка файловой системы завершена успешно, запустите приложение fdisk. В настройках нужно ввести имя диска, а не название раздела. Например, если ваш раздел sdb1, имя диска будет /dev/sdb.

# fdisk -u /dev/sdb
Это приложение имеет несколько команд, которые вы можете просмотреть с помощью команды m.

Удаление старого раздела

Перед удалением старого раздела рекомендуется записать номер, соответствующий первому сектору раздела. Вы можете найти эту информацию с помощью команды p. Информация указана в поле «Start». Сохраните эти данные.

Command (m for help): p

Disk /dev/sdb: 21.5 GB, 21474836480 bytes
54 heads, 49 sectors/track, 15851 cylinders, total 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
Disk identifier: 0x000132ff

Device Boot Start End Blocks Id System
/dev/sdb1 * *2048* 41941745 20969849 83 Linux
Если вы не сделали резервную копию своих данных, позаботьтесь об этом так как следующие действия приведут к удалению всех данных на разделе. 

Затем удалите раздел с помощью команды d.

Command (m for help): d
Selected partition 1

Один раздел будет автоматически удален.

Создание нового раздела

Теперь вам нужно создать новый раздел с помощью команды n. Рекомендуется использовать значения по умолчанию.

Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-41943039, default 2048): 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): 41943039.

В строке First sector убедитесь, что значение по умолчанию совпадает со значением, записанным ранее. Если оно отличается, используйте записанное вами значение.

Создание загрузочного раздела

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

Command (m for help): a

Partition number (1-4): 1

Сохраните изменения и выйдите из приложения с помощью команды w:

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Расширение файловой системы на разделе

Раздел был расширен, но файловая система все еще занимает то же пространство, что и раньше. Чтобы расширить его, просто введите следующую команду:

# resize2fs /dev/sdb1

resize2fs 1.42.9 (4-Feb-2014)
Resizing the filesystem on /dev/sdb1 to 5242624 (4k) blocks.
The filesystem on /dev/sdb1 is now 5242624 blocks long.

Проверка

Чтобы проверить, было ли расширение успешным, вы можете смонтировать только что созданный раздел и проверить его размер.

# mount /dev/sdb1 /mnt
# df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda1 991M 793M 132M 86% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
udev 1.9G 12K 1.9G 1% /dev
tmpfs 386M 360K 386M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 1.9G 0 1.9G 0% /run/shm
none 100M 0 100M 0% /run/user
/dev/sdb1 50G 842M 48G 2% /mnt

Как исправить ошибку bad magic number in superblock ?

Если команда e2fsck возвращает сообщение об ошибке «bad magic number in superblock», вы должны проверить и восстановить файловую систему, используя резервную копию суперблока. Чтобы увидеть, какие резервные копии суперблока доступны, введите следующую команду:

# dumpe2fs /dev/sdb1 | grep superblock

Primary superblock at 0, Group descriptors at 1-6
Backup superblock at 32768, Group descriptors at 32769-32774
Backup superblock at 98304, Group descriptors at 98305-98310
Backup superblock at 163840, Group descriptors at 163841-163846
Backup superblock at 229376, Group descriptors at 229377-229382
Backup superblock at 294912, Group descriptors at 294913-294918
Backup superblock at 819200, Group descriptors at 819201-819206
Backup superblock at 884736, Group descriptors at 884737-884742
Backup superblock at 1605632, Group descriptors at 1605633-1605638
Backup superblock at 2654208, Group descriptors at 2654209-2654214
Backup superblock at 4096000, Group descriptors at 4096001-4096006
Backup superblock at 7962624, Group descriptors at 7962625-7962630
Backup superblock at 11239424, Group descriptors at 11239425-11239430
Backup superblock at 20480000, Group descriptors at 20480001-20480006
Backup superblock at 23887872, Group descriptors at 23887873-23887878

Затем используйте первую резервную копию суперблока, чтобы проверить и восстановить файловую систему:

# fsck -b 32768 /dev/sdb1

 

Tagged: