Linux stat 명령어 사용하는 방법 (파일 상세 정보 확인하기)

Linux에서 파일을 관리하다 보면 단순히 파일 이름이나 크기만 확인하는 것이 아니라 생성 시간, 수정 시간, 접근 시간, 권한, inode 번호 등 상세한 정보를 확인해야 하는 경우가 많습니다.

이럴 때 사용하는 명령어가 stat입니다. stat 명령어는 파일과 디렉터리의 메타데이터(Metadata)를 자세하게 출력하는 Linux 기본 명령어입니다. 서버 관리, 파일 시스템 분석, 보안 점검 등 다양한 환경에서 자주 활용됩니다.

이번 글에서는 Linux에서 stat 명령어를 사용하는 방법과 주요 활용 사례를 자세히 알아보겠습니다.

stat 명령어란?

stat는 파일이나 디렉터리의 상세 정보를 출력하는 명령어입니다.

파일 시스템에 저장된 메타데이터를 확인할 수 있으며, 일반적인 ls 명령어보다 훨씬 많은 정보를 제공합니다.

Linux 서버 관리에서 자주 사용하는 기본 명령어 중 하나입니다.

기본 사용법은 다음과 같습니다.

stat 파일명

예를 들어 test.txt의 정보를 확인하려면 다음 명령어를 실행합니다.

stat test.txt

파일 상세 정보 확인하기

다음 명령어를 실행합니다.

stat test.txt

예시 출력

File: test.txt
Size: 1024
Blocks: 8
IO Block: 4096
Device: 8,1
Inode: 125689
Links: 1
Access: (0644/-rw-r--r--)
Uid: (1000/user)
Gid: (1000/user)
Access:
Modify:
Change:

파일의 다양한 메타데이터를 확인할 수 있습니다.

inode 번호 확인하기

inode 번호는 파일 시스템에서 파일을 식별하는 고유 번호입니다.

출력 결과에서 다음 항목을 확인합니다.

Inode: 125689

Hard Link를 확인하거나 파일 시스템을 분석할 때 자주 사용하는 정보입니다.

파일 크기 확인하기

파일 크기는 Size 항목에서 확인할 수 있습니다.

예를 들어 다음과 같이 표시됩니다.

Size: 2048

Byte 단위로 출력됩니다.

스크립트에서도 자주 활용됩니다.

파일 권한 확인하기

권한 정보도 함께 출력됩니다.

예를 들어 다음과 같습니다.

Access: (0644/-rw-r--r--)

숫자 권한과 문자 권한을 동시에 확인할 수 있습니다.

권한 문제를 분석할 때 매우 유용합니다.

파일 생성 및 수정 시간 확인하기

stat 명령어는 세 가지 시간을 제공합니다.

  • Access Time (마지막 읽기 시간)
  • Modify Time (내용 수정 시간)
  • Change Time (메타데이터 변경 시간)

파일 변경 이력을 분석할 때 자주 사용하는 정보입니다.

디렉터리 정보 확인하기

디렉터리도 동일한 방식으로 확인할 수 있습니다.

stat /home

디렉터리의 권한과 inode, 수정 시간 등을 확인할 수 있습니다.

심볼릭 링크 정보 확인하기

심볼릭 링크도 확인할 수 있습니다.

stat symlink

기본적으로 링크 자체의 정보가 출력됩니다.

원본 파일 정보를 확인하려면 -L 옵션을 사용합니다.

stat -L symlink

링크가 가리키는 실제 파일 정보를 확인할 수 있습니다.

특정 정보만 출력하기

스크립트에서는 -c 옵션을 자주 사용합니다.

예를 들어 파일 크기만 출력하려면 다음 명령어를 실행합니다.

stat -c %s test.txt

inode 번호만 출력하려면 다음과 같이 사용할 수 있습니다.

stat -c %i test.txt

자동화 스크립트에서 매우 자주 사용하는 기능입니다.

stat와 ls의 차이

ls는 파일 목록과 기본 정보를 확인하는 명령어입니다.

stat는 파일 시스템에 저장된 메타데이터를 상세하게 확인하는 명령어입니다.

권한, inode, 시간 정보 등을 자세히 분석해야 한다면 stat를 사용하는 것이 적합합니다.

stat 명령어 사용 시 주의할 점

파일이 존재하지 않으면 오류가 발생합니다.

또한 생성 시간(Birth Time)은 파일 시스템 종류에 따라 표시되지 않을 수도 있습니다.

ext4와 XFS 등 파일 시스템마다 출력되는 정보가 조금씩 달라질 수 있습니다.

자주 묻는 질문

stat 명령어는 어떤 정보를 확인하나요?

파일 크기, inode 번호, 권한, 소유자, 수정 시간 등 다양한 메타데이터를 확인할 수 있습니다.

inode 번호도 확인할 수 있나요?

가능합니다.

출력 결과의 Inode 항목에서 확인할 수 있습니다.

파일 크기만 출력할 수도 있나요?

가능합니다.

다음 명령어를 사용합니다.

stat -c %s test.txt

마무리

stat 명령어는 Linux에서 파일과 디렉터리의 메타데이터를 가장 자세하게 확인할 수 있는 관리 명령어입니다. 파일 크기, inode 번호, 권한, 수정 시간 등을 한 번에 확인할 수 있어 서버 운영과 장애 분석에 매우 유용합니다. stat, ls, file, find 명령어를 함께 활용하면 Linux 파일 시스템을 더욱 체계적으로 관리할 수 있습니다.

댓글 남기기