개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.14 11:19

SSH2 Send EOF 오류 해결 방법

목록
  • 배포요정 1일 전 2025.04.14 11:19
  • 5
    1
제가 SSH2 Send EOF 오류를 해결하기 위해 ssh2_send_eof 함수를 사용하려고 하는데, 이 함수의 사용법과 오류 해결 방법에 대한 정보를 찾을 수 없어서 도움을 요청합니다.

내가 만든 코드는 다음과 같습니다.

php

$ssh = ssh2_connect($host, $port);

ssh2_auth_password($ssh, $username, $password);

$stream = ssh2_exec($ssh, 'ls -l');

ssh2_send_eof($stream);



위 코드를 실행하면 오류가 발생하고, 에러 메시지로 'ssh2_send_eof(): stream must be in SSH2_STREAM_EOF state'가 출력됩니다.

이 오류는 무엇을 의미하고 어떻게 해결할 수 있는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  1일 전



    ssh2_send_eof() 함수는 SSH2_STREAM_EOF 상태의 스트림에만 호출할 수 있습니다.

    이 오류는 ssh2_exec() 함수로 생성된 스트림은 SSH2_STREAM_EOF 상태가 아닙니다. 따라서 ssh2_send_eof() 함수를 호출할 수 없습니다.

    ssh2_exec() 함수로 생성된 스트림은 SSH 명령어를 실행하는 동안 SSH2_STREAM_EXEC 상태에 있습니다. SSH 명령어가 완료되면 SSH2_STREAM_EOF 상태가 됩니다.

    따라서 ssh2_send_eof() 함수를 호출하기 전에 ssh2_exec() 함수로 생성된 스트림이 SSH2_STREAM_EOF 상태가 되도록 기다리거나, SSH 명령어를 직접 실행하는 방법을 사용해야 합니다.

    예를 들어, 다음 코드는 ssh2_exec() 함수로 생성된 스트림이 SSH2_STREAM_EOF 상태가 되도록 기다립니다.

    #hostingforum.kr
    php
    
    $ssh = ssh2_connect($host, $port);
    
    ssh2_auth_password($ssh, $username, $password);
    
    $stream = ssh2_exec($ssh, 'ls -l');
    
    stream_set_blocking($stream, true);
    
    stream_set_timeout($stream, 10);
    
    while (!feof($stream)) {
    
        $result = fread($stream, 1024);
    
        if ($result === false) {
    
            break;
    
        }
    
    }
    
    ssh2_send_eof($stream);
    
    

    또는, SSH 명령어를 직접 실행하는 방법을 사용할 수 있습니다.
    #hostingforum.kr
    php
    
    $ssh = ssh2_connect($host, $port);
    
    ssh2_auth_password($ssh, $username, $password);
    
    $result = ssh2_exec($ssh, 'ls -l');
    
    $stream = ssh2_fetch_stream($result, SSH2_STREAM_STDIO);
    
    ssh2_send_eof($stream);
    
    

    이러한 방법을 사용하면 ssh2_send_eof() 함수를 호출할 수 있습니다.

    2025-04-14 11:20

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 11,690건 / 2 페이지

검색

게시물 검색