Обнаружил, что команда shutdown выключает комп если логиниться командой "su -"
В манах вычитал :
По умолчанию вызывается непосредственно оболочка пользователя, однако,
при указании флага аргумента -, su вызывает оболочку регистрации в
системе. Это значит, что текущий рабочий каталог будет изменён в
домашний каталог нового пользователя и первый аргумент оболочки будет
иметь префикс -. Это поведение понятно и обрабатывается большинством
командных интерпретаторов.
Хотя как это сказывается на команде shutdown не понял. Внутренню организацию линукса представляю очень слабо...
Так наверное будет более понятно и наглядно:
$ su -
Password:
# echo $HOME
/root
# logout
$ su -l
Password:
# echo $HOME
/root
# logout
$ su - root
Password:
# echo $HOME
/root
# logout
$ su -l root
Password:
# echo $HOME
/root
# logout
Все эти команды абсолютно аналогичны. Это команды регистрации в системе пользователем root, от пользователя, который уже находится в системе, со сменой окружения пользователя.
Обратите внимание какой ваш домашний каталог (вывод 'echo $HOME').
Если после опции '-' или '-l' имя пользователя не указано, по-умолчанию он всегда root.
Аналогично вы можете уже находясь в системе, войти другим зарегистрированным пользователем со сменой окружения пользователя:
$ su - vasja
Password:
$ echo $HOME
/home/vasja
Но команда 'su' без опции '-' или '-l', с перечисленными, ничего общего не имеет:
Кто я?
$ whoami
john
Мой домашний каталог?
$ echo $HOME
/home/john
Я получаю права root
$ su
Password:
Кто я теперь?
# whoami
root
Мой домашний каталог?
# echo $HOME
/home/john
Вы только получаете права root, но не становитесь владельцем каталога /root, хотя и имеете доступ к содержимому этого каталога:
# touch ~/file.txt
# ls -l ~/file.txt
-rw-r--r-- 1 root root 0 янв 1 09:50 /home/john/file.txt
И соответственно не меняется переменная $PATH. В переменной пользователя нет каталогов /sbin, /usr/sbin.
Выполнить файлы в /sbin, /usr/sbin вы конечно можете, но только с указанием полного пути.
Часто это заканчивается необходимостью натравливать рекурсивно на свой домашний каталог команду chown пользователем root, чтобы восстановить права пользователя на все файлы его домашнего каталога.
Тема настолько избитая, что никто уже на такие вопросы не хочет отвечать.