---
title: "파이 안에 모든 파일을 저장한다는 농담 같은 파일시스템, 파이에프에스"
published: 2026-06-10T18:54:54.000Z
canonical: https://jeff.news/article/3991
---
# 파이 안에 모든 파일을 저장한다는 농담 같은 파일시스템, 파이에프에스

파이에프에스는 데이터를 디스크에 저장하지 않고 원주율 파이의 숫자열 안에서 찾아낸다는 컨셉의 파일시스템이다. 실제로는 파일 내용을 바이트 단위로 파이에서 찾고, 그 위치 정보를 메타데이터로 저장한다는 구조라서 “100% 압축”을 풍자하는 해커식 농담에 가깝다.

- 파이에프에스는 “하드에 데이터를 저장하지 말고 파이에 저장하자”는 말도 안 되는 아이디어를 진짜 파일시스템처럼 포장한 프로젝트임
  - 원주율 파이(π)가 정규수(normal number)라면 모든 가능한 숫자 조합이 어딘가에 등장한다는 가정에서 출발함
  - 파일을 16진수 바이트열로 보면, 이론상 모든 파일도 파이 안 어딘가에 이미 존재한다는 식의 논리임

- 그래서 저장 방식도 기가 막힘. 파일 내용 자체를 저장하는 게 아니라 “파이의 몇 번째 자리부터 몇 바이트를 읽으면 된다”는 위치만 저장하자는 발상임
  - 파일을 꺼낼 때는 베일리-보웨인-플루프 공식(Bailey-Borwein-Plouffe formula)으로 파이의 특정 자릿수를 계산해서 복원한다는 설정
  - 긴 파일을 한 번에 찾기 어렵다는 문제는 “바이트 단위로 쪼개서 찾으면 된다”는 식으로 밀어붙임

- 당연히 여기서 진짜 저장되는 건 데이터가 아니라 메타데이터임
  - 각 바이트가 파이의 어디에 있는지 위치를 기록해야 하니, 현실적으로는 원래 파일보다 훨씬 많은 메타데이터가 생길 수밖에 없음
  - 글에서는 이걸 오히려 “요즘 메타데이터가 중요하니까 좋은 일 아니냐”는 식으로 비꼼

- 설치와 실행은 꽤 진짜 프로젝트처럼 써놨음
  - 데비안 기준으로 autoconf, automake, libfuse-dev 같은 패키지를 설치하고 `./autogen.sh`, `./configure`, `make`, `make install` 흐름을 타면 된다고 안내함
  - 실행도 `πfs -o mdd=<metadata directory> <mountpoint>`처럼 FUSE 파일시스템 마운트 방식으로 제시함

- 이 프로젝트의 재미는 “이론상 가능”과 “실제로 쓸 수 있음” 사이의 간극을 끝까지 농담으로 밀어붙이는 데 있음
  - 모든 파일이 파이에 이미 있다면 저작권 침해도 “그냥 파이 몇 자리일 뿐”이라는 식으로 받아침
  - 미래 계획도 가변 길이 검색, 산술 부호화, 병렬 조회, 클라우드 기반 파이 조회, 하둡용 파이에프에스까지 농담의 스케일을 키움

## 핵심 포인트

- 파이가 정규수라면 모든 유한한 바이트열이 언젠가 등장한다는 가정에서 출발함
- 파일 데이터 대신 파이 안의 위치와 길이를 메타데이터로 저장한다는 구조
- 실제로는 메타데이터가 폭증하므로 저장공간 절약이 아니라 압축과 메타데이터 집착을 비꼬는 프로젝트

## 인사이트

겉으로는 파일시스템 프로젝트지만, 핵심은 “데이터를 안 저장하고 위치만 저장하면 공짜 아닌가?”라는 발상을 끝까지 밀어붙인 기술 농담임. 압축, 저작권, 메타데이터 만능주의를 한 번에 찌르는 맛이 있음.
