Увеличение корневого дискового пространства

464
TorusGenusTwo

Я новичок в Linux, я хочу увеличить размер дискового пространства в fedora-root, и кажется, что в других файловых системах есть ~ 16 ГБ свободного места. Это правильная оценка? Ниже я приведу результат выполнения команд df и pvscan.

[lobster@localhost ~]$ df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 3.9G 0 3.9G 0% /dev tmpfs 3.9G 0 3.9G 0% /dev/shm tmpfs 3.9G 4.9M 3.9G 1% /run  tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/mapper/fedora-root 22G 20G 612M 98% / tmpfs 3.9G 144K 3.9G 1% /tmp /dev/sda1 976M 128M 782M 15% /boot tmpfs 797M 20K 797M 1% /run/user/42 tmpfs 797M 11M 787M 2% /run/user/1000  [lobster@localhost ~]$ sudo pvscan [sudo] password for lobster:  PV /dev/sda2 VG fedora lvm2 [24.00 GiB / 0 free] Total: 1 [24.00 GiB] / in use: 1 [24.00 GiB] / in no VG: 0 [0 ] 

Я узнаю, что этот вопрос похож на Нет больше места в корневой файловой системе, как я могу увеличить размер? Тем не менее, когда я запускаю решение из этой темы, я получаю следующее

[lobster@localhost ~]$ sudo lvextend --size +3.9G --resizefs /dev/fedora/root Rounding size to boundary between physical extents: 3.90 GiB. Insufficient free space: 999 extents needed, but only 0 available 

Пожалуйста, помогите мне понять в самых простых сроках, как я могу увеличить корни дискового пространства. Спасибо.

Изменить: Дополнительная информация

[lobster@localhost ~]$ sudo fdisk -l /dev/sda Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 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 Disklabel type: dos Disk identifier: 0x4bf237d2  Device Boot Start End Sectors Size Id Type /dev/sda1 2048 2099199 2097152 1G 83 Linux /dev/sda2 * 2099200 52426751 50327552 24G 8e Linux LVM 
2
tmpfs не дисковая файловая система. Свободное пространство * в * других файловых системах в любом случае не имеет значения. // Вместо этого предоставляем вывод `fdisk -l / dev / sda`. Не надейтесь, хотя, возможно, в вашем устройстве недостаточно физического пространства. Daniel B 5 лет назад 0
Я думаю, что это `lvm2 [24.00 GiB / 0 free]` объясняет все. У вас нет места на физическом диске. Alex 5 лет назад 0
@DanielB `[lobster @ localhost ~] $ sudo fdisk -l / dev / sda [sudo] пароль для лобстера: Диск / dev / sda: 25 ГиБ, 26843545600 байт, 52428800 секторов Единицы: секторы 1 * 512 = 512 байт Сектор размер (логический / физический): 512 байт / 512 байт Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт Тип метки диска: dos Идентификатор диска: 0x4bf237d2 Начало загрузки устройства Конец Секторов Размер Тип Id / dev / sda1 2048 2099199 2097152 1G 83 Linux / dev / sda2 * 2099200 52426751 50327552 24G 8e Linux LVM` TorusGenusTwo 5 лет назад 0

1 ответ на вопрос

1
Kamil Maciorowski

недоразумение

похоже, что в других файловых системах есть ~ 16 ГБ свободного места

Ну, если бы это доступное пространство было на диске (дисках), мог бы быть способ сделать то, что вы хотите; но devtmpfsи tmpfsхранить данные в оперативной памяти. Оперативная память нестабильна, вы не можете использовать ее для длительного хранения.

Даже если бы вы могли, эти 3.9Gзначения не добавляют. Базовые файловые системы берут из общего пула. Добавление файлов в один из них уменьшит пространство, доступное для других.


Слои абстракции

В вашем случае есть несколько уровней абстракции. Давайте назовем их (внешнее имя):

  • физическое устройство /dev/sda
    • разделы, среди которых тот, который используется LVM: /dev/sda2
      • виртуальное устройство, предоставляемое LVM: /dev/mapper/fedora-root
        • файловая система

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


