추가 소프트웨어를 설치하지 않고 LAN에 있는 두 Ubuntu 컴퓨터 간에 파일을 어떻게 전송할 수 있습니까?

추가 소프트웨어를 설치하지 않고 LAN에 있는 두 Ubuntu 컴퓨터 간에 파일을 어떻게 전송할 수 있습니까?

두 개의 Ubuntu 컴퓨터 간에 파일을 공유할 수 있도록 Samba 또는 openssh-server를 설치할 수 있다는 것을 알고 있습니다. 파일을 공유하는 방법이 있나요없이추가 패키지를 설치하시겠습니까?

동일한 LAN에 있는 두 시스템에 Ubuntu를 설치했지만 인터넷에 연결되지 않았습니다. openssh-server가 두 시스템 모두에 설치되지 않았기 때문에 일반적인 파일 전송 방법(scp)이 실패했다는 사실을 발견했습니다. 추가 패키지를 설치하지 않으면 개인 파일 공유를 사용할 수 없었습니다. 나는 전송을 위해 netcat을 사용하게 되었는데, 이는 차선책이고 일반 사용자에게는 직관적이지 않습니다.

따라서 즉시 사용 가능한 Ubuntu 설치(또는 적어도 Ubuntu 데스크탑 CD에서 사용할 수 있는 패키지)를 사용하여 이 작업을 수행하는 방법을 아는 사람이 있는지 알고 싶습니다.

감사해요!

답변1

를 사용하여 특정 디렉토리로 이동한 cd후 다음 명령을 사용하여 현재 디렉토리를 웹 서버로 제공할 수 있습니다.

python -m SimpleHTTPServer

다른 기계에서 주소로 이동http://server-ip:8000/

여기서 "server-ip"는 원본 컴퓨터의 "inet addr:" 아래에서 "ifconfig"를 수행할 때 표시되는 것입니다. 예를 들어 원본 컴퓨터에서 ifconfig의 출력이 다음과 같이 시작되는 경우:

eth0      Link encap:Ethernet  HWaddr 00:30:67:d5:a7:a4  
          inet addr:10.0.0.3  Bcast:10.0.0.255  Mask:255.255.255.0
          ...

그런 다음 대상 컴퓨터에서 브라우저가 다음을 가리켜야 합니다.

 http://10.0.0.3:8000/

답변2

SimpleHTTPServerPython 모듈(이것은 훌륭하고 가장 간단한 방법입니다) 보다 더 빠른 것을 원한다면 netcat( nc유틸리티)을 사용할 수 있습니다. 원시 TCP를 사용하므로 HTTP 프로토콜과 함께 제공되는 오버헤드가 발생하지 않습니다.

예를 들어, germany.local 호스트에서 rance.local 호스트(둘 다 ubuntu 실행)로 파일을 복사하려는 경우 config.xml다음 단계를 따라야 합니다.

  1. 대상 호스트 franc.local에서 다음을 실행합니다.

    nc -l -p 7000 > copied_config.xml
    

    (포트 7000에서 들어오는 데이터를 수신하고 해당 데이터를 file 에 쓰는 nc 프로세스를 시작합니다 copied_config.xml)

  2. 소스 호스트 german.local에서 다음을 실행합니다.

    nc -q 0 france.local 7000 < config.xml
    

그게 다야!

또한 확인할 수 있습니다이 유용한 하우투더 자세한 지침을 보려면

관련 정보