Re reading the partition table failed with error 16 device or resource busy

Oracle Linux 6 : ‘partprobe’ command shows «WARNING: the kernel failed to re-read the partition table on /dev/sdd (Device or resource busy)» . (Doc ID 2308515.1) Last updated on MAY 13, 2020 Applies to: Symptoms On Oracle Linux 6, after the LVM disk space and underlying storage has been extended up to few a […]

Содержание

  1. Oracle Linux 6 : ‘partprobe’ command shows «WARNING: the kernel failed to re-read the partition table on /dev/sdd (Device or resource busy)» . (Doc ID 2308515.1)
  2. Applies to:
  3. Symptoms
  4. Changes
  5. Cause
  6. To view full details, sign in with your My Oracle Support account.
  7. Don’t have a My Oracle Support account? Click to get started!
  8. Cannot expand VMDK in CentOS VM: Re-reading the partition table failed, error 16
  9. Ensure AV Gear Plays Nice on the Corporate Network
  10. 2 Replies
  11. Read these next.
  12. poor wifi, school’s third floor
  13. Need help crafting a job posting for an IT Pro
  14. Snap! — AI Eye Contact, Mine Batteries, Headset-free Metaverse, D&D Betrayal
  15. Spark! Pro series – 13th January 2023
  16. sr_maks
  17. привет из хайтек
  18. Расширение дисков CentOS 7
  19. KVM: Как увеличить/уменьшить размер диска виртуальной машины?
  20. Увеличение диска виртуальной машины KVM
  21. Расширение виртуального диска со стороны KVM
  22. Расширение раздела в виртуальной машине с Linux CentOS
  23. Увеличение диска в гостевой Windows Server
  24. Как уменьшить размер виртуального диска в KVM?
  25. Уменьшение KVM диска с помощью утилиты qemu
  26. Уменьшение виртуального диска с подменой образа
  27. Форматы дисков KVM и сжатие диска в qcow2 формате

Oracle Linux 6 : ‘partprobe’ command shows «WARNING: the kernel failed to re-read the partition table on /dev/sdd (Device or resource busy)» . (Doc ID 2308515.1)

Last updated on MAY 13, 2020

Applies to:

Symptoms

On Oracle Linux 6, after the LVM disk space and underlying storage has been extended up to few a gigabytes, subsequently trying to extend the same LVM is unsuccessful after a new partition has been created.

The command ‘partprobe’ is unable to run and attempting an online resize and extending the partition which is mounted as Ext4 filesystem fails as in the example below:

After successfully creating PV and VG mounted the FS/volume group. Then created New Partition as /dev/sdd3 and then tried partprobe with old File System mounted :

——— New partition /dev/sdd3 is not reflected ———

Changes

Cause

To view full details, sign in with your My Oracle Support account.

Don’t have a My Oracle Support account? Click to get started!

In this Document

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.

Oracle offers a comprehensive and fully integrated stack of cloud applications and platform services. For more information about Oracle (NYSE:ORCL), visit oracle.com. пїЅ Oracle | Contact and Chat | Support | Communities | Connect with us | | | | Legal Notices | Terms of Use

Источник

Cannot expand VMDK in CentOS VM: Re-reading the partition table failed, error 16

I expanded the VMDK from 60 to 120 GBs but the guest OS isn’t having it. I can see Partition 2 get set to the size of 119, but then I get this error in fdisk:

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)

The «error 16: Device or resource busy» suggested I need to umount sda, but it is not mounted:

Here’s the full output:

Any ideas on this? TIA

Ensure AV Gear Plays Nice on the Corporate Network

If it’s already telling you to reboot to reload the partition table (this happens sometimes on older Linux systems/older kernels) then this procedure I wrote about a while probably won’t work either but it’s worth a shot, see if you can trigger a rescan.

Rather than manually editing partitions with fdisk, you can use newer tools such as «growpart» as well which take away some of the guesswork and accidentally getting the sectors wrong with typos of math errors.

If it’s already telling you to reboot to reload the partition table (this happens sometimes on older Linux systems/older kernels) then this procedure I wrote about a while probably won’t work either but it’s worth a shot, see if you can trigger a rescan.

Rather than manually editing partitions with fdisk, you can use newer tools such as «growpart» as well which take away some of the guesswork and accidentally getting the sectors wrong with typos of math errors.

Thank you, GerardBeekmans ​! Not sure why, but I ran my final 3x commands (from the SuperUser post) and it worked:

  • local_offer Tagged Items
  • GerardBeekmans

This topic has been locked by an administrator and is no longer open for commenting.

To continue this discussion, please ask a new question.

Read these next.

poor wifi, school’s third floor

I work as a help desk technician at a high school for a school district. Teachers/students on the building’s third floor have been reporting poor wifi, with their Chromebooks/laptops etc experiencing slow connectivity and random disconnections. We hav.

