[Linux]Part5) 원격 파일시스템을 마운팅하기(CIFS)
NFS(Network File System)
, sshfs
그리고 CIFS(Common Internet File System)
는 모두 다른 방식으로 원격 파일 시스템을 마운트하여 로컬 시스템에서 원격 파일에 접근하는 기술입니다. 아래에서 각각의 기술을 비교 설명하겠습니다.
- NFS(Network File System):
- 기술: NFS는 클라이언트와 서버 간의 파일 공유를 위한 프로토콜입니다. 공유 디렉터리를 마운트하여 원격 파일에 접근할 수 있습니다.
- 보안: 기본적으로 암호화되지 않은 통신을 사용하므로, 추가적인 보안 설정이 필요합니다.
- 설정: 서버와 클라이언트 간의 설정 및 마운트 포인트 설정이 필요합니다.
- 운영체제 지원: 다양한 운영체제에서 지원되며 주로 UNIX 및 Linux 시스템에서 사용됩니다.
- SSHFS(SSH File System):
- 기술: SSHFS는 SSH 프로토콜을 기반으로한 파일 시스템 마운트 기술입니다. 로컬 시스템과 원격 호스트 사이의 암호화된 연결을 통해 파일을 전송하고 접근합니다.
- 보안: 데이터 전송이 SSH 암호화를 통해 이루어지므로 보안적으로 안전합니다.
- 설정: SSH 키 기반의 접속을 위해 개인 키와 공개 키가 필요하며, 원격 호스트의 공개 키를 ~/.ssh/known_hosts에 등록해야 합니다.
- 운영체제 지원: 주로 Linux 및 Unix 기반 시스템에서 사용됩니다.
- CIFS(Common Internet File System):
- 기술: CIFS는 Windows 파일 공유 프로토콜로, 로컬 및 원격 파일 시스템 간의 연결을 위해 사용됩니다.
- 보안: Windows 기반의 프로토콜이지만, 암호화 옵션을 통해 데이터 보안을 향상시킬 수 있습니다.
- 설정: 로그인 및 권한 설정 등 Windows 파일 공유에 관련된 설정이 필요합니다.
- 운영체제 지원: Windows 및 다른 운영체제에서도 사용 가능하지만, 주로 Windows에서 사용됩니다.
이러한 원격 파일 시스템 기술들은 각각의 장단점과 용도에 따라 선택되어야 합니다. 보안, 편의성, 운영체제 지원 등을 고려하여 적합한 기술을 선택하실 수 있습니다. 순서대로 설정 방법 및 사용법에 대해 알아보겠습니다.
1. NFS(Network File System): Linux Server – Linux Client
2. NFS(Network File System): NAS Server – Linux Client
3. SSHFS(SSH File System)
4. CIFS(Common Internet File System): Linux Server – Windows Client
5. CIFS(Common Internet File System): Windows Server – Linux Client
5. CIFS(Common Internet File System): Windows Server – Linux Client

출처: https://www.geeksforgeeks.org/what-is-cifs-common-internet-file-system/
▣ Windows를 CIFS 서버로 설정
- 윈도우 컴퓨터 관리에서 SAMBA 접속을 위한 root 사용자 및 비밀번호 등록
– “컴퓨터관리 > 시스템 도구 > 로컬 사용자 및 그룹 > 사용자 > 새 사용자” 메뉴 클릭
– SAMBA 서비스 접속을 위한 사용자 등록 - 윈도우 공유 폴더 생성 및 공유 설정
– 탐색기에서 공유 폴더 생성(C:\shared)
– 탐색기에서 공유 폴더(C:\shared) 선택 후 오른쪽 마우스 클릭 : “속성” 메뉴 선택
– “속성 > 공유 > 고급 공유” 페이지로 이동하여 “선택한 폴더 공유”를 체크하고 “권한” 버튼 클릭
– “공유 사용 권한 > 추가 > 고급 > 지금 찾기” 버튼을 클릭하여 SAMBA 서비스 접속을 위한 사용자(root)를 선택하고 “확인” 버튼 클릭 - 엑세스 권한 부여
– 탐색기에서 공유 폴더(C:\shared) 선택 후 오른쪽 마우스 클릭 : “엑세스 권한 부여 > 특정사용자” 메뉴 선택
– 사용 권한 수준을 읽기/쓰기로 변경 후 “공유” 버튼을 클릭하면 폴더가 공유됩니다.
▣ Linux를 CIFS Client로 설정
- 윈도우의 공유 폴더를 확인합니다.
–smbclient -L windows_ip
명령어로 확인합니다.[root@centos8 ~]# smbclient -L 58.xxx.xxx.xxx Enter WORKGROUP\root's password: Sharename Type Comment --------- ---- ------- ADMIN$ Disk 원격 관리 C$ Disk 기본 공유 D$ Disk 기본 공유 IPC$ IPC 원격 IPC shared Disk Reconnecting with SMB1 for workgroup listing. do_connect: Connection to 58.xxx.xxx.xxx failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND) Failed to connect with SMB1 -- no workgroup available
- 마운트 포인팅 디렉토리 생성 및 마운팅 실행
[root@centos8 ~]# mkdir -p /mnt/cifs [root@centos8 ~]# mount -t cifs -o rw,username=root,password=root //58.xxx.xxx.xxx/shared /mnt/cifs [root@centos8 ~]# df -hT Filesystem Type Size Used Avail Use% Mounted on ----- More ----- //58.xxx.xxx.xxx/shared cifs 238G 129G 110G 55% /mnt/cifs
- 파일 및 디렉토리를 Linux에서 생성한 후 Windows 탐색기에서 확인할 수 있습니다.
[root@centos8 ~]# touch /mnt/cifs/filebyLinux [root@centos8 ~]# mkdir /mnt/cifs/folderbyLinux