■ 파일 관리
1. 파일 Owner, Group 변경
· 명령어: chown owner:group file
=> -R 옵션: 경로와 그 하위 파일들을 모두 변경한다.
=> -h 옵션: 심볼릭 링크 자체 파일의 Owner, Group 변경 / 적용하지 않으면 심볼릭 링크가 가리키는 파일의 소유자가 변경된다.
- 변경은 슈퍼 유저만 가능하다.
· 실습
1) Owner만 변경
2) Group만 병경
3) Owner, Group 모두 변경
4) 변경 시 링크 파일의 변경 확인
- 링크 파일은 바뀌지 않는다.
5) -h 옵션 없이 링크 변경했을 때
- 링크 파일이 아닌 가리키고 있는 b.txt가 변경된다.
6) -h 옵션 추가 후 링크 변경했을 때
- 링크파일 link-b.txt만 변경된다.
2. 파일 권한 변경
· 명령어: chmod [Mode(표현)] file
=> -R 옵션: 경로와 그 하위 파일들을 모두 변경한다.
- 변경은 파일 소유주나 슈퍼 유저만 가능하다.
- ●: 파일종류
- ●: Owner 권한
- ●: Group 권한
- ●: Other 권한
· 권한 의미
* https://eunguru.tistory.com/115 참고
· 문자 표현
1) 대상
- u: User
- g: Group
- o: Other
- a: all
2) 연산
- "+": 추가
- "-": 제거
- "=": 해당 권한으로 설정, 기존 권한은 사라짐
3) 권한
- r: Read
- w: Write
- x: Execute
Ex>
- u, g, o에 모든 권한 부여
- u에 rwx 권한 제거
· 8진수 표현
- ●: 특수권한
- ●: Owner 권한
- ●: Group 권한
- ●: Other 권한
1) 표현 숫자
- r: 4
- w: 2
- x: 1
- s(UID): 4
- s(GID): 2
- t: 1
2) 표현 방법
- 0: ---
- 1: --x
- 2: -w-
- 3: -wx
- 4: r--
- 5: r-x
- 6: rw-
- 7: rwx
Ex>
- 0755에 해당하는 rwxr-xr-x로 변경된 것을 확인할 수 있다.
- 특수권한에 1을 줬으므로 Sticky Bit의 표현인 t가 뒤쪽에 생긴 것을 확인할 수 있다.
- 특수권한에 4를 줬으므로 SETUID의 표현인 s가 Owner 권한에 생긴 것을 확인할 수 있다.
- 특수권한에 5를 줬으므로 4 SETUID와 1 Sticky Bit의 표현인 s가 Owner 권한에, t가 뒤쪽에 생긴 것을 확인할 수 있다.
- 특수권한에 7을 줬으므로 2 SETGID가 추가되어, Group 권한에 s가 추가된 것을 확인할 수 있다.
3. File ACL - setfacl / getfacl
· 명령어: setfacl [Option] [Permission] [File / Directory]
- 추가적으로 Permission을 수정할 수 있다.
=> -R 옵션: 경로와 그 하위 파일들을 모두 변경한다.
=> -m 옵션: modify, 권한 수정
=> -x 옵션: remove=acl, 해당 권한 삭제
=> -k 옵션: remove-default, default 권한 전부 삭제
Ex>
- setfacl -m u:aa:rw a.txt: a.txt에 user 권한에 aa 사용자 rw 권한을 추가한다.
- setfacl -x u:aa: a.txt: a.txt에 aa 사용자 권한을 제거한다.
- setfacl -m d:u::rw,d:g::x,d:o::w a.txt: d는 default로 이후 해당 Directory에 생성하는 모든 파일들은 해당 권한으로 상속(설정)된다. (Directory에만 적용할 수 있다)
- setfacl -m m::x a.txt: m은 mask로 추가되는 퍼미션에 대해 제한한다(최대 권한)
=> 기본 Owner와 Other 권한은 제외되고, 기본 Group과 추가 Owner, Group, Other에 대해서 제한한다.
· 명령어: getfacl [Option] [File / Directory]
- Permission 정보 확인
=> -R 옵션: Directory인 경우 해당 경로와 그 하위 Directory들을 모두 확인한다.
=> -d 옵션: 기본정보 확인
Ex>
- getfacl a.txt
· 실습
- 해당 파일에 대해 aa 이외에도 추가적으로 user b가 rwx 권한을 가지게 된다.
- Default 권한을 주게 되면 u만 추가해도 g, o(해당 디렉터리의 기본 권한)도 같이 추가된다.
- mask를 설정하면 위와 같이 #effective가 나오는데 현재 적용되는 권한을 얘기한다. mask가 rw이므로 group에서 x의 권한은 적용되지 않는다.
- 하위 Directory인 subD의 경우, 상위 Directory인 dX의 권한을 그대로 가지고 온 것을 알 수 있다.
- 단, mask는 적용되지 않는다.
- 옵션 -k로 삭제하는 경우 default 권한이 모두 삭제된다.
4. umask
· 명령어: umask 0222
=> 0222 대신 원하는 umask 값을 설정하면 된다(일회성 설정)
=> umask만 쓴다면 현재 쉘에서 적용되는 umask값을 출력한다.
- 기본으로 생성되는 File과 Directory의 권한은 허가권 - umask 값을 기준으로 설정된다.
- File 허가권: 666
- Directory 허가권: 777
- Root계정의 umask: 022
- 일반 사용자의 umask: 002
=> Root계정의 경우, File은 644 / Directory는 755
=> 일반 사용자의 경우, File은 664 / Directory는 775
'Server > Cent OS' 카테고리의 다른 글
Linux 디스크 관리 - Quota (0) | 2019.07.08 |
---|---|
Linux 디스크 관리 (0) | 2019.07.05 |
Linux 사용자 관리 - /etc/passwd & /etc/shadow & chage (0) | 2019.07.02 |
Linux 사용자 관리 - 명령어 (0) | 2019.07.02 |
Linux 파일 관리 (0) | 2019.07.02 |