전산직/컴퓨터일반

ls -l 명령어와 파일 퍼미션

glorypang 2025. 11. 7. 21:53
728x90
반응형
SMALL

ls -l 기본 출력

$ ls -l
total 32
drwxr-xr-x  2 user  staff   4096 Nov  6 10:20 my_folder
-rw-r--r--  1 user  staff   1234 Nov  6 10:21 file1.txt
-rwsr-xr-x  1 root  root    54256 Nov  7 09:00 passwd
구분  예시 설명
① 파일 유형 및 권한 -rwsr-xr-x 파일 종류 및 접근 권한
② 링크 수 1 하드 링크 개수
③ 소유자 user 파일 주인
④ 그룹 staff 그룹 이름
⑤ 파일 크기 1234 바이트 단위 용량
⑥ 수정 시간 Nov 6 10:21 마지막 수정 시각
⑦ 파일 이름 file1.txt 파일 또는 디렉토리 이름

1. 파일 유형 및 권한 (-rwxr-xr-x)

이 부분은 10자리 문자로 구성되어 있습니다.

[파일유형][소유자 권한][그룹 권한][기타 사용자 권한]

 

예를 들어 drwxr-xr-x:

     
구분   문자  의미
파일 유형 d 디렉토리 (-는 일반 파일)
소유자 권한 rwx 읽기/쓰기/실행 가능
그룹 권한 r-x 읽기/실행 가능
기타 사용자 권한 r-x 읽기/실행 가능

파일 유형 문자

문자  의미
- 일반 파일
d 디렉토리
l 심볼릭 링크
c 문자 디바이스 파일 (터미널 등)
b 블록 디바이스 파일 (디스크 등)

권한 문자(rwx) 

문자  의미  권한
r read 읽기
w write 쓰기
x execute 실행
- 없음 권한 없음

예시:
rw- → 읽기/쓰기 가능, 실행 불가
r-x → 읽기/실행 가능, 쓰기 불가

특수 권한 (Special Permissions)

리눅스에는 일반 권한 외에도 3가지 특수 비트가 있습니다.

이름 약어 적용 위치 역할

SetUID s 사용자 권한 영역 실행 시 “파일 소유자” 권한으로 실행
SetGID s 그룹 권한 영역 실행 시 “파일 소유 그룹” 권한으로 실행
Sticky Bit t 기타 권한 영역 디렉토리에서 자신이 만든 파일만 삭제 가능

SetUID 예시

-rwsr-xr-x 1 root root 54256 Nov  7 09:00 /usr/bin/passwd
  • 여기서 rws의 s는 SetUID 비트입니다.
  • 이 파일을 실행하면, 일반 사용자가 실행해도 root 권한으로 동작합니다.
  • /usr/bin/passwd는 사용자가 비밀번호를 바꿀 때 root 권한이 필요하기 때문에 이렇게 설정되어 있습니다.

⚠️ 주의: SetUID가 잘못 설정되면 해커가 root 권한을 탈취할 수 있어 보안 위험이 큽니다.

SetGID 예시

-rwxr-sr-x 1 root staff 12000 Nov  7 11:00 somefile
  • 그룹 권한 영역(r-s)에 s가 있으므로 SetGID가 설정됨.
  • 실행 시 해당 파일은 그룹의 권한으로 동작합니다.

Sticky Bit 예시

drwxrwxrwt 7 root root 4096 Nov  7 12:00 /tmp
  • t는 Sticky Bit를 의미합니다.
  • /tmp 디렉토리처럼 여러 사용자가 접근 가능한 공간에서,
    각자 자신이 만든 파일만 삭제 가능하게 해줍니다.

대문자 S와 T의 의미

표시  의미
s 실행 권한(x) 있음 + 특수 비트 정상
S 실행 권한 없음 + 특수 비트 비정상 설정
t 실행 권한 있음 + Sticky Bit 정상
T 실행 권한 없음 + Sticky Bit 비정상 설정

예:

  • rws → 실행 + SetUID 정상
  • rwS → 실행권한 없음 (비정상)
  • rwt → 실행 + Sticky Bit 정상
  • rwT → 실행권한 없음 (비정상)

2. 링크 수 (Hard Link Count)

  • 일반 파일: 대부분 1
  • 디렉토리: 보통 2 이상 (. 자기 자신, .. 부모 디렉토리 포함)

3. 소유자 / 그룹

  • 소유자(user): 파일을 만든 사람
  • 그룹(group): 파일이 속한 사용자 그룹
    (같은 그룹에 속한 다른 사용자들도 일부 권한을 가질 수 있음)

4. 파일 크기

  • 단위는 바이트(B)
  • 디렉토리의 경우는 내부 메타데이터의 크기(보통 4096B)
  • 파일은 실제 내용의 크기

5. 수정 날짜

  • 파일이 마지막으로 수정된 시각
  • 보통 최근 6개월 이내 파일은 월 일 시:분
  • 오래된 파일은 월 일 연도로 표시됩니다.

6. 파일 이름

마지막 부분이 파일 또는 디렉토리의 이름이에요.
색상은 터미널 설정에 따라 다르지만 보통:

  • 파란색 → 디렉토리
  • 하늘색 → 링크
  • 초록색 → 실행 파일
  • 흰색 → 일반 파일
728x90
반응형
LIST