Need help crafting a job posting for an IT Pro

I’d really appreciate some thoughts and advice. I’m looking to hire an IT pro to be our resident go-to for all things IT (device support, SQL Server, network admin, etc) but who also is interested in learning — or even has some experience in — the.

Snap! — AI Eye Contact, Mine Batteries, Headset-free Metaverse, D&D Betrayal

Your daily dose of tech news, in brief. Welcome to the Snap! Flashback: January 13, 1874: Adding Machine Patented (Read more HERE.) Bonus Flashback: January 13, 1990: Astronauts awakened to the song Attack of the Killer Tomatoes (Read mor.

Spark! Pro series – 13th January 2023

Happy Friday the 13th! This day has a reputation for being unlucky, but I hope that you’ll be able to turn that around and have a great day full of good luck and good fortune. Whether you’re superstitious or not, .

Источник

sr_maks

привет из хайтек

После создания fdisk нового раздела сообщение:

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks
.

Это означает, что созданный раздел будет недоступен для манипуляций с ним.

Например — fdisk показывает наличие созданного раздела, но создание файловой структуры ни в какую:
fdisk -l

Disk /dev/sda: 298.9 GB, 298999349248 bytes
255 heads, 63 sectors/track, 36351 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 25 200781 83 Linux
/dev/sda2 26 2636 20972857+ 83 Linux
/dev/sda3 2637 3158 4192965 82 Linux swap / Solaris
/dev/sda4 3159 36351 266622772+ 83 Linux

mkfs.ext3 /dev/sda4
mke2fs 1.39 (29-May-2006)
Could not stat /dev/sda4 — No such file or directory

The device apparently does not exist; did you specify it correctly?

Для решения данной проблемы без перезагрузки — partprobe.
partprobe

mkfs.ext3 /dev/sda4
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
33341440 inodes, 66655693 blocks
3332784 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
2035 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information:
done

This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

Источник

Расширение дисков CentOS 7

Появилась необходимость увеличения размера виртуальных дисков на виртуальной машине с CentOS 7. Задача простая, но все мануалы которые находятся поиском в google почему-то не работают. На деле всё достаточно просто, делается буквально несколькими командами.

Итак, имеется два виртуальных диска, системный – 16Gb, смонтированный – 5Gb. Смотрим список всех разделов, их размеры и процент использования

Средствами гипервизора увеличиваем размеры дисков, системный – 20Gb, смонтированный – 15Gb.

Смотрим таблицы разделов

Размеры дисков увеличились, осталось увеличить размеры разделов. Сначала изменим смонтированный диск – в конкретном случае sdb1. Первым делом размонтируем его, потом удалим имеющийся раздел (данная операция не затрагивает хранящиеся данные на диске) и создадим его заново большего размера

Монтируем диск обратно, перечитаем таблицу разделов и проверяем размер интересующего раздела

Теперь вторая половина задания, увеличим системный раздел – в текущей конфигурации sda3. Смотрим таблицу разделов, удаляем нужный, создаём его заново – большего размера

Как видно – перечитать таблицу разделов не удалось, т.к. раздел используется системой. Для внесения изменений необходима перезагрузка операционной системы. После перезагрузки осталось расширить раздел

Проблема в том, что resize2fs умеет работать только с ext2-4 файловыми системами, а CentOS7 по умолчанию создаёт разделы в файловой системе xfs. Решением является использование команды xfs_growfs

В результате получилось увеличить раздел sda3 с 14Gb до 19Gb, а монтируемый раздел sdb1 с 4,8Gb до 15Gb.

Источник

KVM: Как увеличить/уменьшить размер диска виртуальной машины?

В этой статье мы поговорим об изменении размера дисков виртуальной машины KVM, рассмотрим используемые форматы виртуальных дисков. Покажем, как правильно увеличить диск виртуальной машины в гипервизоре KVM на Linux без потери данных, а также обсудим варианты уменьшения размеров дисков.

Увеличение диска виртуальной машины KVM

Расширение виртуального диска со стороны KVM

Для того, чтобы проводить работы с диском, виртуальная машина должна быть отключена, иначе мы не сможем что-либо сделать. Рассмотрим пример с увеличением диска размер которого изначально был 20Гб.

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

qemu-img info /путь_до_диска

Вывод команды будет примерно такой:

Мы видим, что у нас есть два поля которые указывают на размер, это virtual_size и disk_size:

  • virtual_size – размер виртуального диска, указанный при создании или расширении диска (в этом примере максимальный размер диска – 20 Гб);
  • disk_size — размер файла диска в текущий момент, т.е. сколько сейчас занимает образ диска места на физическом сервере (относится только к формату qcow). В нашем пример виртуальный диск занимает всего 1,6 Гб на хранилище.

И сразу о форматах. Я рекомендую при создании виртуальных машин на KVM использовать формат диска qcow2, а не raw. Чуть позже я объясню почему.

Следующим шагом расширим диск виртуальной машины, на 5Gb (для корректного расширения диска у виртуальной машины не должно быть снапшотов!).
# qemu-img resize /путь до диска +5G

Если сразу проверить вывод информации об образе диска, мы увидим, что он расширился:

# qemu-img info /путь_до_диска

Часть работы мы сделали, но требуется и проведение работ со стороны виртуальной машины в гостевой ОС. Далее мы покажем, как увеличить размер диска в гостевых CentOS 7 и Windows Server 2012.

Расширение раздела в виртуальной машине с Linux CentOS

После расширения диска со стороны сервера, нужно запустить виртуальную машину и подключиться к ней по ssh. Все работы будут проводиться с помощью утилиты управления разделами жестких дисков fdisk.

После подключения к серверу, проверяем наличие нашего дополнительно подключенного места:

На скриншоте видно, раздел /dev/vda2 имеет размер 20Gb, а доступное место на диске у нас больше.

Подправим этот момент и расширим раздел /dev/vda2 до максимального объема:

После чего нам нужно сделать рестарт виртуальной машины и выполнить команду для применения расширения диска:

В итоге мы получили расширенный раздел /dev/vda2. Теперь по порядку, что именно мы сделали:

  • fdisk /dev/vda — запустили утилиту fdisk подключившись к разделу /dev/vda
  • /d — удаляем раздел, по умолчанию это раздел 2 который нам и нужен, поэтому в следующем пункте жмем просто Enter
  • /n – создаем новый раздел, в следующем пункте так же просто жмем Enter или вводим p, далее Enter так как создаваемый раздел по умолчанию будет 2.
  • При указании первого и последнего сектора так же жмем просто Enter, если мы хотим расширить раздел до максимума, если вы хотите указать конкретный размер, в последнем секторе указывайте размер диска как указано в меню +size Размер не может быть меньше, чем был ранее!
  • /w — применяем наши настройки.

После перезагрузки проверим диск командой:

В некоторых источниках для выполнения данной процедуры указывают команду:

Но с файловой системой xfs это не работает!

Работы по расширению диска на виртуальной машине с ОС CentOS 7 закончены.

Увеличение диска в гостевой Windows Server

Подключаемся к виртуальной машине через rdp или VNC и выполняем работы по расширению диска.

Откройте Server Manager -> Tools -> Computer Management;

В открывшемся окне выбираем в меню Disk Management, после чего у вас должны отобразиться все ваши диски и неразмеченное пространство, которые мы добавили со стороны гипервизора KVM;

Выбираем нужный диск и нажимаем Extended Volume;

По умолчанию для увеличения размера диска будет предложено все доступное место;

Нажимаем «далее» и завершаем расширение. После данной процедуры, ваш раздел в системе должен будет расшириться;

Хотелось бы добавить, что перед процедурой расширения диска для виртуальной машины, я советую выполнять резервное копирование самого диска. Остановите виртуальную машину и скопируйте образ диска в директорию для бэкапа или в любую директорию, в которой есть свободное место. Если в ходе работ, что-то пойдет не так, вы всегда сможете вернуть образ виртуального диска из бэкапа.

Как уменьшить размер виртуального диска в KVM?

В своей работе, ранее я довольно часто сталкивался с данным вопросом, но к сожалению, безболезненно уменьшить диск на виртуальной машине в KVM нельзя! Единственный приемлемый размер уменьшения размер диска виртуальной машины KVM на физическом хранилище – его сжатие через конвертацию.

В интернете фигурирует много статей, якобы благодаря которым вы можете уменьшить размер диска на виртуальной машине, но это не работает.

Я приведу несколько примеров, на которые я натыкался и которые лично мною были проверены.

Уменьшение KVM диска с помощью утилиты qemu

На ряде ресурсов описаны действия, выполняемые с помощью утилиты qemu. В них предлагается уменьшить размер диска виртуальной машины с помощью команды:

qemu-img resize /путь_до_диска -5G — уменьшаем диск на 5G

Или такой вариант с указанием конкретного размера:

qemu-img resize /путь_до_диска 25G — указываем размер диска в 25G

Что происходит после выполнения данной команды? Запускаем сервер и конечно система не грузится:

Я пробовал сначала уменьшить раздел из-под системы с помощью утилиты fdisk, но в таком случае, система так же перестает загружаться, даже если вы пропустите шаг уменьшения диска с физического сервера и это логично. Раздел который мы уменьшаем, системный и соответственно ОС перестает загружаться, так как при уменьшении диска, информация по всей видимости уничтожается.

Уменьшение виртуального диска с подменой образа

Уже не такой распространенный в инструкциях вариант — это уменьшение диска, с подменой на старый. То есть, вы создаете новую виртуальную машину с нужным вам размером диска. После чего, подменяете старый образ диска в новый образ и судя по описанию статей в разных источниках, это работает. Я так же сделал проверку и это сломало файловую систему, как и в первом варианте. Я приведу пример команды:

virt-resize /старый_образ_диска /новый_образ_диска

Приводились так же варианты, с конвертацией диска с формата raw в формат qcow2, НО я изначально создаю машины в данном формате и объясню почему.

Форматы дисков KVM и сжатие диска в qcow2 формате

В самом начале статьи, я упомянул про эти два формата.

raw – в переводе «сырой». Преимущество формата, максимальная производительность, универсальность формата. Минусов масса, основные это:

  • Диск занимает все дисковое пространство на физическом сервере, которое ему выделили;
  • Нельзя создать снапшоты.

Qcow2 – это родной формат гипервизора QEMU, а так же QEMU-KVM. Это максимально удобный формат виртуального диска из всех поддерживаемых в KVM. Образ диска увеличивается по мере накопления данных на виртуальной машине, поддерживаются снапшоты.

Чем хорош формат qcow2? Вам в принципе не нужно уменьшать размер виртуального диска, так как диск занимает на сервере, ровно столько, сколько места там занято. Если же у вас данные на сервере постоянно перезаписываются и бывает такое, что диск «распух», его можно с легкостью сжать. Рассмотрим такой вариант. Я забью нулями некоторое дисковое пространство и после чего удалю файл:

dd if=/dev/zero of=/mytempfile
rm -rf /mytempfile

При проверке с сервера, образ диска сначала весил 2.4G после чего расширился до 5.9G:

# du -sh /путь_образа

# du -sh /путь_образа

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

Бэкапим файл диска, останавливаем виртуальную машину и после чего выполняем следующие действия:

qemu-img convert -O qcow2 /старый_образ /новый_образ

После чего можно проверить размеры двух дисков:

# du -sh /новый_диск

# du -sh /старый_диск

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

Контрольная проверка с сервера:

# du -sh /образ_диска

Способ рабочий. За все время его использования, ни разу файловая система на виртуальной машине не умирала. Но настоятельно рекомендую перед подобными работами, создавать копию диска, если не хотите потерять данные.

Это все, что я хотел в данной статье рассказать. Если у кого-то из посетителей сайта есть рабочий способ по уменьшению диска на KVM, именно уменьшения (не сжатие) и именно рабочий, предлагайте свои варианты и я обязательно их протестирую.

Источник

Issue

  • How to create a new partition in RHEL 7 without reboot ?
  • Disk /dev/sdX is being used for system partition, for example for /boot and / (root). How to create a new partion on it without rebooting the system.
  • While creating a new partition with fdisk command, following error is seen. However, partition gets created and could be used.
[root@hostname ~]# fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): p

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 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 label type: dos
Disk identifier: 0x0004886a

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     1026047      512000   83  Linux
/dev/sda2         1026048    23570431    11272192   8e  Linux LVM

Command (m for help): n
Partition type:
   p   primary (2 primary, 0 extended, 2 free)
   e   extended
Select (default p): p
Partition number (3,4, default 3): 3
First sector (23570432-41943039, default 23570432): 
Using default value 23570432
Last sector, +sectors or +size{K,M,G} (23570432-41943039, default 41943039): +2G
Partition 3 of type Linux and of size 2 GiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy. <--------
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
[root@hostname ~]# partprobe 
[root@hostname ~]# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 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 label type: dos
Disk identifier: 0x0004886a

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     1026047      512000   83  Linux
/dev/sda2         1026048    23570431    11272192   8e  Linux LVM
/dev/sda3        23570432    27764735     2097152   83  Linux

[root@hostname ~]# pvcreate /dev/sda3
  Physical volume "/dev/sda3" successfully created
[root@hostname ~]# pvs
  PV         VG               Fmt  Attr PSize  PFree
  /dev/sda2  rhel_hostname    lvm2 a--  10.75g 4.00m
  /dev/sda3                   lvm2 a--   2.00g 2.00g
  • For RHEL 6, when the above mentioned error is seen, the partition table was not read by partprobe.

Environment

  • Red Hat Enterprise Linux 7

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

I expanded the VMDK from 60 to 120 GBs but the guest OS isn’t having it. I can see Partition 2 get set to the size of 119, but then I get this error in fdisk:

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)

