надеюсь, вы можете помочь мне:
Я пытаюсь определить, является ли устройство съемным или нет, все, что у меня есть, это имя устройства (/ dev / sdc). На самом деле, мне нужно определить, когда файл на съемном носителе или на локальном диске по полному пути этого файла.
Я пытался искать в
current-> FS-> PWD
и все, что я мог найти, это набор флагов здесь:
* current-> FS-> pwd.mnt-> mnt_sb-> s_bdev-> bd_disk-> флаги *
где GENHD_FL_REMOVABLE установлен для сменных устройств
Но я всегда получаю одинаковые флаги (как я понимаю, s_bdev всегда указывает на одно и то же устройство (/dev/sda)).
Итак, теперь я получаю имя устройства (/ dev / sdc), которое содержит мой файл, путем анализа mtab, но все еще не может узнать, удаляемое оно или нет.
Можно ли получить структуру block_device по имени устройства?
(например, структура «файл» может быть получена путем вызова
fd = open ("имя")
fl = fged (fd)
где fl указывает на «файловую» структуру)