Jellyfin 서버를 처음 만들고 나서 제일 답답했던 게 뭐였냐면, 영화나 드라마 파일을 넣으려고 할 때마다 USB를 뽑았다 파일을 옮기고 다시 라즈베리파이에 꽂았다 해야 하는 게 불편했습니다. 특히 라즈베리파이를 따로 뒤쪽에 숨겨놓고 나니까, 파일 하나 넣으려고 짐을 다 치워야 하는 상황이 발생했습니다.
왜 굳이 Samba를 써야 할까?

처음엔 FTP로 해결하려고 했습니다. FileZilla 설치하고 설정도 다 했죠. 근데 4GB짜리 영화 파일 올리다가 90%에서 뻗으면 처음부터 다시 올려야 합니다. 주말 밤에 영화 보려고 준비하다가 이런 일 겪으면 진짜 현타 옵니다.
그러다 Samba를 알게되었는데, 집에서 노트북으로 받은 영화를 바로 기존에 사용하던 윈도우 파일탐색기에서 Z드라이브(라즈베리파이)로 옮기면 끝입니다. 심지어 토렌트 다운로드 경로를 아예 라즈베리파이로 설정해 놓으니까, 받자마자 Jellyfin에서 바로 볼 수 있어요. 이게 진짜 편의성입니다.
설치 전에 알아둘 것들

라즈베리파이 IP 주소부터 확인해야 합니다. 터미널에서 hostname -I 치면 나오는데, 보통 192.168.0.xxx 이런 식으로 나옵니다. 이걸 메모해두세요. Windows에서 연결할 때 필요합니다.
그리고 미디어 파일이 저장된 경로도 확인해두세요. 저는 이전에 라즈베리파이 Jellyfin 설정하기 방법 그대로 외장 SSD를 /mnt/media에 마운트해서 쓰고 있는데, 사람마다 다를 수도 있습니다.
Samba 설치하고 기본 설정하기
sudo apt update
sudo apt install samba samba-common-bin
터미널을 열고 위 명령어를 입력하여 Samba 설치합니다.
sudo nano /etc/samba/smb.conf
이제 위 명령어로 설정파일을 열고, 파일 제일 아래쪽으로 스크롤하여 아래 내용을 추가합니다.
[media-jellyfin]
comment = Media with Jellyfin permissions
path = /mnt/media
browseable = yes
writeable = yes
read only = no
valid users = admin
force user = jellyfin
force group = jellyfin
create mask = 0664
directory mask = 0775
여기서 중요한 게 force user = jellyfin 부분입니다. 이렇게 설정해야 Windows에서 넣은 파일을 Jellyfin이 바로 읽을 수 있습니다. 안 그러면 권한 문제로 스캔이 안 됩니다.
사용자 설정과 비밀번호
sudo usermod -a -G jellyfin admin
먼저 admin 계정(본인의 ssh연결 계정을 입력해야 합니다)을 jellyfin 그룹에 넣어줘야 합니다.
그다음 Samba용 비밀번호를 만들어야 하는데, 이건 라즈베리파이 로그인 비밀번호랑 달라도 됩니다. 오히려 다르게 하는 게 보안상 좋아요.
sudo smbpasswd -a admin
sudo smbpasswd -e admin #계정 활성화
비밀번호 두 번 입력하라고 나올 겁니다. 그리고 계정을 활성화합니다.
samba 서비스 재시작하고 확인하기
sudo systemctl restart smbd nmbd
위 명령을 입력하여 samba 서비스를 재시작하고 확인합니다.

smbd 서비스가 잘 돌아가는지 확인하고 active 상태면 성공입니다.
Windows에서 연결하기

파일탐색기를 실행시킨 뒤 내 PC에 마우스 우클릭 후 '네트워크 드라이브 연결'을 클릭합니다.

앞으로 사용할 드라이브 문자열을 선택한 뒤, 폴더 부분에 \\본인아이피\media-jellyfin 를 입력하고, 마침(F)를 클릭합니다.

이때 아까 설정했던 사용자 이름과 비밀번호를 입력하도록 요구할 텐데, 앞서 jellyfin그룹에 넣었던 리눅스 계정과 설정한 비밀번호를 사용하여 로그인합니다.

연결에 성공하면 파일탐색기에서 네트워크로 연결된 드라이브가 추가된 걸 확인할 수 있습니다. 이제 파일탐색기에서 드래그 앤 드롭으로 옮기거나 파일을 삭제하거나 네트워크상에서 손쉽게 관리할 수 있습니다.