Sometimes installing some applications will start a process or service from the application being run automatically on installation. How do I install without starting them?
APT – Install Packages Without Starting Background Processes and Services
apt
Best Answer
There's a slightly hackish, but quite reliable way to do this which I've been using for a while in an automated installation script.
First create a directory, for example
/root/fake
, which contains symlinks to/bin/true
called:You could also make them bash scripts that do nothing and return success.
Then include that directory at the front of
$PATH
when installing packages:This only prevents daemons from starting/restarting, while things like creating an initramfs are still being done.
Explanation
The scripts which are being executed at package installation and removal execute
invoke-rc.d
or others of the mentioned commands to start and stop services. They don't however call them with absolute paths (at least I haven't encountered one that does).So by inserting the faked "no operation" commands at the beginning of
$PATH
, the real commands never get called.Since only the commands used to start/stop services are being faked, everything else, in particular important tasks like updating/creating initramfs-images still work.