Read, Write Excute 권한

 

폴더인지 파일인지 확인하기

 - ls -l 명령어를 사용한다. -l은 파일에 대한 권한 정보를 보기 위해서 필요한 옵션이다.

  아래와 같은 구조의 리스트를 확인할 수 있다.

 

chmod : 파일권한 변경


1.알파벳 표현

[file path]의 파일에 대한 소유 수준이 [owner]인 유저에게[permission level] 수준의 권한을 추가 또는 제거([action])한다.

 

chmod [option] [owner][action][permission level] [file path]
  • option  

   - R : 하위 모든 파일에 적용 (recursive)

  • 소유수준 owner

   파일에 대한 소유 수준은 3가지 문자로 표현된다.

   명령어에는 소유 수준이 1개 이상 연속해서 올 수 있다. 즉, 명령어에 ug라고 쓸 경우 파일을 소유한  user 와  group에게

   같은 권한을 부여한다.

소유 수준 표현 문자 설명
u 파일을 소유한 유저
g 파일을 소유한 그룹
o 파일을 소유한 유저와 그
  • action

   + 일 경우, 권한을 추가

    일 경우, 권한을 제거

    일 경우, +,- 는 명령어로 지정한 권한을 추가 또는 제거하고 기존 권한들은 그대로 둔다.

   반면에 =는 명령어로 지정한 권한을 추가(+)하되, 지정하지 않은 권한들은 모두 제거한다.

 

  • permission level

  파일에 대한 권한 수준은 3가지 문자로 표현된다.

  명령어에는 권한 수준이 1개 이상 연속해서 올 수 있다. 즉, 명령어에 rw라고 쓸 경우 읽기쓰기 2개 권한을 부여한다.

권한 수준 표현 문자 설명
r 읽기 권한
w 쓰기 권한
x 실행 권한
  • ex) ./file/path.csv 파일에 대한 파일 소유 유저와 그룹에게 읽기와 쓰기 권한 부여
chmod ug+rw ./file/path.csv

 

2.숫자 표현

[file path]의 파일에 대해 [permission level]을 이용하여 소유 수준 별로 권한 수준을 설정한다.

chmod [option] [permission level] [file path]
  • option

   -R : 하위 모든 파일에 적용 (recursive)

  • permission level

   3개 숫자로 소유 수준과 권한 수준을 모두 표현 할 수 있다.

   - 숫자 자리수로 소유 수준 표현

숫자 자리수 설명
첫째 자리 파일을 소유한 유저
둘째 자리 파일을 소유한 그룹 
셋째 자리 파일을 소유한 유저와 그룹이 아닌 유저

  - 숫자 크기로 권한 수준 표현

    2개 이상의 권한을 부여하려면 아래 숫자의 합으로 나타낸다. 즉,읽기(4)와 쓰기(2) 권한을 모두 부여하려면 4+2=6으로 

    설정한다.

숫자 크기 설명
4 읽기 권한
2 쓰기 권한
1 실행 권한
  • ex) ./file/path.csv 파일에 대해 유저에게 읽기, 쓰기, 실행 권한을 모두 부여, 그룹에게 읽기, 실행 권한을 부여, 소유한 유저와 그룹이 아닌 유저에게 실행 권한만 부여
chmod 751 ./file/path.csv

 

chown : 소유권 변경


파일의 소유자를 변경한다.

특정 소유 수준에 속하는 유저는 파일에 대해 그 소유수준에 설정된 수준 만큼의 권한을 행사 할 수 있다.

이때 소유 수준 별 권한 수준은 위 섹션 chmod 명령어로 설정할 수 있다.

chown [option] [owner]:[group] [file path]
  • option

   - R : 하위 모든 파일레 적용 (recursive)

  • owner

   파일의 소유자를 [owner]로 변경

  • group

   파일의 소유 그룹을 [group]으로 변경

   :[group] 이라고 쓰면 owner 변경 없이 group만 변경 할 수 있다.

  • file path

   소유권 변경 대상 파일 경로 (상대 경로 가능)

  • ex) ./file/path.parquet 파일에 대한 소유자를 deep으로 소유 그룹을 machinelearn으로 변경한다.
chown deep:machinelearn ./file/path.parquet

'리눅스' 카테고리의 다른 글

mv 명령어 사용법 (파일 이동, 이름 바꾸기)  (1) 2023.10.26
History 명령어  (0) 2023.07.03
리눅스 명령어정리🔍  (0) 2023.06.26

+ Recent posts