ssh를 정말로 조용하게 만들기


15

나는 nagios 스크립트를 작성하는 중반이며 SSH로 성가신 것입니다.

매뉴얼 페이지에 따르면 :

-q       Quiet mode.  Causes all warning and diagnostic messages to be
         suppressed.

그러나 조용한 플래그를 활성화 한 다음 유효하지 않은 포트를 전달하면 여전히 오류가 발생합니다.

$ ssh user@localhost -q -p test
Bad port 'test'

메시지가 첫 번째 라인이되고 Nagios가 잡은 것이기 때문에 이것은 문제입니다. != 0ssh에서 종료 코드를 가져온 후 "Warning | SSH error"와 같은 것을 출력해야 하지만 출력 할 수있는 첫 번째 행은 2 행이됩니다.

SSH TRULY를 어떻게 조용하게 만들 수 있습니까?

참고 :이 질문을 serverfault, 수퍼 유저 또는 stackoverflow에 게시할지 확실하지 않습니다. 사용자 기반이 cli SSH 및 cli 스크립팅 해결 방법에 가장 많은 경험이 있으므로 serverfault와 함께 사용했습니다.


2
실제로 도움이되는 것은 아니지만 매뉴얼을 업데이트하여 업데이트 한 것처럼 보입니다. OpenSSH 5.8 (및 이전 버전)부터는 " 모든 경고 및 진단" 대신 " 대부분의 경고 및 진단"이 표시되지 않습니다.
James Sneeringer

귀찮아! 그래도 좋은 자리.
SimonJGreen

왜 유효하지 않은 포트에 연결하지 마십시오?
Zoredache

1
@Zoredache 잡기 / 처리 오류입니다. 오타를 피한다고해서 우아하게 처리하는 방법의 문제는 해결되지 않습니다.)
SimonJGreen

답변:


25
ssh user@localhost -q -p test 2> /dev/null 

stderr/ dev / null로 리디렉션 됩니다.


2
이제 나는 완전한 가슴 같아요. 늦은 밤에 코딩하도록 가르쳐 줄 것입니다!
SimonJGreen

-2

또는 LogLevel QUIET구성 파일에서 가장 쉬운 메소드 저장소 :

$ cat ~/.ssh/config 
Host *
  IdentityFile ~/.ssh/id_rsa
  StrictHostKeyChecking no
  UserKnownHostsFile /dev/null
  LogLevel QUIET
  ...

적은 타이핑으로 위와 동일한 결과를 얻습니다.

건배


1
% ssh를 -p 테스트 -oLogLevel = QUIET 로컬 호스트 잘못된 포트 '시험'은 여기에 질문을 받았다 문제가 해결되지 않기 때문에 나는 대답을 downvoted
cstamas
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.