Как управлять файловой системой Linux?¶
Добавление нового диска в систему Linux¶
После добавления диска в сервис диск будет автоматически добавлен в виртуальную машину.
Команда lsblk
в Linux выводит список блочных устройств.
До добавления:
[root@weathered-firefly-vs ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 49G 0 part
├─fedora-root 253:0 0 48G 0 lvm /
└─fedora-swap 253:1 0 1G 0 lvm [SWAP]
sdb 8:16 0 50G 0 disk
sdc 8:32 0 50G 0 disk
sr0 11:0 1 1024M 0 rom
sr1 11:1 1 376K 0 rom
zram0 252:0 0 1.9G 0 disk [SWAP]
После добавления:
[root@weathered-firefly-vs ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 49G 0 part
├─fedora-root 253:0 0 48G 0 lvm /
└─fedora-swap 253:1 0 1G 0 lvm [SWAP]
sdb 8:16 0 50G 0 disk
sdc 8:32 0 50G 0 disk
sdd 8:48 0 50G 0 disk
sr0 11:0 1 1024M 0 rom
sr1 11:1 1 376K 0 rom
zram0 252:0 0 1.9G 0 disk [SWAP]
Создание нового раздела¶
-
Используя
fdisk
, создайте новый раздел на устройстве/dev/sdc
. Введитеn
, чтобы создать новый раздел:[root@weathered-firefly-vs ~]# fdisk /dev/sdc Welcome to fdisk (util-linux 2.36). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0x58db5961. Command (m for help): n
-
Теперь выберите
p
, чтобы создать новый основной раздел.Примечание
В вашей системе может быть только 4 основных раздела на этом диске. Если вы уже достигли этого предела, создайте расширенный раздел.
-
Выберите номер раздела и его первый и последний секторы, если вы нажмете
Enter
, то по умолчанию новый раздел будет использовать все доступное дисковое пространство. -
Наконец, вам нужно записать разделы на диск с помощью команды
w
.Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.
Проверьте, был ли создан раздел с помощью команды
lsblk
.[root@weathered-firefly-vs ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 50G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 49G 0 part ├─fedora-root 253:0 0 98G 0 lvm / └─fedora-swap 253:1 0 1G 0 lvm [SWAP] sdb 8:16 0 50G 0 disk └─sdb1 8:17 0 50G 0 part └─fedora-root 253:0 0 98G 0 lvm / sdc 8:32 0 50G 0 disk └─sdc1 8:33 0 50G 0 part sdd 8:48 0 50G 0 disk sr0 11:0 1 1024M 0 rom sr1 11:1 1 376K 0 rom zram0 252:0 0 1.9G 0 disk [SWAP]
Расширение физического тома¶
Расширение физического тома, группы томов, логического тома и файловой системы XFS с помощью нового раздела.
-
Сначала введите команду
df -hT
и выберите из списка системный раздел, который вы хотите расширить.
Например,/dev/mapper/fedora-root
.[root@weathered-firefly-vs ~]# df -hT Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm tmpfs tmpfs 786M 1000K 785M 1% /run /dev/mapper/fedora-root xfs 98G 2.8G 96G 3% / tmpfs tmpfs 2.0G 4.0K 2.0G 1% /tmp /dev/sda1 xfs 1014M 248M 767M 25% /boot tmpfs tmpfs 393M 4.0K 393M 1% /run/user/0
-
С помощью команды
pvs
вы можете узнать, как называется ваш физический том. СтолбецPFree
показывает количество свободного места. -
Теперь создайте физический том как основу для вашего LVM. Здесь
/dev/sdc1
- это созданный раздел. -
С помощью команды
vgs
вы можете узнать, как называется ваша группа томов. СтолбецVFree
показывает количество свободного места. -
Затем расширите эту группу томов
Fedora
, добавив к ней новый физический том с помощью командыvgextend
, проверьте, можно ли применить изменения снова с помощью командыvgs
. -
С помощью команды
lvs
вы можете узнать, как называется ваша группа томов. -
Чтобы расширить логический том, выполните команду:
lvextend
.[root@weathered-firefly-vs ~]# lvextend -l +100%FREE /dev/mapper/fedora-root Size of logical volume fedora/root changed from 97.99 GiB (25086 extents) to <147.99 GiB (37885 extents). Logical volume fedora/root successfully resized. [root@weathered-firefly-vs ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root fedora -wi-ao---- <147.99g swap fedora -wi-ao---- 1.00g
-
Наконец, измените размер файловой системы
XFS
на логический том с помощью командыxfs_growfs
. Если вы используете файловую системуext4
, используйте утилитуresize2fs
.[root@weathered-firefly-vs ~]# df -hT /dev/mapper/fedora-root Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/fedora-root xfs 98G 2.8G 96G 3% / [root@weathered-firefly-vs ~]# xfs_growfs / meta-data=/dev/mapper/fedora-root isize=512 agcount=15, agsize=1834752 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1 data = bsize=4096 blocks=25688064, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1 log =internal log bsize=4096 blocks=3583, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 25688064 to 38794240
Выполните
df -hT
, чтобы убедиться, что для виртуальной машины доступен новый размер диска.
Расширение корневого раздела Ubuntu Server¶
Подходит для 18.04 LTS и 20.04 LTS
> \# growpart /dev/sda/ 3
> \# pvresize /dev/sda3/
> \# lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv/
> \# resize2fs /dev/ubuntu-vg/ubuntu-lv/
Расширение корневого раздела Ubuntu Desktop 20.04 LTS¶
> \# growpart /dev/sda/ 2
> \# growpart /dev/sda/ 5
> \# pvresize /dev/sda5/
> \# lvextend -l +100%FREE /dev/mapper/vgubuntu-root/
> \# resize2fs /dev/vgubuntu/root/