Проверьте наличие команды


0

Когда я выполняю скрипт bash с пользователем root, я получаю вывод о том, что iptables не существует. Почему это происходит только с рутом?

for CMDAPP in "hash" "curl" "iptables"
  do

    if ! hash "$CMDAPP" 2>/dev/null
    then

        echo "`date`: $MODULE ended without '$CMDAPP' command." >> ERROR.log
        exit

    fi

  done

1
Я предполагаю, что iptablesкоманда не существует в корне PATH. Попробуйте which iptablesкак обычный пользователь и используйте этот абсолютный путь.
NigoroJr

1
Как root ( sudo su -) введите, export PATH=$PATH:/sbin/:/usr/sbin/а затем введите iptables -h. Если вы получаете справочную документацию по iptables, проблема заключается в переменной $ PATH, которую вы можете установить навсегда, отредактировав /root/.bashrc
0xDAFACADE
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.