2013-04-14 3 views
0

로컬 파일을 다운로드하지 않고 원격 파일을 편집하는 것이 실제로 실제로 어떻게 작동하는지 궁금합니다. Google을 사용하고 일부 게시물을 읽은 후 FTP 또는 SSH 프로토콜을 사용하여 가능하다는 것을 알게되었습니다.원격 파일 편집은 어떻게 작동합니까?

서버에 TCP/IP 소켓 연결을 설정하는 것은 특별한 클라이언트 응용 프로그램에 달려 있다고 가정하지만이 작업이 끝나면 어떻게됩니까?

누가 프로토콜을 구현해야하며 누가 원격 파일을 여는 다른 응용 프로그램에서 필요한 데이터를 얻습니까?

+0

SSH에 대해 모르겠지만 FTP를 통해 파일을 보내면됩니다. 이것을 찾으려면 실제 프로토콜 사양을 읽어야합니다. –

답변

0

응용 프로그램이 전체 파일을 로컬에서 다운로드하고 열어 변경하고 전체 파일을 다시 업로드합니다. 고전적인 예는 원격 파일을 '편집'할 수있는 WinSCP입니다. 응용 프로그램 (WinSCP)은 사용할 프로토콜 (FTP/FTPS/SFTP 등)을 알고 매개 변수 (예 : 파일을 업로드하는 원격 디렉토리, 사용자 이름, 암호, 포트 등)를 알고 있습니다. 파일이 큰 경우에도 수정 된 파일을 다운로드해야합니다.

FTP, SFTP에서 부분 파일 업데이트를 수행 할 방법이없는 것처럼 보입니다. HTTP 또는 SCP. 실제로이 작업을 수행 할 수있는 잘 알려진 오픈 소스 프로토콜은 없습니다. 거기에 구현이 있다면 독점해야합니다.

+0

고마워, 그건 나에게 의미가있다. 난 당신이 정말로 그것을 먼저 donwloading하지 않고 서버에서 파일을 편집 할 줄 알았는데. – user2035039

3

SSH를 통해 작동하는 SFTP 프로토콜 (FTP/FTPS와 섞어 사용하지 않음)은 원격 파일에 대한 블록 단위 액세스를 허용합니다. 거의 모든 SSH 서버 (sftp 하위 시스템이 허용됩니다)와 함께 작동합니다.

예를 들어,이 방법으로 원격 서버의 파일 시스템을 Windows 드라이브로 마운트하는 SFTP Net Drive 응용 프로그램을 작동시킵니다.

+0

모든 응용 프로그램에서 작동합니까? 아니면 각 응용 프로그램이 해당 응용 프로그램을 지원해야합니까? – user2035039

+0

물론, 응용 프로그램에서 SFTP를 지원하는 라이브러리를 사용해야합니다. –

0

FTPSFTP에 대한 위키 피 디아의 기사는 더 자세히 조사하고 싶다면 RFC에 대한 링크를 제공하는 것으로 보입니다.

누가 프로토콜을 구현해야하며 누가 원격 파일을 여는 다른 응용 프로그램에서 필요한 데이터를 얻습니까?

당신은 어떤 언어로 프로그램을 작성할지 모르지만 대부분의 프로그램에 적합한 ftp 및 sftp 라이브러리가 있어야합니다.

프로그램이 Linux/OS X/다른 BSD에서 실행 중이면 ftp/sftp 프로그램으로 전화를 걸어도 빠져 나갈 수 있습니다.

+0

FTP는 부분 업로드가 없으므로 (파일 중간에있는 데이터 블록을 변경할 수 없음) 이러한 작업에는 적합하지 않습니다. –

+0

죄송합니다, 충분히 구체적이지 않다고 생각합니다. 원격 파일을 편집하는 응용 프로그램을 작성하는 방법을 이해합니다. Windows에서 네트워크 드라이브와 같은 것들이 어떻게 작동하는지 궁금해하고 있습니다. 예를 들어 Word와 같은 응용 프로그램은 이러한 파일이 원격 파일이라는 것을 실제로 모릅니다. 그래서 나는 스스로에게 묻습니다. 서버에 연결을 설정하는 응용 프로그램은 어떻게 알 수 있습니까? 어떤 데이터를 전송해야합니까? – user2035039

관련 문제