Skip to main content

UDEV Simple Rules For Events In Linux

How to execute external program upon certain events occurred in linux?
This is quite wide requirement if you are running embedded linux on target board. Well The answer could be varied as question is more general. Lets limit the scope of question to USB devices.
Running external programs upon certain events to be specific want to run a program on USB device connection and on USB device removal.
Well I am going to do it with UDEV,
For the beginners/novices about UDEV and howto write UDEV rules the howto is pretty nice and easy to apply. udev plus tux, from the udev page
One can do it with signals also, but I like this way. To start with,
I have written simple udev rules file and kept in /etc/udev/rules.d/90-local.rules (off course you can give any name but with ext .rules and start with some no like 90 here); My udev rules are in 50-udev.rules files which defines the way to mount on USB connection and unmount on USB device disconnect.
I can't believe myself that with simple two lines rule placed in 90-local.rules file my job is done;
Here is 90-local.rules file

KERNEL=="sd*[0-9]",ACTION=="add",RUN+="/usr/sbin/usb_detect"

KERNEL=="sd*[0-9]",ACTION=="remove",RUN+="/usr/sbin/usb_detect"

These two line says on connection of disconnection run the local file ie kept in /usr/sbin/.
You can write whatever you want in this exe; I am creating a default share on USB detection and making it to available for others to see the USB contents. On device removal I am deleting the shares.

The functionality introduced here allows you to run a program after the device node is put in place. This program can act on the device, however it must not run for any extended period of time, because udev is effectively paused while these programs are running. One workaround for this limitation is to make sure your program immediately detaches itself.

Here is an example rule which demonstrates the use of the RUN list assignment:

KERNEL=="sdb", RUN+="/usr/bin/my_program"
One observation if you enable printf inside your my_program you will not get the output on consol. Don't get panic, rather read the UDEV howto.

Comments

Popular posts from this blog

dasara marathi message dasara greetings in marathi

Dasara Marathi Greetings-SMS-marathi-Messages-vijaya dasami
marathi greeting cards for vijaya dasami
Happy Vijaya Dashami ! Celebrate the victory of the forces of good over Evil
Dasara is celebrated in Nepal by the name of Dashain. Vijayadashami (Hindi and Marathi: विजयादशमी, Kannada:ವಿಜಯದಶಮಿ)

Marathi Wishes for Dasara..
Apanas ani aplya kutumbiyans Vijayadashami nimmitt hardik shubhechha!

dassera greetings, marathi world, greetings, dassera, marathi greeting MARATHIGREETING.COMSpecial Marathi Greetings from marathiGreeting.com. ...Dasera, nljk. New Born, ckGkph pkgwy. Marathi Birthday, okMarathi Diwali ...
www.marathigreeting.com/

मराठी शुभेच्छापत्रे greeting marathi greetings...New Marathi Greeting Cards. Send this Marathi Dipawali Greeting Dasara Greeting Card to your friends · Click to Send this Greeting card to your friends for ...
www.marathimati.com/greetings/Send_Dasara_Card1.asp

मराठी शुभेच्छापत्रे - Greetings Cards, Marathi ...
Send free Marathi Greetings, electronic Greetings, m…

Xilinx's Interview Questions

Xilinx is the world's one of largest supplier of programmable logic devices. It has started R & D department in Hyderabad, India. It has broad scope for embedded system programming in device driver in linux.

Before the interview you have to feel the Xilinx form with information containing all academic details, current/previous employer, contacts of employer( to check out info about you), current ctc, expected ctc and expected date of joining, etc.

I appeared two back to back technical interviews.

The first interview was taken by a young man look like just crossed 30's.

He asked me to tell me about myself.

Then he asked my experience.

He checked my expertise in resume.

He asked questions about RTOS, and Linux Device Drivers.
What is RTOS ? Define it.
How a linux device driver works?
How a character driver works?

He looked at my project summaries and started to ask in depth questions about each project.

After that he asked me to write to delete nth node from starting in Singly Linked Li…

Rajasthan Board 10th Results | rajedubord.nic.in | RBSE

Raj Board of Secondary Education, Rajasthan Results at rajeduboard.nic.inBoard of Secondary Education, Rajasthan Ajmer declared result of secondary examination today at 4PM official site is rajedubord.nic.in

check Secondary Examination- 2008 Result
(To be announced on July 1st, 2008 at 4:00 PM)
source
http://rajresults.nic.in/

Declared result
Praveshika Examination-2008 Result
(Announced on June 25, 2008 at 4:00 PM)

The history of the Board of Secondary Education Rajasthan (BSER) is a remarkable panorama of progressive record of the futurological vision for developing a dynamic system of various sub-systems of examinations and highlights of the academic excellence of the last four decades. The BSER took rapid strides for promotion and development of Secondary Education in Rajasthan, spread over 3,42,239 sq. km. and in more than 6000 schools located in 32 districts involving 8.5 lakhs students for Secondary and Senior Secondary Examination in the year 2000.

At present the Board is conducting …