파일 시스템 및 권한
리눅스는 다중 사용자 시스템이므로, 파일과 디렉토리에 대한 접근 제어가 매우 철저합니다.
1. 권한 구조 확인하기
ls -l 명령어를 입력하면 다음과 같은 형태의 정보를 볼 수 있습니다.
-rwxr-xr--
총 10자리 문자 중:
- 첫 번째 자리:
-(파일),d(디렉토리) rwx(2~4): 소유자(Owner) 권한r-x(5~7): 그룹(Group) 권한r--(8~10): 기타 사용자(Others) 권한
각 문자의 의미
r(Read, 4): 읽기 권한w(Write, 2): 쓰기 및 수정 권한x(Execute, 1): 실행 권한
2. 권한 변경 (chmod)
숫자의 합을 사용하여 권한을 설정합니다. (r=4, w=2, x=1)
# 소유자에게 7(rwx), 그룹에게 5(r-x), 기타에게 5(r-x) 부여
chmod 755 script.sh
# 모든 사용자에게 읽기/쓰기 권한 부여
chmod 666 data.txt
3. 소유자 변경 (chown)
# 파일의 소유자를 'ubuntu' 사용자와 'ubuntu' 그룹으로 변경
sudo chown ubuntu:ubuntu index.html
4. 관리자 권한 (sudo)
sudo (SuperUser DO)는 관리자(root)의 권한으로 명령어를 실행할 때 사용합니다. 보안을 위해 시스템 설정 파일을 수정하거나 패키지를 설치할 때만 사용하는 것이 좋습니다.
다음 장에서는 이러한 명령어들을 묶어 실행하는 쉘 스크립트에 대해 배웁니다.