Файл устройства в /dev/mapper/ присутствует даже после удаления раздела с parted

Эти наблюдения взяты из CentOS 6.3, 6.4 и 6.5. У меня есть многолучевое устройство с одним разделом:

# ls -l /dev/mapper/
total 0
crw-rw---- 1 admin root 10, 57 Dec 22 12:52 control
lrwxrwxrwx 1 admin root      7 Dec 24 12:22 mpatha -> ../dm-0
lrwxrwxrwx 1 admin root      7 Dec 24 12:22 mpathap1 -> ../dm-1

# kpartx -l /dev/mapper/mpatha
mpatha1 : 0 5368719293 /dev/mapper/mpatha 34

Затем parted используется для удаления раздела:

# parted /dev/mapper/mpatha
GNU Parted 1.7.1
Using /dev/dm-0
Welcome to GNU Parted! Type 'help' to view a list of commands.

(parted) unit GB                                                          
(parted) p                                                                

Disk /dev/dm-0: 2749GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      0.00GB  2749GB  2749GB  ext3         primary       

(parted) rm 1                                                             
(parted) q                                                                
Information: Don't forget to update /etc/fstab, if necessary.

Тем не менее, специальный файл устройства /dev/mapper/mpathap1 не удаляется автоматически. Бег ls -l /dev/mapper/ производит точно такой же вывод, как показано выше, в то время как kpartx -l /dev/mapper/mpatha, выходит нормально ($? = 0), ничего не печатая.

Мой вопрос связан с этим. Однако проблема заключалась в том, что специальный файл устройства не создавался в /dev/ в то время как мой о удалении, и это тоже на многолучевых устройствах. Я выполняю определенные операции в сценарии и уже проверил проверку того, действительно ли ожидаемые файлы устройства были созданы или удалены, и если нет, то я вызываю kpartx -a -p p <device> (взял этот намек от /lib/udev/rules.d/40-multipath.rules) или же kpartx -d <device> в зависимости от обстоятельств. Но у меня еще не было удовлетворительного понимания.

В целом, если создание разделов на дополнительном локальном диске или переносном жестком диске с использованием parted работает идеально, зачем делать что-то еще на дисках из SAN? Любая информация будет оценена. Спасибо!

1 ответ

Эту проблему удалось исправить, обновив parted до версии 2.1-21. У нас есть система, основанная на CentOS, в которой определенные компоненты скомпилированы с исходным кодом, и parted оказывается одним. Я еще не пытался выяснить, была ли какая-либо ошибка в предыдущей версии с пробелами.

Другие вопросы по тегам