Назад | Перейти на главную страницу

Почему для nvme есть как символьное, так и блочное устройство?

Я пытаюсь понять конфигурацию nvme.

Но я не понимаю, почему есть два устройства: nvme block и nvme character device:

crw------- 1 root root 243, 0 Dec 12 16:09 /dev/nvme0
brw-rw---- 1 root disk 259, 0 Jan 14 01:30 /dev/nvme0n1

Какова цель каждого и когда их использовать?

Устройство персонажа /dev/nvme0 это контроллер устройства NVME, а блочные устройства, такие как /dev/nvme0n1 - это пространства имен хранилища NVME: устройства, которые вы используете для фактического хранилища, которые будут вести себя по существу как диски.

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

Думайте о пространствах имен как о разделах, которые не исчезают при безопасном стирании SSD. Контроллер и пространство имен разделены. Пространства имен могут быть общими и позволяют удаленным контроллерам получать к ним доступ. Я считаю, что такие компании, как Excelero или Lightbits, используют эту технологию в своих предложениях продуктов.

В больших устройствах, скажем, 15 ТБ NVME, вы можете разделить SSD на 3 отдельные части для разных целей (кэш на / dev / nvme0n1, база данных на / dev / nvme0n2, хранилище виртуальных машин на / dev / nvme0n3). Вы можете создать 3 пространства имен равного или неравного размера и использовать их на каждом устройстве / dev / nvme0n_. Любое оставшееся пространство идет на избыточную выделенную емкость, что имеет свои преимущества.