PDA

View Full Version : Locking the keyboard during a script command



utu
05-13-2011, 02:54 AM
.
I have a simple script that does some useful housekeeping jobs;
however, it will hang up and require a re-command if any keyboard activity
occurs during the small time it takes to perform the housekeeping jobs.

Are there some simple commands that would allow me to lock-out
the keyboard just before and re-activate the keyboard just after
the script operations are in process?

kl522
05-13-2011, 04:58 AM
.
I have a simple script that does some useful housekeeping jobs;
however, it will hang up and require a re-command if any keyboard activity
occurs during the small time it takes to perform the housekeeping jobs.

Are there some simple commands that would allow me to lock-out
the keyboard just before and re-activate the keyboard just after
the script operations are in process?

Are you referring to locking the keyboard when you are running the script from a lxterminal ( or any other terminal emulators ) or you want to lock the entire keyboard and mouse for the entire X Window session ? If it is the formal you can consider using nohup and redirect input to null.

$ nohup command arg ..... < /dev/null

If it is the latter, I am not aware of a way to do it. In LXDE, locking is easy but automatically unlock is tough.

utu
05-13-2011, 02:29 PM
@ kl522

I have a small /etc/rc.local script which does things at boot.
Takes about 60 seconds. Any keyboard activity at all prior to
its completion seems to reset the clock for another 60 second wait.

I thought there might be something like 'init x' added before
and 'init y' added after the script would lock out the keyboard
while the script is doing its thing.

This begs the question about what happens if the script itself
hangs up.

kl522
05-13-2011, 03:00 PM
@ kl522

I have a small /etc/rc.local script which does things at boot.
Takes about 60 seconds. Any keyboard activity at all prior to
its completion seems to reset the clock for another 60 second wait.


Try 'nohup', that's what it is meant for, making whatever script/command immune to standard input.

utu
05-13-2011, 03:52 PM
@ kl522

Took a few lines out of /etc/rc.local and made a separate
script called /etc/setup.
Replaced those lines in the original /etc/rc.local with
nohup /etc/setup &.
Keyboard input no longer upsets the process.

Thanks.

utu
05-13-2011, 05:37 PM
@ kl522

Two amendments:
(1) /etc/rc.local doesn't like the '&'; I've deleted it; and
(2) I've added '> /dev/null 2>&1' in its place to do away with
a lot of nohup messages showing up in home.