Команда Linux partprobe

Linux 命令大全Энциклопедия команд Linux


partprobe — это утилита в системах Linux, используемая для уведомления операционной системы о необходимости повторного чтения таблицы разделов. Когда вы изменяете таблицу разделов диска без перезагрузки системы, partprobe помогает ядру распознать эти изменения.


Зачем нужен partprobe

В системах Linux, когда вы используете такие инструменты, как fdisk или parted, для изменения разделов диска, эти изменения не сразу распознаются ядром. Традиционный подход — перезагрузить систему, но это часто неосуществимо в производственных средах. partprobe предоставляет способ заставить ядро повторно прочитать таблицу разделов без перезагрузки.


Синтаксис команды

partprobe [选项] [设备...]

Общие параметры

Опция Описание
-d Не обновлять ядро
-s Показать сводную информацию
-h Показать справочную информацию
-v Показать информацию о версии

Примеры использования

Базовое использование

Повторно прочитать таблицу разделов указанного диска:

sudo partprobe /dev/sda

Показать сводную информацию

sudo partprobe -s

Пример вывода:

/dev/sda: msdos partitions 1 2 3

Повторно прочитать таблицы разделов всех дисков

sudo partprobe

Как это работает

partprobe запускает повторное чтение таблицы разделов, отправляя в ядро запрос ioctl BLKRRPART. Этот процесс включает следующие шаги:

Пример

sequenceDiagram
User ->> partprobe: Выполнить команду
partprobe ->> Kernel: Отправить запрос BLKRRPART
Ядро ->> Драйвер диска: Повторное чтение таблицы разделов
Драйвер диска -->> Ядро: Возврат новой информации о разделах
Ядро -->> partprobe: Результат операции
partprobe -->> Пользователь: Отображение результата или ошибки

Примечания

  1. Требования к правам: partprobe обычно требует привилегий root
  2. Сценарии использования: В основном используется после изменения таблицы разделов с помощью инструментов для работы с разделами
  3. Альтернативы: Также можно использоватьblockdev --rereadptcommand
  4. Предупреждение о рисках: Неправильное использование может привести к нестабильности системы

ЧАВО

Вопрос: В чём разница между partprobe и partx?

Ответ: partprobe уведомляет ядро о необходимости повторного чтения всей таблицы разделов, тогда как partx позволяет более точно управлять добавлением или удалением конкретных разделов.

Вопрос: Почему мои разделы всё ещё не видны после запуска partprobe?

Ответ: Возможные причины включают:

  1. Изменения в таблице разделов не были правильно записаны на диск
  2. Устройство занято другим процессом
  3. Ядро не поддерживает новый тип раздела

Практические сценарии применения

Сценарий 1: Расширение физического тома LVM

Пример

# 1. Используйте fdisk, чтобы удалить старый раздел и создать новый раздел большего размера
sudo fdisk /dev/sdb

# 2. Заставьте ядро распознать новую таблицу разделов
sudo partprobe /dev/sdb

# 3. Расширьте физический том
sudo pvresize /dev/sdb1

Сценарий 2: Обработка после добавления нового раздела

Пример

# 1. Используйте parted, чтобы создать новый раздел
sudo parted /dev/sdc mkpart primary ext4 1GB 5GB

# 2. Уведомить ядро
sudo partprobe /dev/sdc

# 3. Отформатировать новый раздел
sudo mkfs.ext4 /dev/sdc1

Лучшие практики

  1. Сделайте резервную копию важных данных перед выполнением операций с разделами
  2. Используйтеlsblkилиfdisk -lчтобы проверить изменения разделов
  3. В производственных средах сначала проверьте схему разбиения на тестовой системе
  4. Рассмотрите возможность использования-sопции для предварительного просмотра сводной информации

Итог

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


Linux 命令大全Энциклопедия команд Linux

Другие расширения