I’m running my steps exactly from my old SU post here (from the last time I did this exact procedure): 
https://superuser.com/questions/1449834/cannot-seem-to-expand-dev-mapper-centos-root-lv-in-centos-7-… Opens a new window

The «error 16: Device or resource busy» suggested I need to umount sda, but it is not mounted:

Here’s the full output:

BASH

root@CentOS-7:~# fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): d
Partition number (1,2, default 2):
Partition 2 is deleted

Command (m for help): p

Disk /dev/sda: 128.8 GB, 128849018880 bytes, 251658240 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 label type: dos
Disk identifier: 0x000b14c7

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux

Command (m for help): n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p):
Using default response p
Partition number (2-4, default 2):
First sector (2099200-251658239, default 2099200):
Using default value 2099200
Last sector, +sectors or +size{K,M,G} (2099200-251658239, default 251658239):
Using default value 251658239
Partition 2 of type Linux and of size 119 GiB is set

Command (m for help): t
Partition number (1,2, default 2):
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'

Command (m for help): wq
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)

root@CentOS-7:~# umount /dev/sda
umount: /dev/sda: not mounted

В предыдущем посте я писал о проблеме неправильно распределённого ЖД и уменьшении размера с корневой директорией. На этот раз раберёмся с LVM (по мотивам этой статьи).

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

