Когда новое устройство появляется, udev уведомляется. Это обычно создает файл устройств под /dev
на основе встроенных правил ¹. Можно переопределить эти правила изменить местоположение файла устройств или запустить произвольную программу. Вот является образец таким правилом udev:
KERNEL=="sd*", ATTRS{vendor}=="Yoyodine", ATTRS{serial}=="123456789", NAME="keepass/s%n", RUN+="/usr/local/sbin/keepass-drive-inserted /dev/%k%n"
NAME=
директива изменяет местоположение файла устройств, я включал его в целях иллюстрации, но это, вероятно, не полезно для Вашего варианта использования. ATTRS
правила определяют устройство; выполненный udevinfo -a -n /dev/sdz
когда диск доступен как /dev/sdz
видеть, что приписывает его, имеет. Остерегайтесь этого, можно только использовать ATTRS
правила от единственного раздела udevinfo
вход (кроме того, можно использовать ATTR
правила от начального раздела). Посмотрите Понимают вывод 'udevadm информация-a-n/dev/sdb' для большего количества фона. Это правило входит в файл, названный чем-то как /etc/udev/rules.d/local-storage-keypass.rules
.
Поместите команды, которые Вы хотите выполнить в сценарии, сданном RUN
директива. Что-то как:
#!/bin/sh
set -e
if [ -d /media/keypass-drive ]; then
[ "$(df -P /media/keypass-drive | awk 'NR==2 {print $1}')" = "$(df -P /media | awk 'NR==2 {print $1}')" ]
else
mkdir /media/keypass-drive
fi
mount "$1" /media/keypass-drive
su ereon -c 'keypass2' &
При наличии затруднений при запущении программы GUI из сценария, инициированного от udev посмотрите, что я могу запустить графическую программу на рабочем столе другого пользователя как корень?
¹ Не в современных системах, где /dev
находится на udevtmpfs.
Yuo мог попробовать grep в Вашем корневом каталоге или в и т.д. Что-то как:
$ cd ~
~$ grep -Ri http_proxy *
Переменные среды сохраняются в /etc/environment
cat /etc/environment | grep "http_proxy"
И прокси для способности является сохранением в /etc/apt/apt.conf
cat /etc/apt/apt.conf | grep "http::proxy"
http_proxy
определяется для всей среды, не только для APT (например, с wget, это пыталось использовать определенный прокси). Мой /etc/environment
файл пуст. Хорошая попытка
– JoseLSegura
02.11.2013, 18:43
Я не знаю, имеет ли этот вопрос уже ответ, но это - мой /etc/environment
:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
http_proxy="http://192.168.0.1:8080"
ftp_proxy="ftp://192.168.0.1:8080"
https_proxy="https://192.168.0.1:8080"
export http_proxy ftp_proxy https_proxy
Очистка gconf dir:
И [1129418]перемещение[1129419] сделало трюк.[1128863].
find $HOME -type f | xargs grep -i http_proxy
, и это ничего не возвращает – JoseLSegura 02.11.2013, 19:08/etc
в дополнение к$HOME
. – Gilles 'SO- stop being evil' 03.11.2013, 01:49$HOME
и/etc
, и поискhttp_proxy
(с-i
опция grep, для игнорирования регистра) и для определенного значения для переменной. Возвраты ничто в этих 4 сценариях. Это - причина, потому что я здесь спрашиваю это :-D Отстраните вещь... – JoseLSegura 03.11.2013, 02:03