[LINUX] CIFS를 이용한 외부 서버 파일 시스템 접근
CIFS를 이용하여 외부 파일시스템에 접근하려면 외부 시스템에서 먼저 Samba를 이용한 서버가 구성이 되어 있어야 한다. 우선 외부 서버가 Samba로 구성된 서버가 있다고 가정하고 CIFS를 이용해 접근하는 방법에 대해 알아보자. CIFS는 Common Internet File System의 약자로, cifs-utils는 Linux에서 CIFS/SMB (Server Message Block) 파일 시스템을 관리하기 위한 유틸리티다. cifs-utils 라는 유틸리티를 설치하면 외부 서버의 파일시스템에 접근이 가능하다.
- cifs-utils 확인
설치가 되어 있다면 아래와 같이 cifs-utils의 정보가 출력된다. 정보가 출력되지 않는다면 설치가 되어 있지 않으므로 다음 코드를 이용해 cifs-utils를 설치해야 한다.
# Redhat/CentOS
$ rpm -qa | grep cifs-utils
# Ubuntu
$ dpkg -l | grep cifs-utils
- cifs-utils 설치
# Redhat/CentOS
$ yum install cifs-utils
# Ubuntu
$ apt install cifs-utils
- 마운트 디렉토리 생성
외부 파일 시스템을 마운트할 디렉토리를 생성해야 한다. 외부 파일 시스템을 마운트하면 /mnt/cifs로 이동 시 외부 파일 시스템에 접근이 가능하다.
$ mkdir /mnt/cifs
- 외부 파일시스템 마운트
여기서 "서버주소"는 외부 파일 시스템이 위치한 서버의 주소이고, "공유폴더"는 공유된 폴더의 경로이다. "사용자이름", "비밀번호"는 외부 파일 시스템에 액세스하기 위한 인증정보를 넣어야 한다. "도메인"은 Windows 도메인이 있는 경우 해당 도메인을 지정합니다. 리눅스 서버 또는 도메인이 없는 경우에는 생략한다.
$ mount -t cifs //서버주소/공유폴더 /mnt/cifs -o user=사용자이름,password=비밀번호,domain=도메인
$ mount -t cifs //playground.jiurinie.com/data /mnt/cifs -o user=jiurinie,password=jiurinie
- 외부 파일시스템 마운트 확인
df -h 명령어를 통해 성공적으로 외부 파일시스템이 마운트 되었는지 확인한다. cd /mnt/cifs로 이동하면 playgorund.jiurinie.com/data 파일시스템에 접근이 가능하다.
$ df -h
Filesystem Size Used Avail Use% Mounted on
...
/dev/mapper/centos-root 36G 4.0G 32G 12% /
//playground.jiurinie.com/data 100G 48G 52G 48% /mnt/cifs
- 마운트 해제
외부 파일시스템에 접근이 더 이상 필요 없다면 아래 명령어로 마운트 해제가 가능하다.
$ umount /mnt/cifs
- 지속적인 마운트
mount 명령을 이용한 수동으로 마운트한 파일시스템은 시스템 재부팅 시에는 유지되지 않으므로 다시 마운트 해야 한다. 재부팅 시에도 마운트가 유지되려면 /etc/fstab을 수정해야 한다.
$ vi /etc/fstab
/dev/mapper/centos-root / xfs defaults 0 0
//playground.jiurinie.com/data /mnt/cifs cifs username=jiurinie,password=jiurinie 0 0
- 마운트 및 확인
/etc/fstab 파일을 수정한 후에는 mount -a 명령어를 통해 수정된 내용을 즉시 적용(마운트)이 가능하다. fstab 파일을 잘못 수정한 경우에는 부팅이 안될 수 있다. mount -a 명령어는 fstab에 잘못 기입된 오류들도 체크를 하여 알려주므로 명령어를 사용하여 혹시 있을 수 있는 오류를 확인하는 것이 좋다.
$ mount -a
'OS & Server > Linux' 카테고리의 다른 글
[Apache Tomcat] Context docBase를 이용하여 웹 어플리케이션에서 파일 시스템 접근 (0) | 2023.06.02 |
---|---|
[Apache Tomcat] maxPostSize, maxParameterCount (0) | 2023.03.29 |
[Linux] 리눅스 마운트 디렉토리 경로 변경 (6) | 2023.02.21 |
[Linux] 리눅스에서 쉘 스크립트(Shell Script)로 명령어 실행 (0) | 2023.02.15 |
[Linux] 날짜를 기준으로 생성 및 수정된 파일 찾기 (0) | 2023.01.25 |
댓글