Perl에서 Net::SSH를 통해 특정 서버에 로그인하면(관리자 액세스 권한 없음) 다음 오류가 발생합니다.
%SECURITY-SSHD-4-WARNING_LOGIN : The requested term-type '' is not supported
(또한 터미널 유형을 영구적으로 변경하고 싶지 않습니다.)
내 코드의 일부는 다음과 같습니다.
my $ssh = Net::SSH::Expect->new (
host => "X.X.X.X",
user => 'bnegrao',
raw_pty => 1
);
eval
{
$ssh->login();
};
Perl에서 Net::SSH를 통해 로그인할 때 터미널 유형을 변경할 수 있습니까?
답변1
Perl 코드는 ssh를 실행하고 환경에서 TERM을 내보내므로 로그인하기 전에 Perl 환경을 변경할 수 있습니다.
$ENV{TERM} = "vt100";
$ssh->login();
필요한 경우 먼저 저장하고 로그인 호출 후 즉시 복원할 수 있습니다.