Linux - Samba 설치 및 구성

Samba 란 무엇입니까?

Samba (www.samba.org)는 Microsoft Windows 네트워크와 호환되는 Linux 용 무료 파일 서버 (GNU / GPL 라이센스)입니다. 즉, Linux 서버를 통해 Microsoft Window 네트워크의 컴퓨터간에 파일 및 프린터를 완벽하게 공유 할 수 있습니다. Linux 서버는 Windows 클라이언트에 의해 Windows NT 서버로 간주됩니다.

Samba는 어떻게 작동합니까?

Windows와 Linux 컴퓨터 간의 통신을 허용하는 프로토콜을 SMB (Server Message Block)라고합니다. 1985 년 IBM이 개발 한 개념 (NetBIOS)을 기반으로 1987 년 Microsoft에서 개발 한이 프로토콜은 NetBEUI (TCP / IP는 물론)를 사용합니다. TCP / IP의 장점은 널리 채택되었다는 것입니다. TCP / IP는 대부분의 운영 체제 (Unix, Linux, AmigaOS, MacOS, OS / 2 등)에서 구현됩니다. 다음 도식에 따라 :

응용 프로그램
SMB

NetBIOS

TCP / IPNetBEUI
IPX / SPX
네트워크 드라이버

아키텍처

Samba는 서버와 클라이언트로 구성됩니다. 또한 구성을 테스트하는 몇 가지 도구를 제공합니다.

  • 서버는 두 개의 응용 프로그램 (데몬이라고 함)
    • smbd, 핵심 서버, 인증 및 리소스 액세스 제공
    • nmbd, Samba에서 제공하는 서비스 표시
  • 클라이언트 : smbclient는 파일을 전송하고 프린터를 볼 수있는 인터페이스를 제공하는 리눅스 클라이언트입니다.
  • smbtar : 리눅스에서 TAR 파일로 또는 TAR 파일로 전송하기
  • testparm : smb.conf 파일 (Samba 구성 파일)의 구문을 확인합니다.

Samba 설치

Samba를 설치하기 전에 RPM 파일 또는 소스를 복구하고 클라이언트 시스템에 TCP / IP 및 NetBIOS 프로토콜을 추가해야합니다.

설치 (구성과 달리)는 구현하기가 매우 쉽습니다. RPM을 설치하고 설치하는 첫 단계로 :

 rpm -ivh samba-common-2.0.6-x.i386.rpm rpm -ivh samba-2.0.6-x.i386.rpm rpm -ivh samba-client-2.0.6-x.i386.rpm 

또는 다음을 사용할 수 있습니다.

 rpm -ivh samba - *. rpm 

삼바 - 첫 출시

설치가 끝나면 다음 명령을 실행하여 Samba 서버를 시작할 수 있습니다 (파일 공유 또는 프린터 없음).

 /etc/rc.d/init.d/smb start 

서버는 다음 행을 리턴해야합니다.

 SMB 서비스 시작 : NMB 서비스 시작 : 

다음 명령은 두 개의 데몬이 올바르게 시작되었는지 확인합니다.

 /etc/rc.d/init.d/smb status smbd (pid 1054)가 실행 중입니다 ... nmbd (pid 1056)가 실행 중입니다 ... 

이 명령을 사용하면 Samba를 다시 시작할 수 있습니다.

 /etc/rc.d/init.d/smb restart 

그러나 다음 두 명령을 사용하는 것이 좋습니다.

 /etc/rc.d/init.d/smb stop /etc/rc.d/init.d/smb start 

Samba 구성

Samba 구성은 smb.conf와 같은 단일 구성 파일을 통해 수행됩니다. 이 파일은 / usr / local / samba / lib 디렉토리에 있습니다.

이 파일은 공유하려는 리소스와 관련 사용 권한 / 제한 사항을 설명합니다. smb.conf 파일에는 여러 섹션 (대괄호로 묶은 섹션 이름이 포함 된 행 (머리글)으로 참조)이 있으며, 각 섹션은 attribute = value 유형의 매개 변수 집합으로 구성됩니다.

주석은 #으로 시작합니다.

세 가지 주요 섹션이 있습니다.

  • [global] 섹션은 서버의 일반 설정을 정의합니다.
  • [homes] 섹션은 디렉토리의 공유 설정을 정의합니다.
  • [printers] 섹션은 서버에 대한 공유 프린터 설정을 정의합니다.

[Global] 섹션

다음은 [global] 섹션의 예입니다.

 [global] # Windows 그룹과 같은 그룹 이름 workgroup = UNDERTAKER # 게스트 계정 게스트 계정 없음 = nobody; # 다중 사용자 액세스 공유 모드 = 예; # 서버의 네트워크 카드의 IP 주소 # 서브넷 마스크 interfaces = 10.194.2.100/255.255.255.0 # printcap 파일의 위치 printcap = / etc / printcap # printcap에 정의 된 모든 프린터 공유 load printers = yes # Samba 로그 파일 로그 수준 = 1 로그 파일 = / var / log / samba / log.%m # 보안 모드 : (사용자 / 공유 / 서버) security = user # 호스트가 특정 서브넷에 대한 액세스를 제한 = 15.144. 127. # allow hosts = 15.144를 허용하는 특정 시스템에 대한 액세스 차단. 제외 155.144.179.2 