После предыдущих экспериментов мне достались следующие разделы:

> sudo fdisk -lc /dev/sda

Disk /dev/sda: 17.2 GB, 17179869184 bytes

255 heads, 63 sectors/track, 2088 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00049f1f

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1         263     2109440   83  Linux

/dev/sda2            1998        2089      731137    5  Extended

/dev/sda3             263        1998    13934591   83  Linux

/dev/sda5            1998        2089      731136   82  Linux swap / Solaris

Partition table entries are not in disk order

Для чистоты эксперимента, я смело могу удалять всё, кроме sda1.

Для начала отключим существующий swap (для начала проверим состояние):

> cat /proc/swaps

Filename                                Type            Size    Used    Priority

/dev/sda5                               partition       731128  0       -1

Всё нормально, в swap нет данных, можно отключать:

> sudo swapoff /dev/sda5

Проверяем, действительно ли отключен (следующая команда аналогична cat /proc/swaps):

> swapon -s             

Filename                                Type            Size    Used    Priority

Удаляем из файла /etc/fstab строку:
UUID=4771bdd4-e219-4b8f-920a-9d5460b47ff6 none            swap    sw              0       0

Удаляем разделы:

> sudo fdisk  /dev/sda 

WARNING: DOS-compatible mode is deprecated. It’s strongly recommended to

         switch off the mode (command ‘c’) and change display units to

         sectors (command ‘u’).

