사용 가능한 명령 확인


0

루트 사용자로 bash 스크립트를 실행하면 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
루트 ( sudo su -)로 입력 export PATH=$PATH:/sbin/:/usr/sbin/한 다음을 입력하십시오 iptables -h. 당신이 iptables에 대한 도움말 문서를 얻을 경우 문제는 편집하여 영구적으로 설정할 수 있습니다 $ PATH 변수입니다 /root/.bashrc
0xDAFACADE
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.