Samaba

우분투 컴퓨터와 본체를 RealVNC로 연결하였다 근데, 본체의 파일 우분투 컴퓨터로 마치 데이터 버스 케이블 연결된 거 마냥 하고싶지 않은가?
그걸 위한 라이브러리가 Samba이다.

RealVNC 창 안으로 폴더 드래그 앤 드랍 한다고 안옮겨지는게 화나기 때문에, 이런거라도 사용하는 것이다.
Smaba는 리눅스 자체를 윈도우의 폴더처럼 인식시켜서 파일을 자유자재로 드래그 앤 드랍 할 수 있게 해주는 패키지로 나름 편리하다.
코드만 옮길꺼면 깃 쓰면 되는데, 사진 등 옮길때는 이게 참 좋다.
윈도우 탐색기에서 리눅스 폴더를 열고 편하게 파일을 옮길 수 있는게 진짜 맛있다.
이거 우분투 뿐 만 아니라 라즈베리파이도 된다.
사실 우분투보다 라파에서 진짜 꿀이다.


먼저, 라즈베리 파이 기준으로 설명하겠다.

1. Samba(삼바) 설치하기

리눅스 터미널을 열고 아래 명령어를 순서대로 입력해 하자.

# 패키지 목록 업데이트
sudo apt update

# 삼바 패키지 설치 (설치 중 'Y' 입력)
sudo apt install samba samba-common-bin

2. 공유 폴더 설정하기

설치가 끝나면 어떤 폴더를 공유할지 설정 파일에 적어줘야 한다.
보통 /home/pi 전체를 공유하면 편하다.

  1. 설정 파일 열기 ```bash sudo nano /etc/samba/smb.conf

2. **내용 추가하기**
화면 가장 맨 아래로 내려가서(화살표 키 사용), 다음 내용을 복사해서 붙여넣거나 똑같이 입력하자.  
```ini
[pi]
path = /home/pi
writeable = yes
create mask = 0777
directory mask = 0777
public = no
force user = pi

마지막 줄인 force user = pi는 원래 하면 안되지만,
이걸 해야 리눅스 내부 파일 복사 뿐 만 아니라 데스크탑에서 리눅스 내부의 폴더를 지우거나,
윈도우의 파일을 리눅스로 넣을 수 있기 때문에 해 주어야 한다.

  1. 저장하고 나오기
    • Ctrl + O 를 누르고 Enter (저장)
    • Ctrl + X (나가기)

3. 삼바 비밀번호 설정

만일 라즈베리 파이라면 라즈베리파이 기본 계정(pi)에 삼바용 비밀번호를 따로 만들어줘야 접속된다.
우리는 권한을 다 풀어버렸기 때문에, 이거 절 대 기본으로 하지 말고 좀 어렵게 해라 ㅋㅋㅋㅋ.

sudo smbpasswd -a pi

  • New SMB password: 라고 뜨면 원하는 비밀번호를 입력하고 엔터를 자. (화면에 안 보입니다)
  • Retype new SMB password: 한 번 더 입력하자.

4. 삼바 재시작

설정을 적용하기 위해 서비스를 껐다 킨다.

sudo systemctl restart smbd

5. PC에서 연결하고 상방 전송

이제 VNC가 아니라 윈도우 파일 탐색기를 킨다.

  1. 파일 탐색기 주소창에 \\IP주소 를 입력하고 엔터를 친다.
    • (예: \\192.168.0.15 )
    • 라즈베리파이면 이렇게 해도 될거다 \\raspberrypi
  2. 네트워크 자격 증명 창이 뜨면:
    • 사용자 이름: pi
    • 암호: 아까 3번 단계에서 설정한 삼바 비밀번호
  3. 이제 pi 폴더가 보일 것이다. 거기로 들어가면 라즈베리파이나 우분투 내부 파일들이 다 보인다.
  4. 이제 윈도우 폴더 쓰듯이 파일을 드래그해서 넣고 빼고 하면 된다.

이어서, 우분투 기준으로 설명하겠다.

1. 설치 명령어

터미널(단축키: Ctrl+Alt+T)을 열고 똑같이 입력하자.

sudo apt update
sudo apt install samba

2. 사용자 이름(ID) 확인하기

우분투는 사용자마다 아이디가 다르므로, 먼저 터미널에 아래 명령어를 쳐서 현재 내 아이디가 뭔지 확인하자.

whoami

(여기서 나온 결과가 chulsoo라고 가정하고 설명하겠다.
본인 아이디를 넣어야 한다.

3. 설정 파일 수정 (아이디만 바꿔서 입력)

설정 파일을 여는 것도 같다.

sudo nano /etc/samba/smb.conf

파일 맨 아래에 추가할 때, pi라고 적혀 있던 부분을 방금 확인한 ‘내 아이디’로 바꿔주자.

[myshare]
path = /home/chulsoo       <-- 여기에 'whoami'로 확인한 내 아이디 입력
writeable = yes
create mask = 0777
directory mask = 0777
public = no
force user = chulsoo       <-- 여기도 내 아이디로 변경

  • [myshare]: 윈도우에서 보일 폴더 이름이다. 원하는 대로 지으면 된다.
  • path: /home/본인아이디 경로를 적어주면 된다.

4. 비밀번호 설정 및 재시작

명령어 뒤에 pi 대신 본인 아이디를 넣자.

# 삼바 비밀번호 설정
sudo smbpasswd -a chulsoo  <-- 본인 아이디 입력

# 재시작
sudo systemctl restart smbd


우분투만의 주의점: 방화벽

라즈베리파이와 달리, 우분투는 보안상 방화벽이 켜져 있어서 외부 접속을 막는 경우가 있다.
삼바가 통과할 수 있게 문을 열어줘야 한다.

이 명령어 한 줄만 추가로 입력해 주자

sudo ufw allow samba

이제 윈도우에서 \\우분투IP주소 로 접속하면 똑같이 파일을 옮길 수 있다.