Журнал LinuxFormat - перейти на главную

LXF99:Вопрос7

Материал из Linuxformat
Перейти к: навигация, поиск

Konqueror против USB

В: Похоже, все дистрибутивы обрабатывают скрипты с USB-брелков по-разному. Попробуем запустить скрипт командой execute в Konqueror: Ubuntu отработает без проблем (правда, сперва моя обновленная Feisty по ошибке монтировала диск в режиме non-exec). SUSE 10.2 и Startcom сочтут брелок удаленным и не будут ничего с него выполнять. Fedora 7 Live выдаст запрос на подтверждение, но примется искать скрипт в неправильном каталоге, если Konqueror использовался для открытия USB-устройства через значок. Автомонтировщик монтирует /dev/sdb1 в /media/disk, а Konqueror видит URL как /media/sdb1. При попытке запуска исполняемого файла Konqueror пытается перейти в /media/sdb1 и не может найти исполняемый файл. После перехода в /media/disk скрипты выполняются правильно.

Хотя SUSE 10.2 ничего не запускает через Konqueror, если на брелке имеется скрипт autostart.sh, KDE предлагает выполнить его, стоит лишь вставить брелок. Надо думать, что все это настраиваемо (не вкомпилировано же жестко!), но как? HAL, udev и KDE – все причастны, файлов конфигурации уйма, так с которого начать? Ян Годдард [Ian Goddard]

О: Причин такого разнобоя несколько: отчасти это из-за особенностей работы KDE, отчасти из-за отсутствия реальных прав доступа на файловой системе FAT. Вы уже обнаружили, что KDE использует для доступа к файлу на съемном устройстве не реальный путь. Konqueror отображает media:/media/имя_устройства, но фактически монтирует устройство в /media/метка_тома (или /media/disk, если у диска нет метки тома). Это не вызывает проблем у большинства приложений KDE, так как они понимают URL’ы media:/ и system:/media, зато их не понимают не-KDE программы вроде bash. Ubuntu справляется с проблемой, потому что там установлена заплатка, направляющая Konqueror прямо в точку монтирования, но пока не решено, не перевешивают ли недостатки данного метода его преимущества.

Существует простой способ решить эту проблему для всех дистрибутивов. Откройте окно свойств, нажав правой кнопкой мыши на скрипте. Нажмите значок справа от надписи Type: Shell Script для открытия редактора типов файлов и, используя кнопку Добавить, внесите bash в список программ. Не ищите bash в списке программ, введите путь к нему в поле над списком. Подтвердите изменения; теперь при щелчке правой кнопкой мыши на скрипте bash появится в подпункте меню Открыть с помощью. Если поставить bash в верх списка, вы также сможете запускать скрипты, просто нажав значок: это удобнее, чем выбирать значок, а затем переходить на верхнюю часть окна для поиска меню. Автозапуск autоstart.sh настраивается в разделе Peripherals/Storage Media Центра управления KDE.

Другая возможность, на которую вы уже указали – редактирование конфигурации HAL, чтобы вместо имени тома при монтировании устанавливалось имя устройства. Правда, это сделает систему менее понятной, особенно при использовании файловой системы FAT, созданной другими устройствами, которая дает им значимые имена: карта памяти моего фотоаппарата всегда идентифицируется по имени, как и мой аудиоплейер, поэтому нет опасности скопировать файлы на неправильное устройство, что легко может случиться при монтировании устройств в /media/sde1 и /media/sdf1. НБ

Персональные инструменты
купить
подписаться
Яндекс.Метрика