Skip to content

linux - cifs, nfs autofs 마운트

cifs, nfs 공유폴더를 리눅스 클라이언트가 다중의 계정을 통해 cifs 프로토콜로 autofs 방식의 마운트하는 방법이다.
추가적으로 autofs의 indirect map과 direct map 방식의 mount 설정에 대해 설명한다.

 

- 테스트 시스템 : Windows 2012R2, RHEL 6.3 x86_64 * 2EA

0. cifs 공유설정 및 마운트

구성 조건 :
조건1) 윈도우 서버의 공유폴더를 다수의 리눅스 시스템에서 cifs로 마운트 할 수 있어야 한다.
조건2) 각 리눅스 시스템의 멀티 유저가 같은 공유폴더를 각각의 마운트포인트에 마운트하여 사용할 수 있어야 한다.

 

- 윈도우 서버에서
1) d:\share 폴더 생성
2) share 폴더에 마우스 오른쪽 버튼 클릭 - 속성 - 공유 - 고급 공유 - 선택한폴더 공유 체크 - 권한 - 추가 - 고급 - 지금 찾기 - Administrator 선택 - 확인 - Administrator의 사용권한에 모든 권한 체크 - 확인

 

- 리눅스에서 그룹을 아래와 같이 생성

- 테스트 유저 1, 2를 아래와 같이 생성

 

- 서로 다른 유저로(같은그룹에속한) 각각의 마운트 포인트 디렉토리에 마운트

- /cifs1 하위에 test-folder1 폴더 생성

- /cifs2 하위에 test-folder2 폴더 생성

 

- /cifs1에서 생성된 폴더 확인

- /cifs2에서 생성된 폴더 확인

* mapoo라는 그룹에 mapoo1, mapoo2가 속해있고 cifs 마운트시 dir 및 file mode를 0770, 0660으로 설정하였으므로 서로 공유가 가능하다.

- autofs 적용
기존의 수동으로 연결된 mount point 마운트 해제

 

1. autofs indirect map 방식으로 마운트

구성 조건 :
조건 1) 위 cifs 공유 폴더 마운트를 autofs를 사용하여 마운트 구현한다.
조건 2) mapoo1, mapoo2 리눅스 계정으로 로그인 시 각각 다른 윈도우의 공유 폴더에 접근할 수 있어야 한다. 해당 공유 폴더는 mapoo1, 2 계정의 홈  디렉토리이다.
조건 3) 리눅스 계정을 로그아웃하면 일정 시간 이후 자동으로 umount 되도록 구성한다.

- mapoo1, 2 계종의 홈 디렉토리는 아래와 같음.

- 윈도우 공유볼륨에는 아래와 같은 디렉토리 존재

- autofs.master 설정

/cifs1 , /cifs2 : 마운트포인트 디렉토리이다. 이 디렉토리는 존재하지 않아도 되며, 존재하지 않을 경우 autofs 데몬 시작 시 자동으로 생성되고 데몬 정지시 사라진다.

--timeout=60 : 60초 동안 자동 마운트된 파일시스템을 사용하지 않으면 autofs가 umount를 한다.

--ghost : 실제 마운트가 되어 있지 않았더라도  디렉터리 내용을 확인할 수 있도록 허용

 

- autofs.guests1과 autofs.guests2 설정

aufofs.guest1 aufofs.guest2 에서 아래와 같이 설정을 해도 된다.

* -fstype=cifs,rw,dir_mode=0770,file_mode=0660,uid=501,gid=501,credentials=/etc/credit1.txt ://192.168.0.159/share/test-folder1
* -fstype=cifs,rw,dir_mode=0770,file_mode=0660,uid=502,gid=501,credentials=/etc/credit2.txt ://192.168.0.159/share/test-folder2

'&' 는 어떤 디렉토리든 상관없이 접근하여 디렉토리가 있으면 마운트 한다. 즉, /etc/passwd에 명시된 계정의 홈 디렉토리를 알아서 마운트 하게 됨.

- 윈도우즈 공유폴더 접근 계정 설정

- autofs 데몬 시작

- mapoo1 계정으로 로그인

- 마운트 확인

 

- mapoo2 계정으로 로그인

- 마운트 확인

- 각 볼륨 권한 확인

 

- 만약 아래와 같이 *가 아닌 test1과 같이 특정하게 설정을 하면 마운트포인트(cifs) 아래의 포인트가 test1 으로 마운트가 된다.

 

2. autofs direct map 방식으로 마운트

서버의 공유 디렉토리와 클라이언트의 마운트 포인트가 일치되게 설정하는 방법이다.
(indirect map 방식으로는 서버의 공유디렉토리와 클라이언트의 마운트포인트를 일치시킬 수 없다.)
(mount.cifs 와 같은 마운트 명령을 통해 수동으로 마운트 하는 경우는 direct map 방식으로 일치시킬 수 있다.)

 

공유서버는 2대이며 아래와 같다.

서버 1 :

OS : Windows 2012R2

IP : 192.168.0.159

Share Dir : d:\share

- 공유폴더 설정은 이 문서 윗 부분에서 설명한 것과 동일하다.

 

서버 2 :

OS : RHEL 6.3 x86_64

IP : 192.168.0.176

Share Dir : /nfs-share

- 서버 2에서 아래와 같이 nfs 공유 설정을 한다.

- 서버 2에서 nfs 서버 데몬을 기동한다.

 

- 리눅스 클라이언트에서 아래와 같이 진행을 한다.

마운트포인트인 /share와 /nfs-share 디렉토리는 만들지 않았으며 autofs 데몬이 실행되기 전까지는 해당 디렉토리가 보이지 않는다.

- auto.master 설정

- auto.direct 설정

- 계정 설정

- nfs 관련 데몬이 기동중인지 확인

- autofs 데몬 구동

-> autofs 데몬이 구동되자 마운트포인트 디렉토리가 생성되었다. 하지만 아직 마운트 상태는 아니다. 마운트포인트 내의 어떠한 디렉토리나 파일을 접근하면 자동으로 마운트가 된다.

 

- 공유 디렉토리를 접근해 본다.

 

이상이다.

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.


*