본문 바로가기

Linux/Bash shell

[Linux] 권한 변경(chmod) 명령과 파일 상세 속성/ 파일 권한 알아보기

# 정리

# 파일 상세 속성
 - 파일 종류 / 권한 / 소유자명 / 소유그룹명 / 크기(Byte) / 최종수정날짜 / 파일명 순으로 나열된다.

# 파일권한
 - 소유권은 User / Group / Other 로 범위를 구분한다.
 - 허가권은 r(read - 읽기) / w(write - 쓰기) / x(execute - 실행)가 있다. 
 - 권한을 숫자로도 표현할 수 있다(ex.755권한, 644권한).

$ chmod
 - 아래 두 가지 방법으로 권한 조정 가능
 - pi@raspberry:~/shellPro $ chmod u+x aaa.sh 
 - pi@raspberry:~/shellPro $ chmod 766 eee.txt

 

 

# 파일 권한 - 소유권/허가권

// 범위는 U(user) / G(group) / O(other)로 나뉘며, 파일 권한은 3개씩 끊어서 인식한다 (아래 예제 참조). 

// 파일 허가권은 r(read - 읽기) / w(write - 쓰기) / x(execute - 실행)로 부여된다.

// 각 범위 별로 권한의 조합을 이진수로 대입하여 정수로 표현할 수 있다(ex. 755권한 / 644권한)

 - rwx (111) : 7

 - rw- (110) : 6  >> 읽고/쓰기 가능 (ex.일반적인 파일)

 - r--  (100) : 4

 - r-x  (101) : 5  >> 읽기/실행 가능 (ex.실행 파일에)

// 실행 파일은 최대가 755(쓰기는 못하므로), 문서 파일은 666(실행이 없으므로)이 최대이다.

// 실행파일은 홀수가 된다.

 

 

# 파일 상세 속성 예제 

// 권한 앞의 -는 일반 파일임을 의미한다. 

 - - 일반파일

 - d 디렉토리

 - l 링크(바로가기) 

 - c 문자 디바이스 (키보드, 마우스, 프린터 등 입출력 계열이 많음)

 - b 블록 디바이스 (하드디스크, CD/DVD 등 저장장치 계열이 많음)

// 755 권한이 부여되어있다.

 - 이미지 기준 U - rwx / G - r-x /  O - r-x 

// 파일 소유자는 pi 이다.

// 파일 소유 그룹은 pi 이다.

// 파일 크기는 504Byte이다.

// Mar 10 16:59 에 파일이 최종적으로 수정되었다.

// 파일 이름은 sh01hello.sh 이다.


# 파일 권한 설정 - chmod   

pi@raspberry:~/shellPro $ chmod u+x aaa.sh

- aaa.sh 파일에 유저(u)범위 실행권한(x) 추가 해줘 (sh 명령어 없이 실행할 수 있는 파일로 만들어줘)

- 권한에 x(실행권한)가 생긴 것을 볼 수 있다.

pi@raspberry:~/shellPro $ chmod u-x aaa.sh

 - user에 실행 권한 제거

(좌) 실행 권한 추가 / (우) 실행 권한 제거

 

//숫자로 권한 설정이 가능하다.

pi@raspberry:~/shellPro $ chmod 766 eee.txt

- eee.txt 파일에 7(rwx)-6(rw-)-6(rw-) 권한을 부여한다.

 

//여러 범위에 동시에 권한 설정 가능

pi@raspberry:~/shellPro $ chmod go+w fff.txt

- group, other에 w권한 부여