Command (m for help): c

DOS Compatibility flag is not set

Command (m for help): u

Changing display/entry units to sectors

Command (m for help): d

Partition number (1-5): 2

Command (m for help): d

Partition number (1-4): 3

Command (m for help): p

Disk /dev/sda: 17.2 GB, 17179869184 bytes

255 heads, 63 sectors/track, 2088 cylinders, total 33554432 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: 0x00049f1f

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048     4220927     2109440   83  Linux

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Устройство или ресурс занято.

The kernel still uses the old table. The new table will be used at

the next reboot or after you run partprobe(8) or kpartx(8)

Syncing disks.

Для того, чтобы изменения вступили в силу, необходимо перезагрузиться.

Всю не размеченную область я отдам под LVM:

> sudo fdisk /dev/sda  

[sudo] password for sabo: 

WARNING: DOS-compatible mode is deprecated. It’s strongly recommended to

         switch off the mode (command ‘c’) and change display units to

         sectors (command ‘u’).

Command (m for help): c

DOS Compatibility flag is not set

Command (m for help): u

Changing display/entry units to sectors

Command (m for help): p

Disk /dev/sda: 17.2 GB, 17179869184 bytes

189 heads, 54 sectors/track, 3287 cylinders, total 33554432 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: 0x00049f1f

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048     4220927     2109440   83  Linux

Command (m for help): n

Command action

   e   extended

   p   primary partition (1-4)

p

Partition number (1-4): 2

First sector (4220928-33554431, default 4220928): 

Using default value 4220928

Last sector, +sectors or +size{K,M,G} (4220928-33554431, default 33554431): 

Using default value 33554431

Command (m for help): t

Partition number (1-4): 2

Hex code (type L to list codes): 8e

Changed system type of partition 2 to 8e (Linux LVM)

Command (m for help): p

Disk /dev/sda: 17.2 GB, 17179869184 bytes

189 heads, 54 sectors/track, 3287 cylinders, total 33554432 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: 0x00049f1f

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048     4220927     2109440   83  Linux

/dev/sda2         4220928    33554431    14666752   8e  Linux LVM

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Устройство или ресурс занято.

The kernel still uses the old table. The new table will be used at

