Я пытаюсь записать ISO (myiso.iso
) на пустом CD R с cdrskin
, Я получаю следующую ошибку однако:
# cdrskin myiso.iso
cdrskin 1.4.6 : limited cdrecord compatibility wrapper for libburn
cdrskin: scanning for devices ...
cdrskin: SORRY : Cannot open busy device '/dev/sr0'
cdrskin: ( Most recent system error: 16 'Device or resource busy' )
cdrskin: SORRY : Cannot open busy device '/dev/sr0'
cdrskin: ( Most recent system error: 16 'Device or resource busy' )
cdrskin: ... scanning for devices done
cdrskin: NOTE : No usable drive detected.
cdrskin: FATAL : No drive found. Cannot prepare track.
cdrskin: FATAL : failed to attach fifo.
Как я могу определить программы, который использует устройство?
lsof /dev/sr0
и fuser /dev/sr0
не производите вывод.
Вы запускаете программу как корень? Большую часть времени при доступе к CD или дисководам, человечность имеет проблемы разрешения при попытке получить доступ как текущий пользователь.
Попробовать
mount | fgrep sr0
Сообщение cdrskin указывает, что некоторый процесс имеет файл устройств, открытый с флагом O_EXCL
в его Linux определенное значение для файлов устройств. Это не проблема права доступа, а скорее протокол блокировки среди программы записи и монтирования.
Теперь lsof
и fuser
кажусь не, обнаруживают mount
на /dev/sr4
. Я просто протестировал на Debian 8, ядро 3.16. Никакой вывод.
Если я открываюсь смонтированный /dev/sr4
некоторым пользовательским процессом это обнаруживается fuser
но не lsof
.
Как только я размонтировал диск, lsof
находит пользовательский процесс.
Последнее средство:
cdrskin
имеет опцию --drive_not_o_excl
который отключает механизм блокировки. Я просто протестировал это с этой опцией, смонтированным /dev/sr4
можно получить доступ cdrskin
.
Конечно, нельзя предсказать, какой эффект это могло бы иметь на невидимый пользовательский процесс файла, или вмешается ли тот пользователь в выполненную запись CD.