Linux - General This Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place. |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
11-24-2005, 10:50 AM
|
#1
|
LQ Newbie
Registered: Oct 2005
Location: Vienna
Distribution: suse 9.3, debian
Posts: 3
Rep:
|
How can I start a programm when a USB device is hotplugged??
Hi!
I wrote a C-server which communicates with a USB/HID device. now i want that this C-program starts every time I plug on the right device. I tried it out using udev but this was not very useful because if I start a process it has to be killed first for going on to create a device knode.
If I unplug it would be great if the c-prozess is killed.
But how could i realise that???
My rule in 10-local.rules located in /etc/udev/rules.d/ looks like this:
BUS="usb", SYSFS{serial}="1.0.0", NAME="usb/%k", SYMLINK="usb/Moeller_HID_GW", PROGRAM="/usr/bin/hello.sh"
(it is just a call of a helloworld.c with a sleep(20) for debugging...)
The funny thing is, if I try it to debug with "udevtest" the programm might be started/because the node-creating process stopps for 20 seconds but it doesn't print out "Hello World"...
I am working on a stable Debian and i have no idea why it doesn't work.
Is that also possible to realise that somewhere in /etc/hotplug????
Greetings!!!!!
|
|
|
11-24-2005, 01:31 PM
|
#2
|
Moderator
Registered: Jun 2001
Location: UK
Distribution: Gentoo, RHEL, Fedora, Centos
Posts: 43,417
|
where do you expect "hello" to be printed? certainly it's not going to be in your current terminal window or anything, udev has no bearing on your own login and no right to print messages to terminals all owver the place. instead i'd assume that it'd go off to syslog, so may well popup in /var/log/messages.
|
|
|
11-24-2005, 01:46 PM
|
#3
|
LQ Newbie
Registered: Oct 2005
Location: Vienna
Distribution: suse 9.3, debian
Posts: 3
Original Poster
Rep:
|
Yes, I knew that "hello" is not posted, but my main question is another...and in var/log/messages is it also not printed, if you mean that?
How can I realise that the process is started when I plug the device and it is killed if I unplug it????
What do you mean with using syslog and syslog.conf? How does that work???
greetings
|
|
|
11-24-2005, 03:27 PM
|
#4
|
Moderator
Registered: Jun 2001
Location: UK
Distribution: Gentoo, RHEL, Fedora, Centos
Posts: 43,417
|
well you'd use a mechanism that IS visible. you can use zenity from gnome to pop up a message on a predefined X server etc...
|
|
|
All times are GMT -5. The time now is 10:27 AM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|