일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- PostgreSQL
- spring
- 트랜잭션
- 차이점
- oracle
- mssql
- 오블완
- git
- Javascript
- 자바
- 티스토리챌린지
- java
- 명령어
- MongoDB
- DBMS
- MariaDB
- Python
- JPA
- network
- API
- 리눅스
- SQL
- top
- IntelliJ
- group by
- analytics4
- mysql
- docker
- rsync
- Linux
- Today
- Total
hanker
Linux - 파일이나 디렉터리의 권한 변경 (chmod 명령어) 본문
Linux/Unix 시스템에서 파일이나 디렉토리의 권한을 변경하는 데 사용되는 chmod 명령어에 대해서 알아보자
chmod 명령어를 사용하여 파일 소유자, 그룹, 기타 사용자에 대해 읽기, 쓰기, 실행 권한을 설정할 수 있다.
사용법
명령어 | 설명 |
chmod [옵션] [권한] [파일/디렉토리] | 파일 또는 디렉토리의 권한을 변경한다. |
chmod 755 파일명
chmod u+rwx,go+rx 파일명
위에 명령어와 같이 숫자표기법과 기호 표기법이 있는데, 아래 2항목 에서 자세하게 알아보자.
1. 옵션
chmod 명령어에 무슨 옵션이 있는지 알아보자.
옵션 | 설명 |
-R | 디렉토리와 그 안의 모든 파일에 대해 권한을 재귀적으로 변경 |
-v | 권한이 변경된 파일에 대해 상세한 정보를 출력 |
-c | 변경된 파일에 대한 정보를 출력. 변경되지 않은 경우 출력하지 않는다. |
--reference=[참조 파일] | 참조 파일의 권한을 기준으로 권한을 설정한다. |
옵션 하나씩 예를 보며 이해해보자
-R 옵션
위 사진을 보면 /home/hanker 디렉터리내에 hanker 디렉터리와 hanker.txt / hanker1.txt 파일이 있다.
-R 옵션을 사용하여 모든 파일의 권한을 변경할 수 있다.
chmod -R 777 /home/hanker
-v 옵션
해당 옵션을 사용하여 hanker.txt 파일의 권한을 변경해보자.
위 그림과 같이 0777 에서 0721 로 변경되었다고 친절하게 메시지가 나온다.
-c 옵션
해당 옵션을 사용하여 hanker1.txt 파일의 권한을 변경해보자.
-c 옵션이랑 -v 옵션이랑 같아 보이지만 -c 옵션은 같은 권한으로 변경 시 메시지가 출력되지 않는다.
--references=[참조파일] 옵션
hanker1.txt 의 권한을 hanker.txt의 권한과 동일하게 설정한다.
2-1. [권한] 숫자 표기법
숫자를 사용하여 권한을 설정한다.
위 명령어에서 755는 소유자에게 읽기/쓰기/실행 권한을 부여하고, 그룹과 다른 사용자에게는 읽기 및 실행 권한을 부여한다.
4: 읽기 권한 (r)
2: 쓰기 권한 (w)
1: 실행 권한 (x)
위 숫자들을 조합하여 권한을 설정한다.
예)
7: 읽기(4) + 쓰기(2) + 실행(1) = 7 (rwx)
5: 읽기(4) + 실행(1) = 5 (r-x)
0: 권한 없음
chmod 000 hanker.txt 명령어를 실행하였을 때 권한이 다 빠져버림을 확인할 수 있다.
- 모든사용자에게 읽기 밀 쓰기 권한 부여
chmod 666 파일명
- 소유자만 모든 권한 부여, 다른 사용자에겐 권한 없음
chmod 700 파일명
2-2. [권한] 기호 표기법
u (소유자), g (그룹), o (기타 사용자)에 대해 각각의 권한을 설정한다.
+는 권한 추가, -는 권한 제거를 의미한다.
이해를 위해 예를 들어서 확인해보자
예제 1) 소유자에게 읽기와 쓰기 권한을 제거하고 그룹웨게 실행 권한 추가
chmod u-rw,g+x 파일명
예제 2) 모든 사용자에게 읽기 권한 부여
chmod a+r 파일명
- a (all) 는 모든 사용자를 의미
마무리
chmod 명령어는 파일과 디렉토리의 권한을 효율적으로 관리하기 위해 반드시 알아야 할 중요한 명령어이다.
숫자 표기법과 기호 표기법을 적절히 활용하면 원하는 대로 파일 접근 권한을 쉽게 설정할 수 있고, 추가적인 옵션들을 활용하면 디렉토리와 파일을 더욱 세밀하게 제어할 수 있다.
더불어 친구라고 볼수 있는 chown 명령어와도 같이 사용되는 경우가 많으니 chown 명령어도 같이 알아두면 좋다.
서버 설정, 스크립트 실행, 보안 유지 등 다양한 상황에서 유용하게 활용될 수 있으므로, 명령어의 사용법을 잘 익혀두는 것이 좋다.
'SERVER > Linux' 카테고리의 다른 글
Linux - grep 명령어 (텍스트 파일 내에서 특정 패턴이나 문자열을 검색할 때 사용) (0) | 2025.01.18 |
---|---|
Linux - top 명령어 (CPU, 메모리 사용량 등 현재 OS의 상태를 모니터링) (0) | 2025.01.17 |
Linux - 현재 실행중인 프로세스 확인 (ps 명령어) (0) | 2024.11.15 |
Linux - 파일 및 디렉터리 삭제 명령어 (rm 명령어) (2) | 2024.11.13 |
Linux 서버 초기 설정 시 기본 명령어 관련 패키지 설치 가이드 (command not found) (1) | 2024.10.28 |