LINUX.ORG.RU

Расширение XFS


0

0

Есть раздел c XFS, смонтированный в /home, за ним идет неразмеченая область. Попробовал расширить так:

# xfs_growfs /home

Ничего не расширило, ошибок тоже не выдало.

Что я сделал не так?

Ответ на: комментарий от red1ynx

А нет, скорее всего не расширен:

...
/dev/sda4 2798 14593 94751370 5  Extended
/dev/sda5 2798 10786 64027026 83 Linux
/home смонтирован на /dev/sda5

Подскажите, как меньшей кровью расширить раздел (:

red1ynx
() автор топика
Ответ на: комментарий от red1ynx

1. fdisk /dev/sda
2. удаляем раздел sda5
3. создаем его снова, при этом
а) указав ту же самую начальную дорожку (fdisk предложит ее по умолчанию)
б) и при этом максимального размера (fdisk также предложит по умолчанию)
4. выход из fdisk с сохранением
5. reboot (необходимо!)
6. xfs_growfs
Задача решена.
Ну или использовать gparted.
А еще правильней впредь использовать LVM

Nastishka ★★★★★
()
Ответ на: комментарий от linuxfan

Если с LiveCD запустить, то нет опции grow. Если просто запустить - не могу отмонтировать /home.

Или там надо что-то с LVM делать?

red1ynx
() автор топика
Ответ на: комментарий от red1ynx

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

Nastishka ★★★★★
()
Ответ на: комментарий от red1ynx

Или ничего не затрет?

Все сведения о границах разделов хранятся в служебном секторе в начале диска (=

GotF ★★★★★
()
Ответ на: комментарий от red1ynx

Сделаю на всякий случай бэкап.

Это надо делать на регулярной основе.

GotF ★★★★★
()
Ответ на: комментарий от Nastishka

Nastishka, спасибо, помогло (:

Еще добавлю, что после этих операций запустил xfs_fsr.

red1ynx
() автор топика
Ответ на: комментарий от tensai_cirno

> не нужно, оно само.

При исправлении таблицы разделов, когда таблица разделов занята (то есть хотя-бы один раздел смонтирован) - нужно.

Nastishka ★★★★★
()
Ответ на: комментарий от tensai_cirno
# 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): p

Disk /dev/sda: 122.9 GB, 122942324736 bytes
255 heads, 63 sectors/track, 14946 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: 0x3f3b3f3a

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1       14946   120053713+  83  Linux

Command (m for help): d
Selected partition 1

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-14946, default 1): 
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-14946, default 14946): 
Using default value 14946

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.
# partprobe 
Warning: WARNING: the kernel failed to re-read the partition table on /dev/sda (Device or resource busy).  As a result, it may not reflect all of your changes until after reboot.
Warning: WARNING: the kernel failed to re-read the partition table on /dev/sdb (Device or resource busy).  As a result, it may not reflect all of your changes until after reboot.
Warning: WARNING: the kernel failed to re-read the partition table on /dev/sdc (Device or resource busy).  As a result, it may not reflect all of your changes until after reboot.
# 

Ну-ну, попробуй, поучи меня еще чему-нибудь, Оби-Ван :-)

Nastishka ★★★★★
()
Ответ на: комментарий от Nastishka

>Ну-ну, попробуй, поучи меня еще чему-нибудь, Оби-Ван :-)

Ты даже читать не умеешь похоже. :p

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)



В крайнем случае можно пнуть udev, он всё обновит. Это в этих ваших икспишечках после каждого действия надо перезагружаться. В линупсе только если драйвер упал в виде зомби. Хотя kexec должен помочь.

tensai_cirno ★★★★★
()
Ответ на: комментарий от tensai_cirno

В ядре в blk_dev остается записан старый размер раздела, и пока он не обновится, любая операция за границами устройства каким его считает ядро, приведет к ошибке. А обновится разме только после соответствующего ioctl, который сейчас сваливается по busy.

В крайнем случае можно пнуть udev, он всё обновит

udev вообще сугубо юзрспейсовый демон, а busy сидит в ядре. Знаете, достопочтенный учитель Оби-Ван, вам походу надо от старческого маразма подлечиться :-)

Nastishka ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.