Muszę uruchomić program zainstalowany na / opt / godi / sbin (katalog niestandardowy). Jeśli dodam ten katalog do mojej ŚCIEŻKI, dodając następujący wiersz do mojego pliku .bashrc
export PATH=$PATH:/opt/godi/bin:/opt/godi/sbin
wtedy mogę spróbować uruchomić polecenie w porządku (z wyjątkiem tego, że nie powiedzie się, ponieważ wymaga sudo). Jednak gdy próbuję użyć sudo:
sudo godi_console
Pojawia się następujący błąd
sudo: godi_console: command not found
Sprawdzanie zmiennej PATH po użyciu sudo ujawnia, że nie zawiera ona tej samej PATH, którą mam jako zwykły użytkownik:
$ sudo sh
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Dlaczego ŚCIEŻKA nie jest taka sama? czy robię coś źle? Jestem na Debianie Jessie i niestety nie mogę obejść tego problemu, przekazując sudo absolutny link do godi_console, ponieważ sama godi_console zależy również od prawidłowego ustawienia PATH.
secure_path
i / lub env_reset są skonfigurowane tak jak ma to miejsce w wielu sudo
wdrożeniach, takich jak Debian.
sudo -E godi_console
.-E
oznacza „chronić środowisko”.