Все о Linux. LinuxRSP.Ru


Cвежие новости Linux и BSD, анонсы статей и книг прямо в почтовый ящик!
Подписаться письмом


 Сегодняшние новости:

Почтовый клиент Trojita 0.7

Состоялся релиз открытой аппаратной платформы icoBoard 1.0

Релиз компилятора SDCC 3.6.0

Релиз Qt 5.7.0 и Qt Creator 4.0.2

Первый релиз Nextcloud, форка ownCloud

Релиз LibreCAD 2.1.0. Команде разработчиков нужна помощь!

Релиз SolveSpace 2.1

xterm 325

До конца года состоится выход российских смартфонов на ОС Sailfish

Duktape 1.5.0 - встраиваемый движок JavaScript

FreeBSD доступна в Azure Marketplace

Программа PyCon Russia 2016 готова

Perl 5.22.0

Релиз FastNetMon1.1.2 - открытого решения для мониторинга DoS/DDoS атак

xCube - светодиодная платформа за 37 долларов

Hg/Mercurial 3.4

Релиз Jython 2.7.0

Релиз OpenBSD 5.7

Вышел Stellarium 0.13.3

Google

 Новые статьи :

Утилиты для восстановления потерянных данных в Linux

Лучшие файловые менеджеры для Android

20 лучших бесплатных книг о Linux

Как сгенерировать открытый/закрытый SSH-ключ в Linux

Grive - клиент Google Drive для Linux с открытым исходным кодом

Протокол IPv6: варианты подключения

Сервер из образа: DHCP + TFTP + Initrd + OpenVZ

Обзор веб-панелей управления хостингом

Приёмы работы с Vim

Nginx как Reverse Proxy для сайта, использующего SSL

Разработка модулей ядра Linux

Мониторинг нагрузки http-сервера Apache 2

Перевод комментариев к файлу конфигурации Squid

Решение проблем при использовании "1c предприятие" 8.2 в Linux

Advanced Bash-Scripting Guide Искусство программирования на языке сценариев командной оболочки







Rambler's Top100





 
 

История о том, как я настраивал USB flash-memory-drive в Linux

Итак, купил я себе замечательную вещь, USB Flash Memory Drive, в народе называется просто "флешка". Ну что тут можно сказать.. В WindowsXp определялась сразу и без проблем как "USB DiSK", в Windows98 была заморочка, драйвер корявый - ничего не работало, худо бедно, но запихал и туда.

Как всегда ночью полез в Linux, полюбовался грамотно настроенной системой (не факт, но все работало (ни много ни мало FTP, Samba, Sendmail, NFS, BIND, squid, Apache, ssh) и ничего не сбоило). И тут я вспомнил о своем приобретении... Интернета у меня временно нет, и желание скачать документацию и "сделать все как написано" сразу пропало, и появилось желание поэкспериментировать..

Настраивал я на RedHat Linux 8.0, по неподтвержденным данным на 7.3 все работает аналогично, да вообще везде работает! Первым делом я залогинился под root и просто воткнул флешку в USB порт.. и мне сразу выдалась такая штучка:

[root@etest mnt]# usb.c: USB device 3 (vend/prod 0xd7d/0x100) is not claimed by 
                any active driver.
                  Vendor:           Model: USB DISK          Rev: 3.02
                  Type:   Direct-Access                      ANSI SCSI revision: 02

так-как больше ничего не появилось, я полез в файлы /etc/fstab и /etc/mtab, ну в первом ничего измениться не могло по определению, а во втором появилась интересная надпись: "usbdevfs /proc/bus/usb usbdevfs rw 0 0", я смекнул, что в директории /proc/bus/usb могут быть только драйвера и служебная информация, но все-таки я проверил:

[root@etest usb]# ls
001  devices  drivers
Не надеясь на успех я набрал такую команду:
[root@etest mnt]# mkdir /mnt/test
[root@etest mnt]# mount -t usbdevfs /proc/bus/usb /mnt/test

все было спокойно, тогда я проверил что у нас в /mnt/test:
[root@etest mnt]# ls /mnt/test
001  devices  drivers

ну вот получилось то что я и предполагал, но проверить никогда не помешает! Кстати если кому не понятен синтаксис команды mount почитайте мануал, там все очень хорошо расписано "man 8 mount". На самом деле мы имеем право монтировать лишь блочные устройства(к примеру наберите mount -t auto /proc/bus/usb /mnt/test и вы убедитесь в этом), а как известно все они находятся в директории /dev, но там их ой как много, теперь предстояло узнать какой именно наш. Я немного смутился, но решение пришло само собой. Полез я обратно в директорию драйверов, почитать что там пишут... Напомню путь был /proc/bus/usb ничего там интересного не было кроме файла drivers:

[root@etest usb]# cat drivers
         usbdevfs
         hub
 96-111: hiddev
         hid
         usb-storage

Storage - хранение, подумал я и набрал:
[root@etest /]# find /proc/. -name *storage*
/proc/./scsi/usb-storage-0

хи, подумал я набирая: 
[root@etest /]# cd /proc/scsi/usb-storage-0
[root@etest usb-storage-0]# ls
0
[root@etest usb-storage-0]# cat 0
   Host scsi0: usb-storage
       Vendor:
      Product: USB Disk
Serial Number: 07310E0900B7
     Protocol: Transparent SCSI
    Transport: Bulk
         GUID: 0d7d0100000007310e0900b7
     Attached: Yes

Ну вот все и прояснилось флешка работает не через /dev/usb а через эмуляцию scsi(ANSI SCSI revision: 02 - эта строчка появилась как только я вставил флешку.. но почему-то я не заметил этого), значит это устройство находится в /dev и начинается на букву 'sda', у меня оно оказалось /dev/sda1.

Неплохо бы его еще прописать в /etc/fstab, например так "/dev/sda1 /mnt/usb-flash vfat noauto,rw,user 0 0"

И в итоге команда монтирования: mount -t auto /dev/sda1 /mnt/usb-flash, или просто mount /mnt/usb-flash(т.к. в /etc/fstab все прописано) и в вашем .bash_profile: "alias usbmount="mount -t auto /dev/sda1 /mnt/usb-flash"", все теперь набрав usbmount вы получаете полноценный доступ к информации, находящейся на вашем "usb-storage". Вместо -t auto можете писать -t vfat - все равно туда куда вы с ним пойдете будет именно vfat.

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

"/dev/sda1      /mnt/usb-flash  vfat    noauto,rw,user  0 0"

Монтируйте хоть от пользователя ssh.

Может статья немного и сумбурная, но я, как наверно многие из вас, все привык делать по описанию, и это был первый шаг, пусть робкий, но шаг к самостоятельности, к изучению и познанию, чего и вам желаю.

Автор: Кучумов Александр lee_chean@rambler.ru 16.02.2003


      

Связь | О проекте LinuxRSP | Реклама | О Linux
© 1999-2016 LinuxRSP