обзор

Итак, что доступно для вас? Ваш /dev/sdaэто 52428800сектора 512байтов. Сектора пронумерованы от 0до 52428799. Среди них:

  • Сектор 0MBR.
  • Секторы 1- 2047вероятно, содержат (часть) ваш загрузчик. Вы не должны трогать их. В любом случае, это около 1 МиБ, а не значительное место.
  • Секторы 2048- 52426751это ваши два раздела. Мы вернемся к ним через минуту.
  • Секторы 52426752- 52428799вероятно, не используются. Еще 1 МиБ, почти ничего.

Запустите fdisk -lи lsblkпроверьте, доступны ли другие устройства. Это общий совет, я думаю, если бы они были там, вы бы знали.

Хорошо, как насчет /dev/sda2? Это Linux LVM, pvscanсказал вам, все пространство распределено. Подавляющее большинство этих сборок /dev/mapper/fedora-rootсодержит корневую файловую систему (смонтирована под /). Размер файловой системы составляет около 22 ГиБ. Это меньше, чем 24 ГиБ pvscan; Возможные причины:

  • LVM содержит ваш раздел подкачки, около 2 ГиБ (вероятно, запустится lvscanи swaponподтвердится);
  • или файловая система меньше /dev/mapper/fedora-rootвиртуального устройства (маловероятно);
  • другое (маловероятно).

Как насчет /dev/sda1? Он содержит файловую систему, смонтированную под /boot. Скорее всего, вам не нужен весь 1 ГиБ, он может быть меньше. Если вы уменьшите его, вы сможете создать новый раздел (например sda3), добавить его в LVM и развернуть корневую файловую систему. Если вы уменьшите его слишком сильно, вы столкнетесь с проблемами во время обновления ОС. Вы, вероятно, могли бы вытащить пару сотен MiB и избежать проблем в будущем, но

  • это всего несколько сотен МиБ;
  • если что-то пойдет не так, ваша ОС может не загрузиться.

Ваши варианты (резюме)

  1. Используйте ncduили аналогичный инструмент для идентификации больших файлов / каталогов в корневой файловой системе; думай, исследуй, можешь ли ты их удалить. Таким образом, возможно, вы сможете получить немного свободного места без изменения размера файловой системы.
  2. Сократите раздел подкачки (если есть) и перенастройте свой LVM, чтобы в конечном итоге расширить корневую файловую систему. Вы не рассказали нам о своем свопе, трудно сказать, сколько вы можете получить, или вообще есть ли в этом смысл. В общем, вам нужно некоторое количество пространства подкачки.
  3. Сократите файловую систему, смонтированную в данный момент как /boot(обсуждено выше).
  4. Физически подключите другое устройство (например /dev/sdb) и добавьте его или его раздел (ы) в LVM. Предоставленная вами информация заставляет меня поверить, что это единственный способ значительно увеличить вашу корневую файловую систему. Если речь идет о виртуальной машине, вы можете расширить существующее устройство /dev/sda(обычно это невозможно для действительно физического устройства) вместо добавления отдельного нового.

Заметки

  • Хорошо, что вы используете LVM. Это делает большинство из перечисленных выше вариантов проще.
  • Расширение самой файловой системы будет последним шагом. Я не знаю, что это за тип. Некоторые типы файловых систем ( ext4, btrfs) поддерживают онлайн-манипуляции; это означает, что вы можете расширить файловую систему, когда она смонтирована, что очень полезно для корневой файловой системы.
  • Для более подробного ознакомления (реальные команды и т. Д.) Нам нужно знать, какой вариант вы выберете. Охват их всех сделает вопрос и ответы очень широкими, вам также потребуется предоставить много дополнительной информации. Следовательно
    • (мета-примечание) Я предлагаю задать этот вопрос "какие у меня есть способы увеличения места на корневом диске?" После того, как вы примете решение, вы можете задать другой вопрос для деталей (или, возможно, уже есть подобный вопрос). Отсюда можно перейти к подробному вопросу позже.