For this purpose I would have a service user called "leftpad-srv" under which my leftpad.io server runs.
When I login, I am "root".
When I want to say, change leftpadding from spaces to tabs, I'd call `leftpad-io-ctl set-padding \t` which would use a socket to communicate with the leftpad.io server.
For this purpose it would be very important that leftpad-io-ctl and the leftpad-io server are the same version, otherwise the -ctl might support setting a rightpad even though the server hasn't implemented this yet because they have two different versions.
A global install is necessary for many deployments.
(This is hypothetical but many apps have special ctl-tools to control or monitor the running application and it can be useful to, for example, have moderators in your app that can access the console with limited permissions)
A package manager ensures that the install is correctly available for all users.
With apps, same story, it ensures everyone has the app.
Install via cp -r / /usr is not a good idea as the package manager has no idea you are doing this and won't help you out.
In a worst case, the package manager will trample all over the install.
Additionally, a simple cp -r / /usr will probably not set correct permissions automatically, which means either users can edit the binary or won't be able to execute it.
Lastly, it means any update will have to be installed manually for every single release.
Package managers do this automatically and with much less friction.
You can just download node, put it anywhere and it will work as long as you add './bin' to 'PATH'.
This can be done on per-command basis as you probably know:
PATH=$PATH:/node/location/bin npm -g i leftpad