Почему скрипт с sudo работает отлично, но не работает от рута? Как это возможно?
Есть один sh скрипт. И он требует рут права. Работает прекрасно через sudo, но если запустить скрипт от рута, то в процессе вылетает пара ошибок. И я не могу понять как это возможно, ведь sudo и root должны иметь одинаковые права. В чем в теории может быть причина?
Скрипт не выполняет rename и\или rpl команды, из-за чего не находит потом нужные пути для файлов и все херится. Но все работает через sudo.
Что за магия? Мне кажется какая-то chroot jail на серверах, что-то блочит внешнее. Иного объяснения найти не могу.
sudo - выполнить команду от имени другого пользователя
но при этом переменные окружения рута накладываются на текущие.
Если же залогиниться под рутом, возможно у вас не хватает чего-то в PATH или еще в какой-то нужной переменной.
Ну вам правильно написали, предоставьте скрипт будет проще разобраться.
Я не телепат но попробую вам помочь.
Начните свой скрипт так.
#!/bin/bash
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin