Определите пустые необработанные диски NVMe SSD.

Вопрос или проблема

Пожалуйста, подтвердите, является ли это правильным способом идентификации необработанных NVMe SSD дисков, которые я могу использовать для форматирования и создания разделов файловой системы внутри.

Цель состоит в том, чтобы идентифицировать объемы дисков NVMe SSD, которые вообще не используются, и которые я могу использовать для хранения больших данных.

lsblk -b -I 259 -o NAME,FSTYPE,FSVER,LABEL,UUID,FSAVAIL,FSUSE%,MOUNTPOINTS,SIZE --json | \
jq -r '.blockdevices | sort_by(.size) | reverse | .[] | select(.children == null and .fstype == null) | select(.mountpoints[] | length == 0)'

Опции lsblk

  • -I 259 для выбора только NVMe SSD дисков.
  • -o NAME,FSTYPE,FSVER,LABEL,UUID,FSAVAIL,FSUSE%,MOUNTPOINTS,SIZE для перечисления столбцов.
  • -b для отображения размеров в байтах, а не в человеко-читаемом формате (например, 85G), чтобы иметь возможность сравнения по размеру.

Опции jq

  • .blockdevices | sort_by(.size) | reverse | .[] для сортировки NVMe дисков по размеру.
  • select(.children == null and .fstype == null) для выбора необработанного устройства без какого-либо форматирования.
  • select(.mountpoints[] | length == 0) для выбора устройств без текущих точек монтирования.

Ответ или решение

Чтобы обеспечить правильное использование NVMe SSD дисков в контексте их пустоты и готовности к форматированию и созданию файловых систем, необходимо внимательно проанализировать команду, используемую для идентификации таких устройств, а также понять, как она работает. В данном случае мы рассматриваем команду lsblk с последующей обработкой данных с помощью jq для выхода информации в JSON-формате.

Теория

NVMe SSD диски становятся все более популярными благодаря их высокой скорости чтения и записи, что делает их идеальными для хранения больших объемов данных или работы под высокими нагрузками. Однако перед их использованием важно убедиться, что они не содержат данных и не заняты другими процессами. Это позволяет избежать потенциальных потерь информации и обеспечить максимальное использование ресурсов диска.

Команда lsblk в данной ситуации служит для получения списка всех блоковых устройств и их атрибутов, среди которых наиболее важны имя устройства (NAME), тип файловой системы (FSTYPE), наличие файловых системных атрибутов как метка, UUID, доступное и используемое пространство и точки монтирования. Использование ключа -I 259 ограничивает вывод только NVMe устройствами, поскольку NVMe девайсы используют этот номер мажорного устройства.

Обработка вывода с помощью jq позволяет отфильтровать только те диски, которые не имеют разделов или файловых систем. Это осуществляется путем поиска устройств без дочерних элементов и без типа файловой системы (fstype == null), а также отсутствием монтированных точек.

Пример

Рассмотрим пример выполнения команды:

lsblk -b -I 259 -o NAME,FSTYPE,FSVER,LABEL,UUID,FSAVAIL,FSUSE%,MOUNTPOINTS,SIZE --json | \
jq -r '.blockdevices | sort_by(.size) | reverse | .[] | select(.children == null and .fstype == null) | select(.mountpoints[] | length == 0)'
  1. lsblk:

    • С помощью параметра -b выводит размеры в байтах, что обеспечивает четкость и точность для дальнейших вычислений.
    • Ключ -I 259 фильтрует только NVMe SSD устройства.
  2. jq:

    • .blockdevices | sort_by(.size) | reverse сортирует устройства по размеру в убывающем порядке. Это может быть полезно для установки приоритета, какой диск использовать, начиная с самого большого.
    • select(.children == null and .fstype == null) фильтрует устройства без дочерних элементов и типа файловой системы, что указывает на "сырой" диск без разбивки на разделы.
    • select(.mountpoints[] | length == 0) гарантирует, что диск не используется в текущий момент, поскольку нет точек монтирования.

Применение

Для системного администратора или специалиста по IT такой подход позволяет эффективно идентифицировать доступные для использования NVMe SSD диски, что важно при планировании и развертывании инфраструктуры данных. В результате вы можете быстрее находить и распределять ресурсы для различных задач – от хранения архивных данных до размещения на них активных баз данных или виртуальных машин.

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

Оцените материал
Добавить комментарий

Капча загружается...