리눅스 윈도우 파일 공유 하는 방법
Windows 계열과 리눅스, 유닉스 계열을 혼합해서 사용해야하는 경우가 있습니다
서로 다른 운영체제 사이의 자원을 공유하려는 목적으로 개발된 것이
Samba 서버입니다 실무에서도 많이 사용될 수 있습니다
리눅스에서 Windows 폴더와 프린트 사용
윈도우는 공유폴더와 프린트를 제공할 수 있는 기능이 있기 때문에
리눅스 서버에 Samba 서버 없이 클라이언트 만으로 사용이 가능합니다
WinClient(Samba 서버 역할)
- WinClient 에 자원을 사용할 사용자를 추가
- WinClient 자원을 공유 시킨다
Server(Samba 클라이언트 역할)
- Samba 클라이언트 패키지 설치
- smbclient 명령어로 WinClient가 제공하는 자원 확인
- smbmount 명령어로 WinClient 가 제공한 공유폴더 마운트
실습
윈도우 폴더를 리눅스에서 사용하는 방법
Windows 파일 탐색기에
C:\smbshare\ 폴더를 하나 만들어 줍니다
폴더 이름은 상관없습니다
폴더 속성으로 들어가서 [공유] Everyone 사용자 추가 해 주고 읽기/쓰기 권한을 주고 공유하기를 해줍니다
[모든 공용 네트워크에 대해 네트워크….] 라는 메시지 박스가 나오면 "예" 를 선택해 줍니다
리눅스에서 접근을 허용하려면 리눅스 사용자를 추가하고 패스워드를 지정해 줘야합니다
cmd 를 관리자 권한으로 실행해 주고
net user root 1234 /add
명령어를 입력해줍니다
제어판의 사용자 계정에서 추가된 root 계정을 확인할 수 있습니다
리눅스에 samba 클라이언트 패키지인 samba-client, samba-common 설치해 줍니다
smbclient -L WinClientIP주소
명령어를 사용해서 공유한 폴더와 프린트가 보이는지 확인해 줍니다
mkdir 마운트할디렉토리
mount -t cifs //winclientip/공유폴더이름 /마운트할디렉토리이름/
마운트를 진행해 줍니다
umount /마운트했던디렉토리
명령어로 mount해제 할 수 있습니다
리눅스 폴더를 윈도우에서 사용하는 방법
yum -y install samba system-config-samba
공유할 디렉토리를 생성하고
chmod 707 권한을 줍니다
system-config-samba 명령어를 입력해줍니다
윈도우와 비슷하게 공유폴더를 설정해주고
samba, samba-client 서비스를 방화벽 허용해줍니다
윈도우에서 접속하기 위해
탐색기 > 컴퓨터 > 네트워크 드라이브 연결을 클릭하시고
\\ip\공유한폴더
폴더를 연결을 해줍니다
확인을 하면 Z: 드라이브가 연결된 것을 확인할 수 있습니다
smbstatus 명령어를 이용하면
현재 samba 서버에 접속한 사용자를 볼 수 있습니다
NFS와 차이점은 NFS는 리눅스,유닉스 간의 저장 공간을 공유하는 것이고
samba는 리눅스와 윈도우 사이의 저장 공간을 공유하는 것입니다
Samba 서버의 설정 파일은 /etc/samba/smb.conf 입니다
파일 내용 중 주요 내용을 확인해 보면
# ; 두가지는 주석을 의미합니다
[global] : 모든 자원의 공유를 위한 설정
- workgroup = Windows의 작업 그룹
- server string = Windodws의 네트워크에 보이는 컴퓨터 설명 이름 (생략 가능)
- netbios name = Windows의 네트워크에 참가하는 컴퓨터 이름
- hosts allow = samba 서버에 접속 허용할 IP 또는 컴퓨터 이름
- log file = samba 서버에 접속하는 컴퓨터의 접속 기록 파일
- security = 보안옵션 (user, hare, server, domain), 주로 사용자 단위로 보안설정, 보안을 하지 않으려면 share를 사용
[공유 이름] : 공유하는 디렉토리를 설정
- comment = 공유하는 디렉토리 설명 (생략 가능)
- path = 물리적인 디렉토리
- writeable = 디렉토리에 쓰기 권한이 있는지 여부
- browseable = 공유리스트를 보여줄지 여부
- guest ok : 다른 사용자도 사용하게 할지 여부(public 개념)
상세한 옵션은 man smb.conf 를 실행해서 확인할 수 있습니다
testparm 명령어를 실행하면 smb.conf 파일의 오류를 검사할 수 있습니다
Samba 사용자는 /etc/samba/smbusers 파일에 간단히 지정됩니다
user =winuser 이런식으로 한줄로 간단하게 매칭됩니다
'리눅스' 카테고리의 다른 글
리눅스 GPU 설정과 컨테이너 가이드: 생성형 AI 워크로드를 위한 단계별 설명 (0) | 2025.04.12 |
---|---|
리눅스 centos exFAT USB 드라이브 연결(마운트)방법 (0) | 2021.09.04 |
[리눅스] 커널의 watchdog란? (0) | 2021.08.23 |
댓글