четверг, 6 апреля 2017 г.

Расширение раздела жесткого диска на FreeBSD 10

На виртуальном сервере, построенном на FreeBSD 10.1, начало заканчиваться место, решил увеличить размер раздела. Для этого средствами vmware увеличил размер виртуального диска с 200 до 250 гигабайт в настройках виртуальной машины. После чего пришлось чуть поколдовать в консоли самого сервера.

1. Смотрим разделы нашего диска (у меня один диск /dev/da0)

gpart show da0

=>   0   -------     da0 BSD (250G)
-------     -------    1   freebsd-ufs (512M)
-------     -------    2   freebsd-ufs (196G)

-------     -------    3   freebsd-swap (4G)
-------     -------    - free -    (46G)
Стоит проверить не поврежден ли диск, это можно сделать с помощью "gpart list da0", если видим "state: CORRUPT" исправляем с помощью "gpart recover da0"

2. Основной проблемой является третий раздел со swap. Из за него не выйдет увеличить раздел 2. Можно конечно создать вслед за разделом подкачки еще один раздел, но мне такой вариант не подходит, поэтому первым делом перегружаю сервер в single user

3. Деактивирую swap

swapoff -a

4. Удаляю временно swap da0p3, чтобы затем расширить da0p2 (freebsd-ufs)

gpart delete -i 3 da0

5. Расширяю da0p2

gpart resize -i 2 -s 246G da0

6. Создаю swap

gpart add -t freebsd-swap da0

7. Расширяю логический диск da0p2

growfs /dev da0p2

8. Смотрим что получилось

gpart show da0

=>   0   -------     da0 BSD (250G)
-------     -------    1   freebsd-ufs (512M)
-------     -------    2   freebsd-ufs (246G)

-------     -------    3   freebsd-swap (4G)

На этом расширение диска завершено. Совет - делайте бэкапы, никто не застрахован от потери данных при таких манипуляциях с дисками.