If you are a user of Ubuntu, you may found that
reboot and a few other commands does not work in Debian Linux. And it outputs “bash: shutdown: command not found”.
I was thinking that Debian does not have these commands out-of-the-box when I was first time trying out the system, until I realized it is an environment variables issue.
There are several standard variables in Linux environments, including PATH, HOME, SHELL, etc. The PATH specifies separated list of directories to search for commands. For example, the Firefox executable file is installed to
/usr/bin/firefox and /usr/bin is in your PATH. So you may type
firefox simply to run it.
shutdown and a few other system action commands locate in /usr/sbin. Ubuntu has the directory in PATH for all admin users, so users may run them directly. However, Debian and some other Linux do not have them in PATH for non-root users.
Run shutdown, reboot, poweroff command in Debian / Fedora Linux:
/usr/sbin target for users with superuser (root) privileges. And, the correct way to run these commands is using “sudo” at the beginning. Such as:
sudo shutdown +60
Though you may type the full path (e.g.,
Add /usr/sbin to your user PATH:
If you insists, add “/usr/sbin” to the PATH via command
export PATH=$PATH:/usr/sbin will make it work on current terminal or command console.
merilyn@debian11:~$ export PATH=$PATH:/usr/sbin merilyn@debian11:~$ shutdown -r +60 Reboot scheduled for Fri 2021-10-15 13:08:38EDT,use 'shutdown -c' to cancel.
To make it permanent, so it will work just like in Ubuntu, run command to add the
export PATH=$PATH:/usr/sbin line to the end of user’s “.bashrc” file. And re-open the current terminal/console.
sh -c 'echo "export PATH=$PATH:/usr/sbin" >> ~/.bashrc'
NOTE: Next time you need to add or change the user PATH. You have to edit this line you added via the last command.