Jetson Nano board 의 특정 디렉토리를 공유 디렉토리로 지정하고, 해당 디렉토리를 외부 컴퓨터에서 파일 공유 형태로 접근 가능하도록 한다.
1.삼바설치
sudo apt-get install samba
2.계정등록
sudo smbpasswd -a jetson
1) 실행과정
- 명령어를 실행하면 다음과 같은 입력 요청이 표시됩니다:
- 삼바 사용자의 비밀번호를 입력하고 확인합니다.
- 이 비밀번호는 삼바를 통해 네트워크로 접근할 때 사용됩니다.
New SMB password:
Retype new SMB password:
- 비밀번호를 설정한 후, jetson 계정이 삼바 사용자 데이터베이스에 등록됩니다.
비밀번호는 "1111" 네자리 숫자로 지정한다.
Note
jetson은 삼바에 추가할 사용자의 이름입니다. 이 이름은 반드시 리눅스 시스템에 이미 존재하는 사용자여야 합니다.
3.파일 수정
삼바(Samba)는 리눅스 시스템에서 윈도우와 파일 및 프린터를 공유할 수 있도록 지원하는 서비스입니다. 위의 설정은 삼바(Samba)의 smb.conf 파일에 사용되는 하나의 공유 디렉토리에 대한 설정 예제입니다. 아래에서 각 항목의 의미를 설명합니다:
삼바(Samba) 설정 파일인 smb.conf 파일의 기본 위치는 다음과 같습니다
vi /etc/samba/smb.conf
[jetson]
follow symlinks = yes
wide links = yes
comment = share dir
path = /home/jetson/share
valid users = jetson
browseable = yes
read only = no
guest ok = no
directory mask = 0755
1) [jetson]
- 설명: 공유 디렉토리의 이름을 정의합니다.
- 효과: 클라이언트(Windows 등)에서 삼바 서버에 연결하면 이 이름으로 디렉토리를 볼 수 있습니다.
2) follow symlinks = yes
- 설명: 심볼릭 링크(소프트 링크)를 따라갈 수 있도록 설정합니다.
- 효과: 공유 디렉토리에 있는 심볼릭 링크를 클라이언트에서 접근할 수 있습니다.
3) wide links = yes
- 설명: 심볼릭 링크가 디렉토리 경로 바깥을 가리킬 수 있도록 허용합니다.
- 효과: 심볼릭 링크를 통해 공유 디렉토리 외부의 경로도 접근 가능하게 합니다.
- 주의: 보안상 위험할 수 있으므로 신중히 사용해야 합니다.
4) comment = share dir
- 설명: 공유 디렉토리에 대한 설명(주석)을 제공합니다.
- 효과: 클라이언트가 공유 디렉토리를 탐색할 때 설명이 함께 표시됩니다.
5) path = /home/jetson/share
- 설명: 실제 공유될 디렉토리의 경로를 지정합니다.
- 효과: 이 디렉토리가 클라이언트에 공유됩니다.
6) valid users = jetson
- 설명: 이 디렉토리에 접근할 수 있는 사용자를 지정합니다.
- 효과: jetson 사용자만 디렉토리에 접근할 수 있습니다.
7) browseable = yes
설명: 클라이언트가 공유 목록에서 이 디렉토리를 탐색할 수 있도록 설정합니다. 효과: 네트워크 공유 디렉토리 목록에서 보이게 됩니다.
8) read only = no
- 설명: 디렉토리의 쓰기 권한을 설정합니다.
- 효과: 클라이언트가 디렉토리에 데이터를 저장하거나 파일을 수정할 수 있습니다.
9) guest ok = no
- 설명: 게스트(인증되지 않은 사용자)의 접근을 허용 여부를 설정합니다.
- 효과: 인증되지 않은 사용자는 디렉토리에 접근할 수 없습니다.
10) directory mask = 0755
- 설명: 디렉토리 생성 시 기본 권한을 설정합니다.
- 0755:
- 소유자: 읽기, 쓰기, 실행(7)
- 그룹: 읽기, 실행(5)
- 기타: 읽기, 실행(5)
- 0755:
- 효과: 디렉토리에 대한 권한 설정을 제어합니다.
이 설정은 기본적으로 jetson 사용자만 접근 가능하며, 쓰기 권한을 허용하고, 심볼릭 링크도 따라갈 수 있도록 구성된 공유 디렉토리를 정의합니다.
4.삼바시작
sudo systemctl restart smbd