the next reboot or after you run partprobe(8) or kpartx(8)

Syncing disks.

Обратите внимание, что я установил тип раздела 8e (Linux LVM).

Теперь необходимо установить ПО для работы с LVM:

> sudo aptitude install lvm2

Следующие НОВЫЕ пакеты будут установлены:        

  lvm2 

0 пакетов обновлено, 1 установлено новых, 0 пакетов отмечено для удаления, и 0 пакетов не обновлено.

Необходимо получить 448 kB архивов. После распаковки 1 077 kB будет занято.

Получено 448 kБ в 1с (309 kБ/с)

Выбор ранее не выбранного пакета lvm2.

(Чтение базы данных … на данный момент установлено 39064 файла и каталога.)

Распаковывается пакет lvm2 (из файла …/lvm2_2.02.66-5_amd64.deb)…

Обрабатываются триггеры для man-db …

Настраивается пакет lvm2 (2.02.66-5) …

Setting up LVM Volume Groups  Reading all physical volumes.  This may take a while…

  No volume groups found

  No volume groups found

  No volume groups found

.

update-initramfs: deferring update (trigger activated)

Обрабатываются триггеры для initramfs-tools …

update-initramfs: Generating /boot/initrd.img-2.6.32-5-amd64

Перезагружаемся.

> sudo fdisk -lc /dev/sda

Disk /dev/sda: 17.2 GB, 17179869184 bytes

255 heads, 63 sectors/track, 2088 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00049f1f

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1         263     2109440   83  Linux

/dev/sda2             263        2089    14666752   8e  Linux LVM

Раздел по LVM создан — осталось настроить сам LVM.

Сначала инициализируем созданный раздел:

> sudo pvcreate /dev/sda2

  Physical volume «/dev/sda2» successfully created

Создаём группу томов (я назову её server):

> sudo vgcreate server /dev/sda2

  Volume group «server» successfully created

Посмотрим, что получилось:

> sudo vgscan

  Reading all physical volumes.  This may take a while…

  Found volume group «server» using metadata type lvm2

Активируем созданный LVM:

> sudo vgchange -ay

  0 logical volume(s) in volume group «server» now active

И начинаем создавать логические диски:

> sudo lvcreate -L 1G -n swap server

  Logical volume «swap» created

> sudo lvcreate -L 1G -n tmp server 

  Logical volume «tmp» created

> sudo lvcreate -L 1G -n root server

  Logical volume «root» created

> sudo lvcreate -L 2G -n home server

  Logical volume «home» created

> sudo lvcreate -L 2G -n usr server 

  Logical volume «usr» created

> sudo lvcreate -L 2G -n srv server

  Logical volume «srv» created

Смотрим, что получилось:

> sudo lvscan 

  ACTIVE            ‘/dev/server/swap’ [1,00 GiB] inherit

  ACTIVE            ‘/dev/server/tmp’ [1,00 GiB] inherit

  ACTIVE            ‘/dev/server/root’ [1,00 GiB] inherit

  ACTIVE            ‘/dev/server/home’ [2,00 GiB] inherit

  ACTIVE            ‘/dev/server/usr’ [2,00 GiB] inherit

  ACTIVE            ‘/dev/server/srv’ [2,00 GiB] inherit

Итого мы создали 6 новых разделов.

> sudo pvscan

  PV /dev/sda2   VG server   lvm2 [13,98 GiB / 4,98 GiB free]

  Total: 1 [13,98 GiB] / in use: 1 [13,98 GiB] / in no VG: 0 [0   ]

Но при этом у нас осталось почти 5 Гб неразмеченного пространства. LVM позволяет гибко изменять разделы томов, т.ч. оставлю его в резерве.

Форматируем разделы:

> sudo mkfs.ext4 /dev/server/home

mke2fs 1.41.12 (17-May-2010)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

131072 inodes, 524288 blocks

26214 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=536870912

16 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks: 

        32768, 98304, 163840, 229376, 294912

Writing inode tables: done                            

Creating journal (16384 blocks): done

Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 27 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

> sudo mkfs.ext4 /dev/server/root 

mke2fs 1.41.12 (17-May-2010)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

65536 inodes, 262144 blocks

13107 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=268435456

8 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks: 

        32768, 98304, 163840, 229376

Writing inode tables: done                            

Creating journal (8192 blocks): done

Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 22 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

> sudo mkfs.ext4 /dev/server/srv 

mke2fs 1.41.12 (17-May-2010)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

131072 inodes, 524288 blocks

26214 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=536870912

16 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks: 

        32768, 98304, 163840, 229376, 294912

Writing inode tables: done                            

Creating journal (16384 blocks): done

Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 22 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

> sudo mkfs.ext4 /dev/server/tmp 

mke2fs 1.41.12 (17-May-2010)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

