|
| ||||||||||||
| ||||||||||||
|
2004 г.
Использование USB Flash под LinuxНиколай Ткаченко, Издательский Дом "КОМИЗДАТ" Устройства хранения данных по технологии Flash все настойчивее "стучат" в дверь, пытаясь побыстрее проникнуть в нашу компьютерную жизнь. Народ быстренько окрестил эти устройства "флэшками" и начал интенсивно приобретать - все-таки очень удобно. Действительно, использовать их под Windows 2000 и XP просто - поддержка встроена в саму ОС. Но представим, что вы - продвинутый админ, пользуетесь только Linux, а тут пришел к вам знакомый с серебристым флэш-брелком на груди: "Эй! Я тут увальную музычку на флэшке приволок. Послушаем?". Как быть дальше? Понимает ли Linux такое устройство? Сможете ли вы не ударить перед "модным юзером" лицом в грязь? На самом деле все просто. Надо лишь уметь пользоваться утилитой mount и знать, что flash рассматривается этой ОС (Linux) как SCSI-диск. Итак, включаем "флэшку" в USB-порт. Если у вас RH 8-9, можно воспользоваться программой поиска устройств - hwbrowser. Она просканирует системную шину и найдет все подключенные к ней устройства. Обнаружит, конечно же, и флэш-карту.
Видим (рис. 1), что в системе появился диск /dev/sda1 размером 62 Mб (вообще объем флэш-карты составляет 64 Mб, но в результате форматирования получилось два пустых места). Файловая система, автоматически распознанная этой ОС,- fat16. Все необходимые данные получены - теперь можно приступить к монтированию устройства в файловую систему. Делается это, как обычно, утилитой mount. А последовательность действий такова. Во-первых, создаем директорию usbflash в папке /mnt (вообще, не обязательно именно в ней - просто так принято). И выполняем команду: #mount /dev/sda1 /mnt/usbflash Заходим в эту директорию и читаем: #ls /mnt/usbflash >alcotable.doc Driver pyngvin.gif retal.rar wb2000s.zip >diskasis.zip m-35-060.jpg!readme.txt??????.rtf Что имеем? Устройства смонтировано. Но что это за странный файл "???????.rtf"? Дело, конечно, в различных кодовых страницах. Ведь файлы писались под Windows, в кодировке cp866,- а читаем мы их в koi8-r (как правило). Попробуем скорректировать проблему. Использование опций iocharacterset и codepage должно исправить ошибку: #umount /mnt/usbflash #mount -t vfat /dev/sda1 /mnt/usbflash -o iovharset=koi8-r,codepage=866 #ls /mnt/usbflash >alcotable.doc Driver pyngvin.gif retal.rar wb2000s.zip >diskasis.zip m-35-060.jpg!readme.txt Гарантийное письмо.rtf Если вы планируете часто подключать flash-карты к компьютеру, имеет смысл сделать запись в системном файле /etc/fstab. Вот такую: /dev/sda1 /mnt/usbflash vfat iocharset=koi8-r, codepage=866,user
И не забудьте, что fstab должен иметь одну пустую строку в конце (то есть завершаться символом новой строки - \n). Формат этого файла прост. Каждая строка описывает одну точку монтирования. Поля в ней разделяются пробелом. Первое указывает на блочное устройство (/dev/sda1), второе - на точку монтирования (/mnt/usbflash), третье - это тип файловой системы (в нашем случае - vfat); далее следуют опции. С двумя вы знакомы, опция же user означает, что выполнять команду mount /mnt/usbflash может любой пользователь, а не только root. |
|
CITForum © 1997–2025