홈 디렉토리 공유

[homes] 섹션은 각 사용자의 홈 디렉토리에 대한 액세스를 정의하는 데 사용됩니다. 다음은 샘플 섹션입니다.

 [HOMES] # commentaire 눈에 보이는 빈약 한 리서치 코멘트 = 레퍼토리 직원 # affilage de la resource sour tous browsing = 아니오 # 가능한 리사이저 writable = 예 create mask = 0750 

사용자 정의 디렉토리 공유

디렉토리의 이름을 가진 섹션을 작성하여 시스템의 모든 디렉토리에 대한 사용자 정의 액세스를 정의 할 수 있습니다.

예 :

 [CCM] # commentaire 시각적 인 depuis le voisinage의 리서치 comment = 레퍼토리 Ca Marche # 요청한 경로에 접근 / home / ccm # affichage de la ressource 부울 tous browseable = 아니오 # chemin d' acces a la ressource public = no # utilisateur autorise a acceder a la ressource 사용자 = jeff, meandus, tittom # 가능한 리사이클 writable = 예 create mask = 0750 

CD-ROM 드라이브 공유

다음과 같이 [cd-rom] 섹션을 생성하여 CD-ROM 드라이브를 미리 공유해야합니다 (예 : CD-ROM 드라이브를 공유 할 수 있음).

 [CD-ROM] # commentaire visible depuis le voisinage reseau 주석 = CD-ROM # chemin d' accès au lecteur 경로 = / mnt / cdrom # 접근 가능하다 tous public = 예 # 불가능한 resourc writable = 아니오 마스크 생성 = 0750 

구성 테스트

testparm 프로그램을 사용하면 구성 파일 (smb.conf)의 구문을 확인할 수 있습니다. smb.conf 파일을 수동으로 편집 할 때마다이 유틸리티를 실행하는 것이 좋습니다. testparm 구문은 다음과 같습니다.

 testparm smb.conf 

오류 메시지가 반환되지 않으면 smb.conf 파일의 구문이 정확합니다 (작업이 아닌 구문 만 검사 함).

결과를 정확하게 시각화하려면 다음 명령을 사용하여 출력을 파일로 리디렉션 할 수 있습니다.

 testparm smb.conf> / 디렉토리 / 파일 

리눅스에서 Samba 자원에 접근하기

Samba 클라이언트 (smbclient)는 Unix 시스템에서 Samba 자원에 액세스하기위한 명령 행 인터페이스를 제공합니다.

smbclient는 먼저 네트워크에있는 Samba 서버의 존재를 확인하고 공유하는 자원을 다음 명령으로 나열합니다.

 smbclient server_name_smb 

리소스가 식별되면 다음 명령을 사용하여 리소스에 액세스 할 수 있습니다.

 smbclient \\\ server_name_smb \\ ressource -U 사용자 이름 

사용자가 입력하라는 메시지가 표시됩니다. 그런 다음 FTP 명령을 전송하여 파일을 보내거나 받거나 자원의 디렉토리를 탐색하십시오.

프린터에 대한 액세스는 다음 명령을 사용하여 수행됩니다.

 smbclient \\\ server_name_smb \\ ressource -P 

/usr/local/samba/lib/etc.conf 파일의 인쇄는 다음 명령을 사용하여 수행됩니다.

 인쇄 /usr/local/samba/lib/etc.conf 

인쇄 대기열을 보려면 다음과 같이하십시오.

 꼬리 

smbclient를 중지하려면 다음을 수행하십시오.

 출구 

메시지를 보내다

Samba 클라이언트는 LanManager 클라이언트를 통해 메시지를 보낼 수도 있습니다 (원격 시스템이 WinPopUp와 같은 이런 유형의 메시지를 처리 ​​할 수있는 경우). 메시지를 보내는 구문 (1600 바이트 미만)은 다음과 같습니다.

 smbclient -M machine_name 

메시지 작성이 끝나면 Ctrl + D를 누릅니다.

공유 리소스 마운트

smbmount 및 smbumount 유틸리티를 사용하면 SMB 리소스를 원격 파일 시스템으로 마운트 / 마운트 해제 할 수 있습니다 (커널이 SMB 파일 시스템을 지원하는 한).

자원을 마운트하려면 다음을 수행하십시오.

 smbmount // servername_smb / mount_point 

자원을 마운트 해제하려면 다음을 수행하십시오.

 smbumount / mount_point 

CommentcaMarche.net에 게시 된 원본 문서

이전 기사 다음 기사

톱 팁