65536 inodes, 262144 blocks

13107 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=268435456

8 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks: 

        32768, 98304, 163840, 229376

Writing inode tables: done                            

Creating journal (8192 blocks): done

Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 34 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

> sudo mkfs.ext4 /dev/server/usr 

mke2fs 1.41.12 (17-May-2010)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

131072 inodes, 524288 blocks

26214 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=536870912

16 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks: 

        32768, 98304, 163840, 229376, 294912

Writing inode tables: done                            

Creating journal (16384 blocks): done

Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 36 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

Форматируем swap:

> sudo mkswap -f /dev/server/swap

Setting up swapspace version 1, size = 1048572 KiB

no label, UUID=13ad3312-8b76-4018-8e3e-6cbbc94a807f

Мне пришлось использовать аргумент -f, т.к. вылезает ошибка «warning: don’t erase bootbits sectors on whole disk.».

В результате мы получили тома со следующими идентификаторами:

> sudo blkid 

/dev/sda1: UUID=»653ac5dc-ea55-4c75-be36-e54e26d078e1″ TYPE=»ext3″ 

/dev/sda2: UUID=»mkkLen-vzQr-KFRA-rJCe-h4dw-Irj8-GIfNsi» TYPE=»LVM2_member» 

/dev/mapper/server-swap: UUID=»13ad3312-8b76-4018-8e3e-6cbbc94a807f» TYPE=»swap» 

/dev/mapper/server-tmp: UUID=»19ab2a02-6ff2-4870-b834-f0c992f577d2″ TYPE=»ext4″ 

/dev/mapper/server-root: UUID=»854a4bc0-eb17-4639-b298-35f3367cbc83″ TYPE=»ext4″ 

/dev/mapper/server-home: UUID=»f971ccfb-4391-4ad0-bf49-885406800783″ TYPE=»ext4″ 

/dev/mapper/server-usr: UUID=»13e6e8a9-4aa8-467c-8995-fe3d52f1f8c6″ TYPE=»ext4″ 

/dev/mapper/server-srv: UUID=»b178a220-5548-44e6-ac81-4d7ec5dd1373″ TYPE=»ext4″

Прописываем swap:

В файл /etc/fstab добавляем следующую строчку:
UUID=13ad3312-8b76-4018-8e3e-6cbbc94a807f none            swap    sw              0       0

Запускаем swap:

> sudo swapon -va

swapon on /dev/mapper/server-swap

swapon: /dev/mapper/server-swap: found swap signature: version 1, page-size 4, same byte order

swapon: /dev/mapper/server-swap: pagesize=4096, swapsize=1073741824, devsize=1073741824

Смотрим, что получилось:

> cat /proc/swaps

Filename                                Type            Size    Used    Priority

/dev/dm-0                               partition       1048568 0       -1

Пробуем смонтировать ext4 раздел:

> sudo mount /dev/server/home /mnt

У меня раздел смонтирован успешно:

> mount

/dev/sda1 on / type ext3 (rw,errors=remount-ro)

tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)

proc on /proc type proc (rw,noexec,nosuid,nodev)

sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)

udev on /dev type tmpfs (rw,mode=0755)

tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)

devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)

Появилась необходимость увеличения размера виртуальных дисков на виртуальной машине с CentOS 7. Задача простая, но все мануалы которые находятся поиском в google почему-то не работают. На деле всё достаточно просто, делается буквально несколькими командами.

Итак, имеется два виртуальных диска, системный – 16Gb, смонтированный – 5Gb. Смотрим список всех разделов, их размеры и процент использования

[root@centos7 ~]# df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 14G 9.9G 3.4G 75% /
devtmpfs 898M 0 898M 0% /dev
tmpfs 912M 84K 912M 1% /dev/shm
tmpfs 912M 8.9M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sdb1 4.8G 3.9G 666M 86% /mnt/mailstore
/dev/sda1 297M 152M 146M 51% /boot
tmpfs 183M 12K 183M 1% /run/user/42
tmpfs 183M 0 183M 0% /run/user/0

Средствами гипервизора увеличиваем размеры дисков, системный – 20Gb, смонтированный – 15Gb.

Смотрим таблицы разделов

[root@centos7 ~]# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 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 label type: dos
Disk identifier: 0x000c45a0

Device Boot Start End Blocks Id System
/dev/sda1 * 2048 616447 307200 83 Linux
/dev/sda2 616448 3762175 1572864 82 Linux swap / Solaris
/dev/sda3 3762176 31457279 13847552 83 Linux

Disk /dev/sdb: 16.1 GB, 16106127360 bytes, 31457280 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 label type: dos
Disk identifier: 0x5d48b270

Device Boot Start End Blocks Id System
/dev/sdb1 2048 10485759 5241856 83 Linux

