Прежде всего, я не могу обнаружить USB на Linux с помощью командной строки. Я проверяю каталог dev и до сих пор не могу найти usb. использовал команду df для проверки usb. Я подключил и набрал df, а затем отключил и снова набрал df, и ничего не изменилось. Мы используем сервер (telnet) для использования командной строки Linux на ОС Windows 7.

Вторая проблема, которую я имею, состоит в том, как я могу выполнить скрипт bash, который я сделал. Кажется, я не могу поместить свой файл .sh в /usr /bin /, и я хотел бы сделать мою команду исполняемой во всех каталогах, как обычная команда. Извините, я все еще новичок в этом. Это то, что я получаю от пребывания на Windows слишком много.

Извините за мой английский. Заранее спасибо.

4 ответа4

1

df покажет только смонтированную файловую систему. Используемый вами дистрибутив Linux может включать или не включать автоматическое подключение USB-накопителей.

Правильный способ сделать что-то в случае вставки и извлечения USB-накопителей - это использовать правила udev. См. Http://reactivation.net/writing_udev_rules.html.

Вы также можете использовать команду lsusb, чтобы увидеть, что в данный момент присутствует на шине usb. Смотрите: http://linuxcommand.org/man_pages/lsusb8.html

Какой из них подходит для вашего случая, зависит от вашего конкретного случая использования.

1

Поскольку вы осуществляете удаленный доступ, он, вероятно, не будет автоматически смонтирован, поскольку файловый менеджер рабочего стола в большинстве "сред" - это то, что монтирует эти носители в большинстве систем. К сожалению, именно так их и создают "удобные для пользователя" дистрибутивы.

Сначала вы можете узнать, работает ли USB, запустив это:

/sbin/udevadm monitor

Затем подключите и отключите USB-диск. Вы должны увидеть распечатанные события. Находясь в, посмотрите в /dev /disk /by-id и посмотрите, видите ли вы узел устройства (символическая ссылка).

Если вы это сделаете, то вы можете смонтировать его так:

mkdir /mnt/media1
mount -t auto /dev/disk/(fullpathtodevice) /mnt/media1

Вы должны размонтировать его перед удалением.

Вы должны быть суперпользователем (root), чтобы сделать это, или должны быть включены пользователем root и в нужных группах.

Что касается вашего второго вопроса, правильное место для размещения пользовательских сценариев для использования на уровне хоста находится в /usr/local/bin . Опять же, вы должны быть root, чтобы сделать это.

0

gby верен - df будет обнаруживать только смонтированные файловые системы.

Я предлагаю использовать простой fstab правило, которое я подробно , как создать в другом ответе здесь.

Конечно, это требует от вас фактического монтирования файловой системы - ваш файловый менеджер (я использую pcmanfm - я знаю, что Thunar также делает это) должен обнаружить эти строки в вашем fstab и перечислить их как монтируемые. Способ монтирования диска зависит от файлового менеджера, но обычно включает щелчок правой кнопкой мыши на значке и нажатие кнопки « Mount . То же самое касается размонтирования, как только вы закончите с дисководом.

Вы также можете сделать mount /dev/insert-usb-device-here /umount /dev/insert-usb-device-here


Само собой разумеется, что вы должны su/sudo получить root права, прежде чем делать эти вещи.

0

Правильное место для размещения программ, не предоставляемых операционной системой, - /usr /local /bin. Каталог /usr /local /bin включен в переменную PATH в большинстве дистрибутивов Linux.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .