■ 4. 권한관리
리눅스에서
파이썬의 배치파일을 실행하거나 R배치 파일을 실행하거나
하둡을 설치하고 운영을 할 때 여러가지 문제들이 발생하는데
그 중에 많은 문제들이 권한에 관련한 오류들이 많다.
그래서 권한관리를 잘 알아둬야 한다.
*권한관리에 대한 명령어 3가지
1. chmod (change mod)
2. chown (change owner)
3. chattr (change attribute객체)
*권한 관리표
번호 권한 대표문자 파일 디렉토리
1 읽기권한 r 읽고, copy 디렉토리에서 ls 가능
2 쓰기권한 w 수정 디렉토리에서 파일 생성가능
3 실행권한 x 실행 디렉토리에서 cd로 접근가능
*ls -l 로 특정 파일을 조회했을 때 나오는 권한부분을 해석
$ls -l emp.txt
-rw-r--r-- 1 oracle oinstall 1379 Dec 19 10:44 emp.txt
↑
권한
*권한 부분을 좀 더 상세하게 분석하시오!
- rw- r-- r--
d
↑ ↑ ↑ ↑
디렉토리인지(-) 파일의 소유자의 그룹의 권한 기타유저
파일인지(d)를 나타냄 권한
※권한관리 단축어 정리
1. u : 유져 1. r : 읽기
2. g : 그룹 2. w : 쓰기
3. o : 기타 유져 3. x : 실행
문제.
emp.txt 의 소유자의 권한을 읽기만 가능하도록 수정하시오
[orcl:~]$ chmod u-w emp.txt
[orcl:~]$ ls -l emp.txt
-r--r--r-- 1 oracle oinstall 1379 Dec 19 10:44 emp.txt
설명:
chmod u-w emp.txt
↑
유저의 쓰기 권한을 뺏어라
$ vi emp.txt 쳐서 들어가면 맨 아래에 readonly 가 뜬다.
※ read only 파일도 !(느낌표) 를 붙이고 저장하면
강제종료되어서 저장된다.
**느낌표가 강제종료
문제.
emp.txt 의 소유자의 권한에 읽기 권한도 없애시오!
$ chmod u-r emp.txt
$ vi emp.txt
"emp2.txt" [허용 안 됩니다] "
아무내용 안뜨고 맨 하단에 위와같은 문구만 뜸.
[orcl:~]$ ls -l emp.txt
----r--r-- 1 oracle oinstall 1390 Dec 19 11:42 emp.txt
**w을 뺏었을때보다 r이 하나 더 줄어들었음을 볼 수 있다
문제.
emp.txt 에 대해서 소유자, 그룹, 기타유저에 대해서
읽기, 쓰기,실행권한을 모두 넣으시오 !
※권한관리 단축어 정리
1. u : 유져 1. r : 읽기
2. g : 그룹 2. w : 쓰기
3. o : 기타 유져 3. x : 실행
[orcl:~]$ chmod ugo+rwx emp.txt
[orcl:~]$ ls -l emp.txt
-rwxrwxrwx 1 oracle oinstall 1390 Dec 19 11:42 emp.txt
문제.
oracle 유져(소유자)는 emp.txt 에 대해서 무조건 읽기만 할 수 있게하고
쓰지는 못하게 하며
그룹과 다른 기타유저에 대해서는 읽기,쓰기,실행을 다 못하게
하시오
[orcl:~]$ chmod u-wx emp.txt
[orcl:~]$ chmod go-rwx emp.txt
[orcl:~]$ ls -l emp.txt
-r-------- 1 oracle oinstall 1390 Dec 19 11:42 emp.txt
한번에 하는 방법
[orcl:~]$ chmod u-wx,go-rwx emp.txt
*최상위 계정인 root 유져로 접속하는 방법?
$ su -
패스워드 :
[root@edydr1p0 ~]#
***$ 에서 # 으로 바뀐걸 볼 수 있다.
*oracle 유저가 chmod 명령어를 수행하지 못하도록 막는 명령어
# chattr +i emp.txt
[root@edydr1p0 oracle]# chattr +i emp.txt
※ chattr 의 +i :
i : immutable 의 뜻으로, 이 속성은 해당파일의 변경,삭제,파일추가
및 링크파일도 만들 수 없게 된다.
변경추가가 거의 없는 부팅관련 파일들에 설정하면
부팅되지 않는 문제로 인한 시스템장애를 줄일 수 있다.
+ : i 의 명령을 부여한다.(add attribute), 작동하게 한다.
*다시 oracle 유져로 접속해서 chmod 명령어를 emp.txt 에 수행해본다.
# su - oracle
$ whoami
$ ls -l emp.txt
$ chmod u-r emp.txt
[orcl:~]$ chmod u-r emp.txt
chmod: changing permissions of `emp.txt': Operation not permitted
문제.
다시 oracle 계정이 emp.txt 파일을 chmod 로 권한수정 할 수 있도록
하시오
$ su -
password : oracle
# cd /home/oracle
# chattr -i emp.txt (아까랑 반대로 -i)
# su - oracle
[orcl:~]$ chmod o-r emp.txt
[orcl:~]$ chmod o+r emp.txt
$ ls -l emp.txt
[orcl:~]$ ls -l emp.txt
-r-------- 1 oracle oinstall 1390 Dec 19 11:42 emp.txt
■ 권한을 설정하는 숫자
0--------> 퍼미션을 허용하지 않겠다.
1-----> 실행(x) 퍼미션을 허용하겠다.
2-----> 쓰기(w) 퍼미션을 허용하겠다.
4-----> 읽기(r) 퍼미션을 허용하겠다.
예:
$ chmod u+rwx,g+rw,o+r emp.txt
↓ 위의 명령어를 숫자로 실행하면 아래와 같이 간단해진다.
$ chmod 764 emp.txt
■ 권한 관리 명령어 3가지
1. chmod ---> change mode
2. chattr
3. chown
whatis chmod
[orcl:~]$ whatis chmod
chmod (1) - change file access permissions
chmod (1p) - change the file modes
chmod (2) - change permissions of a file
chmod (3p) - change mode of a file
whatis chatt
[orcl:~]$ whatis chattr
chattr (1) - change file attributes on a Linux second extended file system
whatis chown
[orcl:~]$ whatis chown
chown (1) - change file owner and group
chown (1p) - change the file ownership
chown (2) - change ownership of a file
chown (3p) - change owner and group of a file
문제.
root(최상위계정) 계정에서 emp.txt 파일에 대한 chown (change owner) 하시오.
[root@edydr1p0 oracle]# chown -R root:root emp.txt <--(change owner)소유자 변경
[root@edydr1p0 oracle]# ls -l emp.txt
-r--r--r-- 1 root root 1390 Dec 19 11:42 emp.txt
※설명:
-R 은 디렉토리의 권한을 변경할 때 사용
(이걸 써야 디렉토리 하위 파일들도 권한변경됨)
(안 쓰면 디렉토리 소유자만 변경되고//// 안의 파일들은 안바뀜)
# chown root:root emp.txt
↑ ↑
유져명 그룹명
#su - oracle
쳐서 빠져나와도 되고
# exit
쳐서 oracle 로 돌아올 수 있다.
'linux' 카테고리의 다른 글
6. 프로세서 관리 (0) | 2019.04.03 |
---|---|
디스크 관리[df,du,sar,한글 input, 리눅스 str] (0) | 2019.01.02 |
vi 편집기[vi, view, vi -r, vi 커서이동,vi 명령어, 디버깅 -x] (0) | 2019.01.02 |
리눅스 기본 명령어3[diff,find,tar,ln,sed,cp,mv] (0) | 2019.01.02 |
리눅스 기본 명령어2[wc,grep,awk,sort,uniq,echo] (0) | 2018.12.29 |