1.14. smbclient 유틸리티를 사용하여 SMB 공유에 액세스

smbclient 유틸리티를 사용하면 명령줄 FTP 클라이언트와 마찬가지로 SMB 서버의 파일 공유에 액세스할 수 있습니다. 예를 들어 공유 영역에 파일을 업로드하고 다운로드할 수 있습니다.

사전 요구 사항

  • samba-client 패키지가 설치되어 있습니다.

1.14.1. NetNamespaceclient 대화형 모드가 작동하는 방법

예를 들어 DOMAIN\user 계정을 사용하여 서버에서 호스팅되는 예제 공유를 인증하려면 다음을 수행합니다.

# smbclient -U "DOMAIN\user" //server/example
Enter domain\user's password:
Try "help" to get a list of possible commands.
smb: \>

Net Namespaceclient 가 공유에 성공적으로 연결된 후 유틸리티가 대화형 모드로 전환되고 다음 프롬프트가 표시됩니다.

smb: \>

대화형 쉘에서 사용 가능한 모든 명령을 표시하려면 다음을 입력합니다.

smb: \> help

특정 명령에 대한 도움말을 표시하려면 다음을 입력합니다.

smb: \> help command_name

추가 리소스

  • pvcclient(1) 도움말 페이지

1.14.2. 대화형 모드에서 smbclient 사용

-c 매개변수 없이 NetNamespaceclient 를 사용하는 경우 유틸리티가 대화형 모드를 시작합니다. 다음 절차에서는 SMB 공유에 연결하고 하위 디렉터리에서 파일을 다운로드하는 방법을 보여줍니다.

절차

  1. 공유에 연결합니다.

    # smbclient -U "DOMAIN\user_name" //server_name/share_name
  2. /example/ 디렉터리로 변경합니다.

    smb: \> d /example/
  3. 디렉터리에 파일을 나열합니다.

    smb: \example\> ls
      .                    D         0  Thu Nov 1 10:00:00 2018
      ..                   D         0  Thu Nov 1 10:00:00 2018
      example.txt          N   1048576  Thu Nov 1 10:00:00 2018
    
             9950208 blocks of size 1024. 8247144 blocks available
  4. example.txt 파일을 다운로드합니다.

    smb: \example\> get example.txt
    getting file \directory\subdirectory\example.txt of size 1048576 as example.txt (511975,0 KiloBytes/sec) (average 170666,7 KiloBytes/sec)
  5. 공유에서 연결을 끊습니다.

    smb: \example\> exit

1.14.3. 스크립팅 모드에서 smbclient 사용

-c 매개 변수를qcow client 에 전달하는 경우 원격 SMB 공유에서 명령을 자동으로 실행할 수 있습니다. 이를 통해 스크립트에서 smbclient를 사용할 수 있습니다.

다음 절차에서는 SMB 공유에 연결하고 하위 디렉터리에서 파일을 다운로드하는 방법을 보여줍니다.

절차

  • 다음 명령을 사용하여 공유에 연결하고 example 디렉터리로 변경하고 example.txt 파일을 다운로드합니다.
# smbclient -U DOMAIN\user_name //server_name/share_name -c "cd /example/ ; get example.txt ; exit"