신속하게 여부를 확인 sudo 권한이 있는 경우 사용 가능합니다

StackOverflow https://stackoverflow.com/questions/122276

  •  02-07-2019
  •  | 
  •  

문제

할 수 있는 신속하게 여부를 확인에 나는 모두가 sudo 액세스와 비밀번호는 이미 인증됩니다.나는에 대해 걱정하지 않는 sudo 액세스 작업을 위해 특별히 내가에 대해 수행하지만,는 보너스입니다.

구체적으로 무엇을 하려고 해요 이것을 사용한는 스크립트가 원하는 것을 실행 가능한 범위에 의해 이용합니다.일부 sudo 액세스입니다.모두가 알고있는 암호를 사용하시면 됩니다.

때 그들은 실행 스크립트,나는 그것을 사용하 sudo 권한 메시지를 표시하지 않고 암호를 가능한 경우에는,그렇지 않으면 다시 가을 요구하기 루트 비밀번호(기 때문에 그들은 못했을 수도 있습니다 sudo 액세스).

내 아닌 첫 번째 작업을 시도하는 포크 sudo -S true 와 STDIN 폐쇄 또는 읽기에서는/dev/null 입니다.하지만 여전히 암호를 묻는 메시지를 표시하고 기다립니다.

나도 여러 가지 다른 것을 포함하여,대기 0.3 초지 여부를 확인 그것은 바로 성공했지만,모든 시도 끝나 실패에 어떤 상황이다.(과하지 않기 때문에 제한 시간이 너무 짧습니다.) 그것은 어려운 그 간에,내가 할 수 있기 때문에 단지 strace 같이 내가 정상적으로 것입니다.

One thing I 이 작동하지 않을 STDIN 또는 첨부하는 파이프하기 전에 실행 sudo -S true.라고 기대했는 암호를 입력하라는 메시 즉시 실패하지만,여전히 프롬프트와 동작을 이상합니다.나는 그것을 원할 수 있습니다.

도움이 되었습니까?

해결책

최신 버전의 sudo 는 옵션이있다 이러한 목적으:

sudo -n true

내가 사용하는 true 여기에 대해 no-op,하지만 당신이 사용할 수 있는 모든 명령입니다.

다른 팁

I don't know what 궁극적 인 이유를 위해 필요 이렇게 하려고 생각 하지만,어쩌면 당신은 수 있습을 재고해봐야 해요 어떤 핵심 이유입니다.하려고 하는 복잡한,특이한 것으로 권한을 자주 지도 보안에 구멍이 있습니다.

더 구체적으로 무엇이든,그것은 스크립트를 위해 노력하고 더 좋을 수 있습으로 수행 setuid 대신 sudo.(나는 또한 이유를 궁금해 그렇게 많은 사람들이 암호를 사용하시면 됩니다.Sudo 이가 특별히 제공하지 마십시오 사람들은 암호를 사용하시면 됩니다.)

getent group admin | grep $particular_user

당신이 사용할 수 있습 whoami 현재 사용자.

편집:그러나 그 도움이 되지 않을 찾는 경우 당신은 여전히 authed 할 sudo 작업을...흠..

실행

sudo -S true < /dev/null &>/dev/null

작동하는 것 같다 있지만,그것을 지연한 두 번째 전에 실패했습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top