reload: Executable name conflict in Ubuntu 14.04

I had recently faced this issue after installing the reload package through npm using the -g flag.

The executable name, reload, is in conflict with the actually existing reload executable located at /sbin/reload, which belongs to the initctl program suite in Ubuntu 14.04. This causes the system to attempt to run reload at boot with root permissions and consume CPU usage and HDD activity.

Steps to replicate this issue:

  1. sudo npm install -g reload
  2. Reboot system

I don’t know yet what other consequences this might have at system level, as I don’t know which routines are affected by running reload at system boot.

This issue might also affect other versions of Ubuntu, or even other Linux distros.

About this issue

  • Original URL
  • State: closed
  • Created 9 years ago
  • Comments: 32 (14 by maintainers)

Most upvoted comments

Yes. It is a system command installed by default on Ubuntu installations:

$ reload --help
Usage: reload [OPTION]... JOB [KEY=VALUE]...
Send HUP signal to job.

Options:
      --session               use existing D-Bus session bus to connect to init daemon (for testing)
      --system                use D-Bus system bus to connect to init daemon
      --dest=NAME             destination well-known name on D-Bus bus
      --user                  run in user mode (as used for user sessions)
  -q, --quiet                 reduce output to errors only
  -v, --verbose               increase output to include informational messages
      --help                  display this help and exit
      --version               output version information and exit

JOB is the name of the job that is to be sent the signal, this may be followed by zero or more environment
variables to distinguish between job instances.

Maybe as well as having a note in the readme you should also mention it when the user runs npm install reload -g.

Maybe this should be renamed to node-reload.