I have a PC for routing purposes, it has 2 network interfaces and runs Debian. I want to add a sound to it, to signal that it is booted and okay.
So I've created some
/etc/init.s/beep-startup script, according to top-secret LSByization manual (cannot stop laugning of its naming, sorry), which (along with hundreds of LSB strings) contained couple of core commands:
### BEGIN INIT INFO # Provides: beep-startup # Required-Start: $all # Required-Stop: $all # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: qwer # Description: asdf ### END INIT INFO case "$1" in start) #power chord + extreme uprising = fells like its clearly up and feeing good beep -f 220 -l 100 beep -f 330 -l 100 beep -f 880 -l 100 ;; stop) # power chord + slow chirp down, feels like low descending shutdown sound, right after ctrl+alt+del or /sbin/reboot beep -f 440 -l 100 beep -f 330 -l 100 beep -f 220 -l 100 ;; *) echo "Usage: sudo rm / -rf" esac
Then of course I've ran
chmod +x and
update-rc.d beep-startup defaults
But now the trick is, that when I see it in action, actual beep is occuring when system is in booting process, but not when the login prompt pops up. So there is 2-3 seconds between beep and login promt. And almost 5-7 seconds between chirp sound and correc routing begins (4 core * 2ghz + 4gb DDR3 ram, not quite bad for a router) Shutdown beep works as a charm, occuring almost instantly, right after ctrl+alt+del combo, as it supposed to confirm "shutdown sequence initiated".
I want to
beep it just lyrically a "nanosecond" before it shows the login prompt - e.g. after
#everything (or however do you what it to write - will stay precisely clear) is really finished initialized and system is ready to display login promt. How can I create an autorun script that executes right when the system is done with everything, but just before it shows the login prompt?
PS. Kinda whinning, but.. It's a router with console-only stuff, no xorg or whatsoever: the only required user is
root, most of its tasks are root-related. System can be "initializing", either "running", either "shutting down", either "powered off" - no runlevels required. Debian is a real trash in that kind of distro, runlevelless Busybox init feels very "sexy" in that sense. Later on I am planning to get rid of heavy Debian in a favor of buildroot-like distros. But that would happen only in production: only after I stabilize and figure out what software do I need. For now I do like apt-kind of "runtime" package-adding possibility in the development and software-usability testing stage. By now I had great experience with
iptables, and worst experinence with
webmin, when first block second, along with blocking dnsmasq, cutting whole WAN connectivity, so on. I hope there will be found more user friendly solutions. For now question is about "run a script after everything from
/etc/init.d had been launched and operating"