190 likes | 417 Views
윈도우 호환성과 Samba. SPARCS 진준호 ALEX. Wheel Seminar. 리눅스 & 윈도우 호환. 윈도우 호환성. CD 와 플로피 디스크 공유 파티션 공유 리눅스에서 윈도우 애플리케이션 직접 실행 (Wine) 네트워크 통한 데이터 공유 (SAMBA). 윈도우 프로토콜. SAMBA. 네트워크 연결된 별도의 시스템 –> 파일 공유 ! 리눅스는 삼바와 smbfs 파일 시스템으로 지원 윈도우 프로토콜 : CIFS -> 공통 인터넷 파일시스템 프로토콜
E N D
윈도우 호환성과 Samba SPARCS진준호 ALEX Wheel Seminar
리눅스& 윈도우 호환 윈도우 호환성 • CD와 플로피 디스크 공유 • 파티션 공유 • 리눅스에서 윈도우 애플리케이션 직접 실행(Wine) • 네트워크 통한 데이터 공유(SAMBA)
윈도우 프로토콜 SAMBA • 네트워크 연결된 별도의 시스템 –> 파일 공유 ! • 리눅스는 삼바와 smbfs파일 시스템으로 지원 • 윈도우 프로토콜 : CIFS -> 공통 인터넷 파일시스템 프로토콜 -> 마이크로소프트사에서 개발한 SMB의 변종 -> 제공하는 기능 -로컬이나 서버에 있는 파일들의 액세스, 읽고 쓰기가 모두 가능 -특수한 lock을 사용하여 다른 클라이언트들과 함께 파일을 공유 -네트워크에 고장이 발생하는 경우, 자동으로 접 속을 복원 -파일 이름에 유니코드를 사용
윈도우 공유 마운트 SAMBA • 삼바의 smbmount, smbmnt유틸리티 -> 리눅스와 윈도우 간 통신 담당 -> 리눅스 파일 시스템에 윈도우 시스템에서 공유한 디렉토리마운트 • 윈도우는 TCP/IP 프로토콜만 사용하도록 • 3단계 • Smbfs파일시스템 지원을 컴파일하여커널에 추가 • Smbmount, smbmnt설치, 최소한의 삼바 설정 파일 만들기 • Mount 또는 smbmount명령 사용하여 공유 디렉토리마운트
윈도우 공유 마운트 SAMBA • smbfs, 삼바가 설치되지 않았을 때 -> 커널 설정 중 filesystems Network File Systems 섹션에서 SMB file system support 선택 커널컴파일해서 설치 또는 모듈 설치 후 적재
윈도우 공유 마운트 SAMBA • 설정 파일 만들기 -> 완전히 빈 내용의 설정 파일로 시작할 수도 있다 -> 정확한 위치에 있어야 • $ testparm - [global] workgroup = NAME (윈도우에 설정한 작업그룹명으로 교체)
윈도우 공유 마운트 SAMBA • 공유 디렉토리마운트 # smbmountshare_namemount_point options ex) # smbmount //maya/mydocs/ /windocs : maya라는 컴퓨터에서, mydocs라는 이름으로 제공하는 SMB공유를, /windocs라는 디렉토리에마운트!! -공유 접근 시 ID/PW 필요하다면 ? -> smbmount //maya/d /maya-d/ \-o credentials=/etc/samba/pw,uid=jay,gid=jay,fmask=600,dmask=700
윈도우 공유 마운트 SAMBA -증명 파일 -> username=USERNAME password=PASSWORD -uid, gid : 소유자와 그룹 명시 -fmask, dmask : 공유를 제공하는 시스템에서 허용하는 퍼미션, 논리적 AND 연산할 퍼미션 마스크 일단 한번 마운트 성공한 후 -> 시스템 부팅 중 자동으로 공유를 마운트하도록 설정 /etc/fstab에 항목 추가 : //maya/d /maya-d smbfs/ credentials=/etc/samba/pw,uid=jay,gid=jay,fmask=600,dmask=700 0 0
삼바를 사용한 SMB공유 제공 SAMBA 이번엔 반대 방향 네트워킹 ! SAMBA 사용 -> 우선 설정부터… • 설치되지 않은 경우, 삼바 컴파일 & 설치 • 삼바 설정 파일 작성, 정확성 검증 • 2개의 삼바 데몬인smbd와 nmbd시동 성공적으로 설정되면 : 윈도우>네트워크 환경에
SAMBA 설치 SAMBA • 설치 확인하기 데몬 : /usr/sbin 명령행 유틸리티 : /usr/bin 설정 파일 : /etc/samba 로그 파일 : /var/log/samba • 없다면 ? 깔지 뭐. http://www.samba.org-> 파일 내려 받고, 인스톨 파일 꼼꼼히 읽기 !! $ tar xvfz samba-latest.tar.gz $ cd samba-VERSION $ su Password : # ./configure # make # make install Configure 스크립트 실행 전에 sudo권한 필요
SAMBA 설치 SAMBA • PLUS !! -> PATH 환경 변수 : /usr/local/samba/bin 디렉토리 추가 -> /etc/man/conf 파일에 MANPATH/usr/local/samba/man MANPATH /usr/local/samba/bin /usr/local/samba/man 추가 => man 명령이 삼바 맨 페이지 찾도록 !
SAMBA 설정 SAMBA • 자신의 시스템에 맞게 삼바 설정 파일 만들기 • 설정 파일 찾기 : $ testparm (smb.conf) • key = value => 매개변수혹은 옵션 : 섹션에 들어가는 값 • 섹션 [section-name] - 공유하려는 디렉토리, 프린터 : 서비스 - 서비스에 섹션 이름 명시 - [global] : 모든 서비스에 적용할 기본값과 서비스 전반에 대한 매개 변수 포함
SAMBA 설정 SAMBA [global] workgroup = METRAN (작업그룹명으로 변환) encrypt passwords = yes wins support = yes local master = yes [homes] browsable = no read only = no map archive = no 홈 디렉토리 공유 지시
SAMBA 설정 SAMBA [printers] printable = yes printing = BSD (프린팅 시스템에 따라 LPRng orCUPS) path = /var/tmp (네트워크로 받은 바이너리 파일 임시 저장 후 프린트 시스템 큐에 추가, 누구든 쓸 수 있어야) [data] path = /export/data (원하는 만큼 공유 디렉토리 추가) read only = no map archive = no 프린터를 네트워크 클라이언트에서 사용할 수 있게 디렉토리 공유 방법
SAMBA 설정 SAMBA Smb.conf파일 만든 후-> 오류 및 불일치 사항 점건 $ testparm Load smbconfig files from /usr/local/samba/lib/smb/conf Processing section “[homes]” Processing section “[printers]” Processing section “[data]” Loaded services file OK. Press enter to see a dump of your service definitions 이거 나오면 오케이 !!! Ctrl + C 눌러 종료.
사용자 추가 SAMBA • 클라이언트 -> 삼바 인증 받아야 • # smbpasswd –a username New SMB password : Retype new SMB password : • 리눅스 계정에 사용한 ID/pw와 같게 • 추가 시 1. 해당 사용자가 리눅스 계정 가지고 있는지 점검 2. [homes] 디렉토리 있는지 점검
SAMBA 데몬 시동걸기 SAMBA • # smbd, # nmbd -> 삼바 동작을 위해서는 둘 다 실행중이어야 한다 • ps ax로 확인 ! • 데몬 중지하려면 # killall– TERM smbdnmbd • 시스템 부팅 시 삼바 데몬이 자동 실행되게 하려면? -> 레드햇, suSE리눅스: # /etc/init.d/smb start(;stop;restart)
공유 디렉토리접근해보기 SAMBA • $ smbclient // localhost/data added interface ip=172.16.1.3 bcast=172.16.1.255 nmask=255.255.255.0 Password: Domain=[METRAN] OS=[Unix] Server=[Samba 2.2.5] smb: \> • smb프롬프트에 smbclient명령을 입력해보자! (ftp와 유사)