본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

리눅스 파일 유형(Linux file types)은 리눅스가 아이노드의 모드 값으로 구분하는 일곱 가지 파일 종류(일반 파일, 디렉터리, 심볼릭 링크, 문자 장치, 블록 장치, FIFO, 소켓)이다.

리눅스와 유닉스는 "모든 것은 파일"이라는 원칙에 따라 문서와 프로그램뿐 아니라 디렉터리, 장치, 프로세스 사이의 통신 통로까지 파일 이름으로 다룬다. 어느 종류인지는 파일 이름이나 확장자가 아니라 아이노드의 st_mode 에 든 파일 유형 비트(S_IFMT)가 정한다. inode(7) 매뉴얼은 이 비트가 나타내는 값으로 소켓, 심볼릭 링크, 일반 파일, 블록 장치, 디렉터리, 문자 장치, FIFO 일곱 가지를 둔다.[1] ls -l 출력의 맨 앞 글자가 파일 유형을 보여 준다.[2]

일곱 가지 유형

편집 원본 편집
유형 ls -l 표시 모드 상수 설명 예
일반 파일(regular file) - S_IFREG 텍스트, 실행 파일, 이미지처럼 데이터를 담는 보통의 파일 /etc/passwd, /bin/ls
디렉터리(directory) d S_IFDIR 파일 이름과 아이노드 번호의 목록을 담는 파일. 디렉터리 파일이라고도 한다 /home, /etc
심볼릭 링크(symbolic link) l S_IFLNK 다른 파일의 경로를 담아 그 파일을 가리키는 파일 /bin → usr/bin
문자 장치(character device) c S_IFCHR 바이트 단위로 입출력하는 장치를 나타내는 장치 파일 /dev/tty, /dev/null
블록 장치(block device) b S_IFBLK 블록 단위로 버퍼를 거쳐 입출력하는 장치를 나타내는 장치 파일 /dev/sda
FIFO(명명된 파이프) p S_IFIFO 먼저 쓴 데이터를 먼저 읽는 프로세스 간 통신 통로. 이름이 있어 관계없는 프로세스끼리도 쓸 수 있다. mkfifo 로 만든다 mkfifo 로 만든 /tmp/myfifo
소켓(socket) s S_IFSOCK 같은 호스트 안의 프로세스 간 통신에 쓰는 유닉스 도메인 소켓 /dev/log(syslog 소켓)
  • 장치 파일(문자·블록)은 /dev 아래에 두며 주 번호와 부 번호로 드라이버와 개별 장치를 가리킨다 → 리눅스 장치 파일
  • 하드 링크는 별도 유형이 아니다. 같은 아이노드를 가리키는 이름이 하나 더 생길 뿐이라, 원래 파일과 똑같이 일반 파일(-)로 보인다.
$ ls -ld /etc/passwd /etc /dev/sda /dev/tty /tmp/myfifo
-rw-r--r--. 1 root root 2345 Jan  1 09:00 /etc/passwd
drwxr-xr-x. 1 root root 4096 Jan  1 09:00 /etc
brw-rw----. 1 root disk 8, 0 Jan  1 09:00 /dev/sda
crw-rw-rw-. 1 root tty  5, 0 Jan  1 09:00 /dev/tty
prw-r--r--. 1 user user    0 Jan  1 09:00 /tmp/myfifo
  • stat -c %F 파일 은 유형을 "regular file", "directory", "fifo" 같은 말로 보여 준다.
  • find / -type p 처럼 find 의 -type 에 f, d, l, c, b, p, s 를 주면 그 유형만 찾는다.

유형이 아닌 것과 구별하기

편집 원본 편집
말 무엇인가 파일 유형인가
가상 파일 시스템(VFS) 커널이 여러 파일 시스템을 같은 인터페이스로 다루게 하는 추상 계층 아니다. 파일 유형이 아니라 커널 계층의 이름이다
/proc, /sys 의 항목 커널이 메모리에서 만들어 보여 주는 의사 파일 시스템의 파일 아니다. ls -l 로 보면 대부분 일반 파일(-)이나 디렉터리(d)로 나온다
숨김 파일 이름이 점(.)으로 시작해 ls 에서 기본으로 안 보이는 파일 아니다. 이름 규칙일 뿐 유형은 일반 파일이나 디렉터리다
실행 파일 실행 권한(x)이 있는 파일 아니다. 권한의 문제이고 유형은 일반 파일이다

"가상 파일"이라는 유형은 없다. 파일 유형은 위의 일곱 가지뿐이다.

  1. ↑ 「inode(7) - Linux manual page」, man7.org, https://man7.org/linux/man-pages/man7/inode.7.html, 확인일: 2026-11-04.
  2. ↑ 「What information is listed」, GNU Coreutils Manual, https://www.gnu.org/software/coreutils/manual/html_node/What-information-is-listed.html, 확인일: 2026-11-04.