NFS 실습
- 클라이언트와 서버에 동일 사용자가 있을때 확인
- 클라이언트 에만 있는 사람 확인
1. Server 시스템 설정
1) mkdir a1 ~ a7 디렉터리 생성
2) Server 의 계정 생성
3) /etc/exports 환경 설정 파일 수정
디렉터리 |
rw / ro 모드 |
all_squash 여부 |
root_squash 여부 |
/home/a1 |
읽고쓰기 |
x |
클라이언트와 서버의 root 를 매핑 |
/home/a2 |
읽고쓰기 |
접속하는 모든 사용자를 nobody 로 매핑 |
x |
/home/a3 |
읽고쓰기 |
클라이언트와 서버의 사용자 매핑 |
x |
/home/a4 |
읽고쓰기 |
접속하는 모든 사용자를 nobody 로 매핑 |
클라이언트의 root 를 nobody로 매핑 |
/home/a5 |
읽고쓰기 |
접속하는 모든 사용자를 nobody 로 매핑 |
클라이언트와 서버의 root 를 매핑 |
/home/a6 |
읽고쓰기 |
클라이언트와 서버의 사용자 매핑 |
클라이언트의 root 를 nobody로 매핑 |
/home/a7 |
읽고쓰기 |
클라이언트와 서버의 사용자 매핑 |
클라이언트와 서버의 root 를 매핑 |
4) 데몬 실행
[ systemctl start nfs.service ]
2. Client 시스템 설정
1) 유저 생성
- 서버와 클라이언트의 유저 비교
구분 |
서버 ( name / UID ) |
클라이언트 ( name / UID ) |
root |
root / 0 |
root / 0 |
계정명과 UID 동일 |
hong / 1000 |
hong / 1000 |
계정명 일치 , UID 불일치 |
jeong / 1010 |
jeong / 1100 |
계정명 불일치 , UID 일치 |
ming / 1001 |
min / 1001 |
2) mkdir a1 ~ a7 디렉터리 생성 ( 서버 디렉터리 마운트할 공간 )
3) 마운트 수행하여 계정 확인
① /home/a1 마운트
- root 계정
: 파일을 생성하고 소유자를 확인해보면 root로 표시된다.
- 일반 사용자 계정
1) hong 계정 ( 서버와 클라이언트 동일 계정명 , UID )
- 클라이언트에서 파일 생성
- 서버에서 파일 확인
: 동일 계정명, 동일 UID이기 때문에 같은 소유자와 그룹명으로 파일이 생성된다.
2) jeong 계정 ( 서버와 클라이언트 동일 계정명 , 다른 UID )
- 클라이언트에서 파일 생성
: 클라이언트에서는 jeong이라는 계정으로 정상 표시된다.
- 서버에서 파일 확인
: 서버에는 해당 UID 값이 없기 때문에 클라이언트의 소유자와 그룹명이 UID 값으로 표시된다
3) min / ming 계정 ( 서버와 클라이언트 다른 계정명 , 동일 UID )
- 클라이언트에서 파일 생성
- 서버에서 파일 생성
: UID는 서버와 클라이언트 모두 동일하지만, 계정명이 다르기 때문에 각각 명시된 계정명으로 표시된다.
② /home/a2 마운트
- 루트와 일반사용자 계정
: all_squash 정책에 의해 루트와 일반사용자 모두 nobody 로 매핑된다.
③ /home/a3 마운트
- 루트 계정
: root_squash 를 별도 설정 하지 않았지만, 디폴트로 root_squash 가 설정된다.
- 일반 사용자
클라이언트 파일 생성
서버 파일 확인
: 일반사용자에 대해서는 /home/a1 과 동일하게 적용된다.
④ /home/a4 마운트
- 루트계정 과 일반 계정
: 정책에 의해 root 와 일반 사용자 모두 nobody로 매핑된다.
⑤ /home/a5 마운트
- 루트계정 과 일반 계정
: no_root_squash 가 적용되어 있으나, all_squash 정책에 의해 모든사용자가 nobody로 매핑
⑥ /home/a6 마운트
- 클라이언트
- 서버
: 일반 사용자는 /home/a1 과 동일하게 적용되며, root 계정은 nobody로 매핑된다.
⑦ /home/a7 마운트
- 클라이언트 파일 확인
- 서버 파일생성 및 확인
: root 계정은 root 계정으로 생성되며, 일반사용자에 대해서는 /home/a1 과 동일시 적용