Размеры дисков увеличились, осталось увеличить размеры разделов. Сначала изменим смонтированный диск – в конкретном случае sdb1. Первым делом размонтируем его, потом удалим имеющийся раздел (данная операция не затрагивает хранящиеся данные на диске) и создадим его заново большего размера

[root@centos7 ~]# umount /mnt/mailstore/
[root@centos7 ~]# df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 14G 9.9G 3.4G 75% /
devtmpfs 898M 0 898M 0% /dev
tmpfs 912M 84K 912M 1% /dev/shm
tmpfs 912M 9.0M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 297M 152M 146M 51% /boot
tmpfs 183M 16K 183M 1% /run/user/42
tmpfs 183M 0 183M 0% /run/user/0

[root@centos7 ~]# fdisk /dev/sdb

Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): d
Selected partition 1
Partition 1 is deleted

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-31457279, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-31457279, default 31457279): 
Using default value 31457279
Partition 1 of type Linux and of size 15 GiB is set

Command (m for help): w
The partition table has been altered!

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

[root@centos7 ~]# resize2fs /dev/sdb1

resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/sdb1 is mounted on /mnt/mailstore; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 2
The filesystem on /dev/sdb1 is now 3931904 blocks long.

Монтируем диск обратно, перечитаем таблицу разделов  и проверяем размер интересующего раздела

[root@centos7 ~]# mount -t ext4 /dev/sdb1 /mnt/mailstore/
[root@centos7 ~]# /sbin/partprobe
[root@centos7 ~]# df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 14G 9.9G 3.4G 75% /
devtmpfs 898M 0 898M 0% /dev
tmpfs 912M 84K 912M 1% /dev/shm
tmpfs 912M 9.0M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 297M 152M 146M 51% /boot
tmpfs 183M 16K 183M 1% /run/user/42
tmpfs 183M 0 183M 0% /run/user/0
/dev/sdb1 15G 3.9G 11G 28% /mnt/mailstore

Теперь вторая половина задания, увеличим системный раздел – в текущей конфигурации sda3. Смотрим таблицу разделов, удаляем нужный, создаём его заново – большего размера

[root@centos7 ~]# fdisk /dev/sda

Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): p

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 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 label type: dos
Disk identifier: 0x000c45a0

Device Boot Start End Blocks Id System
/dev/sda1 * 2048 616447 307200 83 Linux
/dev/sda2 616448 3762175 1572864 82 Linux swap / Solaris
/dev/sda3 3762176 31457279 13847552 83 Linux

Command (m for help): d
Partition number (1-3, default 3): 3
Partition 3 is deleted

Command (m for help): n
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p): p
Partition number (3,4, default 3): 3
First sector (3762176-41943039, default 3762176): 
Using default value 3762176
Last sector, +sectors or +size{K,M,G} (3762176-41943039, default 41943039): 
Using default value 41943039
Partition 3 of type Linux and of size 18.2 GiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.

[root@centos7 ~]# /sbin/partprobe

Error: Partition(s) 3 on /dev/sda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use. As a result, the old partition(s) will remain in use. You should reboot now before making further changes.

Как видно – перечитать таблицу разделов не удалось, т.к. раздел используется системой. Для внесения изменений необходима перезагрузка операционной системы. После перезагрузки осталось расширить раздел

[root@centos7 ~]# resize2fs /dev/sda3

resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Bad magic number in super-block while trying to open /dev/sda3
Couldn't find valid filesystem superblock.

Проблема в том, что resize2fs умеет работать только с ext2-4 файловыми системами, а CentOS7 по умолчанию создаёт разделы в файловой системе xfs. Решением является использование команды xfs_growfs

[root@centos7 ~]# xfs_growfs /dev/sda3

meta-data=/dev/sda3 isize=512 agcount=4, agsize=865472 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=3461888, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 3461888 to 4772608

[root@centos7 ~]# df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 19G 9.9G 8.4G 55% /
devtmpfs 898M 0 898M 0% /dev
tmpfs 912M 84K 912M 1% /dev/shm
tmpfs 912M 8.9M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sdb1 15G 3.9G 11G 28% /mnt/mailstore
/dev/sda1 297M 152M 146M 51% /boot
tmpfs 183M 12K 183M 1% /run/user/42
tmpfs 183M 0 183M 0% /run/user/0

В результате получилось увеличить раздел sda3 с 14Gb до 19Gb, а монтируемый раздел sdb1 с 4,8Gb до 15Gb.

5 634

Понравилась статья? Поделить с друзьями:
  • Re error unbalanced parenthesis at position
  • Re error nothing to repeat at position 0
  • Re error multiple repeat at position 10
  • Re error invalid group reference 2 at position 1
  • Re ctr stick error