Создание разделов на диске сервера нельзя откатить назад. Если мы сделаем что-то за вас, то можно создать ситуацию, которая вам не понравится, и исправить это будет невозможно. Поэтому расширять диски внутри сервера нужно самостоятельно.
Расширяйте разделы постепенно. Поскольку откатить это уже нельзя (или очень трудно), лучше потом еще раз расширить раздел, чем сразу и навсегда всё испортить.
C Windows всё очень просто.
Откройте системную программу "Disk Management" или "Управление дисками", её можно найти в меню Пуск. В ней вы увидите всю ситуацию визуально, и можете в несколько кликов сделать то, что вам нужно. Расширяйте существующий раздел (например, C:), или добавляйте другие разделы.
Всё это делается мышкой по кликам правой кнопкой на раздел или пустое место за ним.
В Linux всё немного сложнее. Давайте смотреть варианты и разбираться.
Наш бесплатный продукт 1Gb Panel умеет расширять диски сервера. Если вы выбрали сервер с панелью, то она уже стоит. Её можно открыть по адресу http://<ip-вашего-сервера>:1234/.
Вы также можете установить её на свой сервер, если там Ubuntu или Debian. Инструкция есть в статье.
В панели раздел расширения дисков называется "Storage" или "Хранение".
Для этой инструкции мы выбрали команды, которые точно безопасны. Испортить с их помощью ничего нельзя.
Зайдите на сервер по SSH. Убедитесь, что вы root. Для этого дайте команду sudo su (Ubuntu) или просто su -l (Debian).
В данном примере мы будем расширять корневой раздел сервера.
Могут быть два варианта. Либо разделы уже расширены на весь диск сервера, либо нет.
Запустите команду lsblk, чтобы посмотреть, что как устроено:
[root@nv-140463 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sr0 11:0 1 2K 0 rom
vda 252:0 0 60G 0 disk
+-vda1 252:1 0 600M 0 part /boot/efi
+-vda2 252:2 0 1G 0 part /boot
L-vda3 252:3 0 8.4G 0 part
+-cs-root 253:0 0 7.4G 0 lvm /
L-cs-swap 253:1 0 1G 0 lvm [SWAP]
[root@nv-140463 ~]#
Тут видно, что раздел vda3 занимает только часть диска - 8.4 гигабайт из 60 гигабайт физического диска vda. Нам надо его расширить. Вот команды:
printf "fix\n" | parted ---pretend-input-tty /dev/vda print
parted -s /dev/vda resizepart 3 100%
В этом примере, /dev/vda - это ваш диск, а 3 - это номер раздела, который мы расширяем (vda3).
Если программы parted у вас нет, то установите её одной из следующих команд:
yum -y install parted
или
apt -y update
apt -y install parted
Вот пример, как это всё работает, и результат:
[root@nv-140463 ~]# printf "fix\n" | parted ---pretend-input-tty /dev/vda print
Warning: Not all of the space available to /dev/vda appears to be used, you can fix the GPT to use all of the space (an extra 104857600 blocks) or continue with the current setting?
Fix/Ignore? fix
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 64.4GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 630MB 629MB fat32 EFI System Partition boot, esp
2 630MB 1704MB 1074MB xfs
3 1704MB 10.7GB 9032MB lvm
[root@nv-140463 ~]# parted -s /dev/vda resizepart 3 100%
[root@nv-140463 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sr0 11:0 1 2K 0 rom
vda 252:0 0 60G 0 disk
+-vda1 252:1 0 600M 0 part /boot/efi
+-vda2 252:2 0 1G 0 part /boot
L-vda3 252:3 0 58.4G 0 part
+-cs-root 253:0 0 7.4G 0 lvm /
L-cs-swap 253:1 0 1G 0 lvm [SWAP]
[root@nv-140463 ~]#
Теперь раздел vda3 занимает весь объем вашего физического диска.
Дальше надо понять, есть ли у вас LVM. Дайте команду pvs. Если такой команды не найдено, или она вернула пустоту, значит, LVM на сервере нет, и мы этот раздел пропускаем. Если же команда вернула результат, давайте расширять LVM.
[root@nv-140463 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/vda3 cs lvm2 a-- 8.41g 0
[root@nv-140463 ~]#
В данном примере LVM есть. Расширим его, если нужно. Вот команда:
pvresize /dev/vda3
Вот пример и результат:
[root@nv-140463 ~]# pvresize /dev/vda3
Physical volume "/dev/vda3" changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized
[root@nv-140463 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/vda3 cs lvm2 a-- 58.41g 50.00g
[root@nv-140463 ~]#
Иногда команда pvresize не нужна, например, на физическом сервере, весь диск скорее всего и так размечен в LVM, так как его размер никогда не меняется. Тогда смотрим дальше.
В нашем примере, теперь будет видно, что в вашем LVM 50 гигабайт свободного места:
[root@nv-140463 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
cs 1 2 0 wz--n- 58.41g 50.00g
С помощю команды lsblk вспомним, где у нас что:
[root@nv-140463 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sr0 11:0 1 2K 0 rom
vda 252:0 0 60G 0 disk
+-vda1 252:1 0 600M 0 part /boot/efi
+-vda2 252:2 0 1G 0 part /boot
L-vda3 252:3 0 8.4G 0 part
+-cs-root 253:0 0 7.4G 0 lvm /
L-cs-swap 253:1 0 1G 0 lvm [SWAP]
[root@nv-140463 ~]#
Видно, что корень / нашего сервера находится на LVM разделе cs-root.
Расширим его, например, на 20 гигабайт. Вот команда:
lvresize /dev/cs/root -L +20G
Для Ubuntu тут обычно будет указан раздел типа ubuntu--vg-ubuntu--lv, и тогда будет так:
lvresize /dev/ubuntu-vg/ubuntu-lv -L +20G
Вот пример и результат:
[root@nv-140463 ~]# lvresize /dev/cs/root -L +20G
Size of logical volume cs/root changed from 7.41 GiB (1897 extents) to 27.41 GiB (7017 extents).
Logical volume cs/root successfully resized.
[root@nv-140463 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sr0 11:0 1 2K 0 rom
vda 252:0 0 60G 0 disk
+-vda1 252:1 0 600M 0 part /boot/efi
+-vda2 252:2 0 1G 0 part /boot
L-vda3 252:3 0 58.4G 0 part
+-cs-root 253:0 0 27.4G 0 lvm /
L-cs-swap 253:1 0 1G 0 lvm [SWAP]
[root@nv-140463 ~]#
Тут видно, что раздел раньше занимал 8.4 гигабайта, а теперь занимает 27.4 гигабайта.
Запомним, что наша файловая система находится на разделе /dev/cs/root.
Тогда команда lsblk будет выдавать примерно такое:
[root@DDG100 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
fd0 2:0 1 4K 0 disk
sda 8:0 0 4G 0 disk
+-sda1 8:1 0 484M 0 part /boot
L-sda2 8:2 0 3.5G 0 part /
sr0 11:0 1 1024M 0 rom
zram0 254:0 0 1.9G 0 disk [SWAP]
[root@DDG100 ~]#
Запомним, что наша файловая система находится на разделе /dev/sda2.
Для расширения файловой системы нужно знать её тип.
root@nv-140459:/home/ubuntu# grep ' / ' /proc/mounts
/dev/mapper/ubuntu--vg-ubuntu--lv / ext4 rw,relatime 0 0
root@nv-140459:/home/ubuntu#
Тут видно, что здесь EXT4. Но на самом деле, можно давать команды для всех файловых систем, и сработает только то, что нужно. Это безопасно.
Вот команда для XFS - раздел тут указывать не нужно, сама найдет:
xfs_growfs /
Вот пример и результат:
[root@nv-140463 ~]# xfs_growfs /
meta-data=/dev/mapper/cs-root isize=512 agcount=4, agsize=485632 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1 bigtime=1 inobtcount=1 nrext64=0
data = bsize=4096 blocks=1942528, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=16384, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 1942528 to 7185408
[root@nv-140463 ~]# df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cs-root 28G 1.5G 26G 6% /
[root@nv-140463 ~]#
Вот команда для EXT4 - тут нужно указать раздел, который вы запомнили выше. Например, это могло быть /dev/ubuntu-vg/ubuntu-lv (если был LVM), или, например, /dev/sda2, если LVM не было.
Вот команда:
resize2fs /dev/ubuntu-vg/ubuntu-lv
Вот пример и результат:
root@nv-140459:/home/ubuntu# resize2fs /dev/ubuntu-vg/ubuntu-lv
resize2fs 1.47.0 (5-Feb-2023)
Filesystem at /dev/ubuntu-vg/ubuntu-lv is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 4
The filesystem on /dev/ubuntu-vg/ubuntu-lv is now 7266304 (4k) blocks long.
root@nv-140459:/home/ubuntu# df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-ubuntu--lv 28G 4.2G 22G 16% /
root@nv-140459:/home/ubuntu#
Обратитесь в поддержку, поможем вам расширить диск.