Автоматизированный запуск компакт-дисков

Изображение пользователя Michael72.

Для автозапуска сменных носителей, например CD-ROM'а, служит специальный даемон gnome-volume-manager. Но что делать, когда он просто не запускается (или не устанавливается)? Пытался решить эту проблему, но оказалось, что проще создать свой собственный скрипт для реализации этой функции.

Итак, с чего начать? Сперва создайте файл со скриптом autorun и поместите его в один из каталогов, перечисленных в переменной окружения PATH. Чтобы получить значение этой переменной, используем команду echo $PATH У меня получилось следующее: michael@michael-desktop:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Лично я для своих скриптов выбрал каталог /usr/local/sbin. Если вы поместили файл со скриптом autorun в этот католог, тогда выполните команду: sudo chmod +x /usr/local/sbin/autorun— чтобы сделать файл сценария исполняемым.

Скрипт для реализации функции автозапуска:

Зависимости: kdebase-bin (русификация: language-pack-kde-ru, language-pack-kde-ru-base)

Примечание: Любители консоли ниже смогут найти команду, которая сделает за вас всё то, что сейчас столь подробно с картинками будет описано.

Настройки для релизов 8.04 Hardy Heron и 9.10 Karmic Koala будут отличаться друг от друга:

Установка и настройка скрипта для пользователей Ubuntu.

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

Если это не помогает, то я предлагаю создать специальное udev-правило:
KERNEL=="sr*", ACTION=="change", SUBSYSTEM=="block", ENV{ID_CDROM_MEDIA_TRACK_COUNT_DATA}!="", RUN+="/usr/local/sbin/udev-autorun %k"
Создайте файл /lib/udev/rules.d/98-autorun-add.rules с этой строкой. В каталог /usr/local/sbin поместите дополнительный скрипт udev-autorun:
#!/bin/bash
USERNAME=username
export DISPLAY=":0.0"
/bin/su $USERNAME -c "autorun /dev/$1" &

Замените в этом скрипте username на ваше имя пользователя, под которым вы заходите в систему. Не забудьте файл с этим скриптом сделать исполняемым:sudo chmod +x /usr/local/sbin/udev-autorun

То же самое без GUI

Все выше описанное, после того момента, как был создан файл со скриптом и ему присвоены права на запуск, можно сделать с помощью командной строки

Скрипт рассчитан на обработку основных команд, которые могут быть в файле autorun.inf, — специальный конфигурационный файл, находящийся в корневой папке компакт-диска. Всего таких команд совсем немного: Open и Shellexecute. При этом не все возможные случаи предусмотрены в связи с употреблением команды Shellexecute. Для обработки непредусмотренных скриптом случаев, например открытие pdf-файла, предполагается добавление в скрипте новых "случаев" в операторе case, который используется в функции run.

В случае открытия html-файла скрипт может использовать один из трёх вариантов:

  • Wine Internet Explorer
  • Microsoft Internet Explorer
  • Веб-браузер, используемый по умолчанию, например Konqueror

Выберите самый подходящий, а остальные закомментируйте. Изначально скрипт настроен на использование Wine Internet Explorer.

В скрипте есть возможность указать каталог конфигурации wine — в начале скрипта в секции SETTINGS переменная WINEPREFIX. Отдельно для Microsoft Internet Explorer можно запускать wine с особой конфигурацией, которая указывается в переменной IE. Например, если вы хотите, чтобы при открытии html-документов wine использовал особую конфигурацию настроенную для запуска Internet Explorer 6, и которая находится в каталоге "$HOME/.ies4linux/ie6", тогда в скрипте укажите IE="$HOME/.ies4linux/ie6".

Для установки Microsoft Internet Explorer рекомендую использовать утилиту PlayOnLinux. Краткая инструкция по установке:
wget -q "http://deb.playonlinux.com/public.gpg" -O- | sudo apt-key add -
sudo wget http://deb.playonlinux.com/playonlinux_trusty.list -O /etc/apt/sources.list.d/playonlinux.list
sudo apt-get update
sudo apt-get install playonlinux

Внимание! В файле playonlinux_trusty.list замените слово trusty на имя вашего релиза

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры