리눅스 시스템의 전반적인 구조와 작동 방식을 이해하고, 배포판을 선택하여 시스템에 설치하는 과정을 포함합니다.
기본 명령어
umask
파일이나 디렉터리 생성 시 부여되는 기본 권한(Permission)을 제어하는 명령어입니다.
기본값은 8진수로 표현되며, 시스템의 최대 권한 값에서 umask 값을 뺀 값이 최종 권한이 됩니다.
파일 기본 최대 권한: 666 (rw-rw-rw-)
디렉터리 기본 최대 권한: 777 (rwxrwxrwx)
-S 옵션: 접근 권한의 기본값을 r, w, x 형태로 보기 쉽게 출력합니다.
chmod, chown, chgrp
chmod: 파일이나 디렉터리의 접근 권한을 변경합니다.
chown: 파일이나 디렉터리의 소유자를 변경합니다.
chgrp: 파일이나 디렉터리의 소유 그룹을 변경합니다.
공통 옵션
-c: 변경이 적용된 파일의 정보만 자세히 보여줍니다.
-v: 모든 작업 상태를 자세히 보여줍니다.
-f: 변경되지 않은 파일에 대한 오류 메시지를 보여주지 않습니다.
-R: 지정된 경로와 그 하위의 모든 파일 및 디렉터리에 변경 사항을 재귀적으로 적용합니다.
-h (—no-dereference): 심볼릭 링크 파일 자체의 소유권이나 그룹을 변경합니다. (이 옵션이 없으면 원본 파일이 변경됩니다.)
특수 권한 (Special Permissions)
일반적인 읽기(r), 쓰기(w), 실행(x) 외에 부여되는 특별한 권한입니다.
Set-UID와 Set-GID
파일 실행 시, 일시적으로 파일의 소유자(Set-UID)나 그룹(Set-GID)의 권한으로 실행되도록 하는 권한입니다.
예를 들어, 일반 사용자가 자신의 비밀번호를 변경하려면 /etc/shadow 파일에 접근해야 하지만 권한이 없습니다. 이때 /usr/bin/passwd 명령어에 Set-UID가 설정되어 있어, 명령어를 실행하는 동안에는 root의 권한으로 파일을 수정할 수 있게 됩니다.
특징: 강력한 권한을 부여하므로 보안상 취약점이 될 수 있어 신중하게 사용해야 합니다.
Sticky-Bit
주로 /tmp와 같이 여러 사용자가 파일을 생성하고 삭제하는 공용 디렉터리에 설정됩니다.
특징: Sticky-Bit가 설정된 디렉터리 안에서는 파일 소유자 자신과 root만이 해당 파일을 삭제할 수 있습니다. 다른 사용자는 쓰기 권한이 있더라도 파일을 삭제할 수 없습니다.