SSH를 통한 "apt 업그레이드": 이 프런트엔드에는 제어 tty가 필요합니다.

SSH를 통한 "apt 업그레이드": 이 프런트엔드에는 제어 tty가 필요합니다.

Linux 서버를 업그레이드할 때 관리 서버 중 하나에서 다음과 같은 명령을 실행합니다.

ssh server1.mycompany.com apt upgrade

특정 상황에서는 다음 명령을 통해 다음과 같은 출력을 얻습니다.

debconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (This frontend requires a controlling tty.)

대화상자와 상호작용할 수 없으므로 기본값이 선택된 것 같습니다. 다른 사람들은 이 문제를 어떻게 처리하나요? 대화 상자가 나타날 경우를 대비해 적절한 업그레이드를 실행하기 위해 각 서버에 로그인하는 것은 좋은 방법이 아닌 것 같습니다. 어쩌면 "적절한 업그레이드"를 중단하는 방법이나 대화 상자가 나타날 때 뭔가가 있을까요? 또는 더 나은 방법은 SSH 연결의 클라이언트 측, 즉 내가 SSH를 실행 중인 서버에 팝업이 표시되도록 하는 방법이 있을 수 있습니다.~에서?

답변1

-tpty를 강제로 적용하거나 -Tpty를 강제로 적용하지 않는 매개변수(또는 해당 구성 파일 옵션)를 통해 설정할 수 있는 터미널이 필요합니다 .

또한 pty를 사용하면 TERM환경 변수가 복사됩니다(완료된 세부 정보 및 공식 경품 응모 양식에 대한 확인 문서가 적용될 수 있음).

요구 사항이 없고 어떤 질문도 하지 않는(원하는 것일 수도 있고 아닐 수도 있는) 비대화형 프런트 엔드를 지정할 수 있습니다.

ssh <remote_srv> "DEBIAN_FRONTEND=noninteractive apt-get autoremove"

자세한 내용은 Ask Ubuntu 게시물을 참조하세요. 프런트엔드를 초기화할 수 없습니다: SSH를 사용할 때 대화 상자가 나타납니다..

관련 정보