Friday, April 23, 2010

Монтирование CD, DVD

Как примонтироваить cdrom или DVDrom в Linux

CD и DVD используют файловую систему iso9660. Как и многие другие операционные системы Linux может читать эту файловую систему. Давайте посмотрим как это делается.

1. Определение CD-ROM/DVD-ROM устройства

Если вы не уверены какое блочно устройство является вашим DVD-ROM или CD-ROM вы можене его найти очень просто, для этого воспользуйтесь командой:

# wodim --devices

Если wodim команда не доступна в вашей системе убедитесь что пакет cdrecord инсталирова. После запуска wodim команды вы получите вывод похожий этому:

[root@knoppix etc]# wodim --devices
wodim: Overview of accessible drives (1 found) :
-------------------------------------------------------------------------
0 dev='/dev/scd0' rwrw-- : 'PIONEER' 'DVD-RW DVR-111D'
-------------------------------------------------------------------------
[root@knoppix etc]#


Так, сейчас понятно что собой представляет мое CD-ROM устройство, оно в системе закреплено за /dev/scd0 блочным устройством. Однако разные системы могут вести себя по разному. Для примера в Debian Linux пользователь запускающий wodim команду должен пренадлежать к руппе cdrom в противном случае wodim комманда выдаст ошибку с следующим сообщением:

wodim: No such file or directory.
Cannot open SCSI driver!
For possible targets try 'wodim --devices' or 'wodim -scanbus'.
For possible transport specifiers try 'wodim dev=help'.
For IDE/ATAPI devices configuration, see the file README.ATAPI.setup from
the wodim documentation.

2. Тестированме совместимости для iso9660

Просмотрите поддерживает ли ядро файловую систему iso9660.

# cat /proc/filesystems

Эта комманда сообщает, что файловая система iso9660 поддерживается.

[root@knoppix /]# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev cpuset
nodev binfmt_misc
nodev debugfs
nodev securityfs
nodev sockfs
nodev usbfs
nodev pipefs
nodev anon_inodefs
nodev futexfs
nodev tmpfs
nodev inotifyfs
nodev devpts
nodev ramfs
nodev hugetlbfs
iso9660
nodev mqueue
ext3
reiserfs
nodev rpc_pipefs
nodev autofs
udf
[root@knoppix /]#

3. Создание точки монтирования


Точка монтиования наверное уже существует в вашей системе. Обычно это /cdrom, /media/cdrom, /media/cdrom0 или /mnt/cdrom. Если точка монтирование отсутствует то создаете ее:

# mkdir /media/cdrom0

4. Монтирование CD

Как root пользователь введите комманду:

mount -t iso9660 /dev/scd0 /mnt/cdrom/

[root@knoppix /]# mount -t iso9660 /dev/scd0 /mnt/cdrom/
mount: block device /dev/scd0 is write-protected, mounting read-only
[root@knoppix /]#
[root@knoppix /]# mount | grep scd0
/dev/scd0 on /mnt/cdrom type iso9660 (ro)
[root@knoppix /]#

ваш CD смонтировался в /mnt/cdrom. Перейдите в эту директорию и просмотрите ее содержимое.



5. Монтированме аудио CD


Иногда вам необходимо прослушать вашу любимую музыку и когда вы пытаетесь смонтировать используя команду выше возникает проблема набодобие этой:

[root@knoppix /]# mount -t iso9660 /dev/hdc /media/cdrom0/
mount: block device /dev/hdc is write-protected, mounting read-only
mount: wrong fs type, bad option, bad superblock on /dev/hdc,
missing codepage or other error
In some cases useful info is found in syslog - try
dmesg | tail or so

[root@knoppix /]#

Это проблема возникает потому как это есть аудио CD диск который имеет не файловую систему iso9660. Но история с аудио CD проще нежели CD с файловой системой iso9660. Для того что бы прослушать аудио CD необходимо только вставить диск в CD-ROM/DVD-ROM привод и запустить свой любимый аудио проигрователь. Если вы всетаки хотите просмотреть содержимое аудио CD то у вас должен быть утстановлен пакет "kdemultimedia-kio-plugins" для KDE или "gnome-media" для GNOME, которые поможут просмотреть содержимое. Для просмотра запустите "KONQUEROR" и введите размещенеи:

audiocd:/

6. Использование файла /etc/fstab

Для того что бы все пользователи системы могли монтировать CD или DVD вы можете использовать /etc/fstab, в него нужно добавить такую строку:

/dev/scd0 /mnt/cdrom udf,iso9660 noauto,user,ro 0 0


7. Размонтирование и извлечение CD

Есть несколько способов как извлещь CD/DVD с привода.

# unmout /dev/hdc
# eject

или просто запустив

# eject

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

# fuser -mk /dev/hdc
# eject