chmod는 리눅스에서 파일 권한을 변경하는 명령어입니다. 파일의 읽기, 쓰기, 실행 권한을 설정할 수 있으며, 사용자(User), 그룹(Group), 그리고 기타(Others) 사용자들에게 개별적으로 권한을 부여하거나 제거할 수 있습니다.
chmod 명령어 기본 사용법
chmod는 두 가지 방식으로 사용됩니다: 기호 모드와 숫자 모드. 기호 모드는 사용자가 이해하기 쉽고, 숫자 모드는 더 빠르고 강력합니다.
1. 기호 모드(Symbolic Mode)
기호 모드는 u (사용자), g (그룹), o (기타), a (모든 사용자)로 표현됩니다. 그리고 +, -, = 기호로 권한을 설정합니다.
chmod [옵션] [사용자][연산자][권한] 파일명
예시: 사용자에게 실행 권한 추가
user@linux:~$ chmod u+x script.sh
2. 숫자 모드(Numeric Mode)
숫자 모드는 읽기(r)=4, 쓰기(w)=2, 실행(x)=1로 표현되며, 이를 조합하여 각 사용자에게 권한을 부여합니다.
권한 | 숫자 |
r-- | 4 |
-w- | 2 |
--x | 1 |
예시: 사용자에게 읽기, 쓰기, 실행 권한(7), 그룹과 기타 사용자에게 읽기 권한(4) 부여
user@linux:~$ chmod 744 file.txt
chmod 명령어 예제
1. 파일에 실행 권한 추가
user@linux:~$ chmod +x script.sh
user@linux:~$ ls -l
-rwxr--r-- 1 user user 123 Sep 21 15:00 script.sh
이 명령은 script.sh 파일에 실행 권한을 추가합니다.
2. 특정 사용자만 쓰기 권한 부여
user@linux:~$ chmod u+w file.txt
user@linux:~$ ls -l
-rw-r--r-- 1 user user 456 Sep 21 14:30 file.txt
여기서는 file.txt 파일에 사용자에게만 쓰기 권한을 부여합니다.
3. 숫자 모드로 권한 설정
user@linux:~$ chmod 755 my_program
user@linux:~$ ls -l
-rwxr-xr-x 1 user user 789 Sep 21 14:45 my_program
755 권한은 사용자에게 모든 권한(읽기, 쓰기, 실행)을 부여하고, 그룹과 기타 사용자에게는 읽기 및 실행 권한을 부여합니다.
4. 모든 사용자에게 읽기 및 쓰기 권한 제거
user@linux:~$ chmod a-rw confidential.txt
user@linux:~$ ls -l
---------- 1 user user 1024 Sep 21 14:55 confidential.txt
이 명령은 confidential.txt 파일에서 모든 사용자에게 읽기와 쓰기 권한을 제거합니다.
chmod 명령어 옵션
- -R: 하위 디렉토리와 파일에도 동일한 권한을 적용합니다.
user@linux:~$ chmod -R 755 /var/www/html
- --reference=FILE: 다른 파일의 권한을 참조하여 설정합니다.
user@linux:~$ chmod --reference=file1.txt file2.txt
파일 권한 구조
리눅스 파일의 권한은 읽기(r), 쓰기(w), **실행(x)**의 조합으로 이루어집니다. ls -l 명령을 통해 파일의 권한을 확인할 수 있습니다. 예를 들어:
-rwxr-xr--
- 첫 글자 -: 파일 타입 (일반 파일은 **-**로 표시)
- rwx: 사용자 권한 (읽기, 쓰기, 실행)
- r-x: 그룹 권한 (읽기, 실행)
- r--: 기타 사용자 권한 (읽기)
chmod 명령어 요약
- chmod는 파일 권한을 설정하는 데 사용됩니다.
- 기호 모드와 숫자 모드를 사용하여 권한을 조정할 수 있습니다.
- 755와 같은 숫자는 읽기, 쓰기, 실행 권한을 표현하는 조합입니다.
- -R 옵션으로 하위 디렉토리에도 동일한 권한을 적용할 수 있습니다.
예제: chmod 명령어 실행
user@linux:~$ chmod 755 script.sh
user@linux:~$ ls -l
-rwxr-xr-x 1 user user 123 Sep 21 15:00 script.sh
이 명령은 script.sh 파일에 읽기, 쓰기, 실행 권한을 사용자에게 부여하고, 그룹과 기타 사용자에게는 읽기 및 실행 권한만 부여합니다.
'Linux' 카테고리의 다른 글
[리눅스] apt 명령어 완벽 가이드 (0) | 2024.09.25 |
---|---|
[리눅스] grep 명령어 완벽 가이드 (0) | 2024.09.25 |
[리눅스] find 명령어 완벽 가이드 (0) | 2024.09.25 |
[리눅스] chown 명령어 완벽 가이드 (0) | 2024.09.25 |
[리눅스] vim 명령어 완벽 가이드 (0) | 2024.09.23 |
[리눅스] nano 명령어 완벽 가이드 (0) | 2024.09.23 |
[리눅스] head, tail 명령어 완벽 가이드 (0) | 2024.09.23 |
[리눅스] more, less 명령어 완벽 가이드 (0) | 2024.09.23 |