리눅스는 모든 것이 /(루트 디렉토리) 아래에 있다.
각 디렉토리는 역할이 거의 고정되어 있으니, 서버 운영에 활용할 수 있다.
/ (Root Directory)
- 리눅스 파일 시스템의 최상위
- 모든 디렉토리의 시작점
/
├── bin
├── boot
├── dev
├── etc
...
시스템 핵심 영역
/bin (기본 시스템 명령어)
- ls, cp, mv, rm 같은 기본 명령어 바이너리
- 부팅 후 최소 환경에서도 사용 가능
- ✔ 모든 사용자 공용 명령어
- ✔ 장애 상황에서도 살아 있어야 하는 명령들
/sbin (시스템 관리자용 명령어)
- mount, fsck, reboot 같은 관리자 명령어
- ✔ 서버 운영/복구 관련
- ✔ 일반 유저 PATH에는 없는 경우 많음
/boot (부팅 관련 파일)
- 커널 이미지
- 부트로더 설정
- ✔ 건드리면 서버 부팅 불능
- ✔ 커널 업데이트 영역
/lib (시스템 라이브러리)
- /bin, /sbin 프로그램이 사용하는 라이브러리
- 커널 모듈 포함
- ✔ 시스템 프로그램 의존성
- ✔ 삭제/수정 거의 금지 영역
장치 & 커널 인터페이스
/dev (디바이스 파일)
- 디스크, 터미널, USB, 포트 전부 파일로 표현
- 디스크/장치 연결 구조
/dev/sda
/dev/null
/dev/tty
/proc (프로세스 & 커널 정보 – 가상 파일)
- 실제 파일 ❌
- 메모리 기반 가상 파일 시스템
- ps, top, free의 원천 데이터
/proc/cpuinfo
/proc/meminfo
/proc/[pid]
/run (런타임 상태 데이터)
- 부팅 이후 생성되는 임시 시스템 정보
- PID, 소켓, 세션 정보
- 서비스 상태 관리
- ✔ 재부팅하면 초기화됨
설정 & 사용자 영역
/etc (시스템 설정 파일)
- 거의 모든 서비스 설정 파일 위치
- 서버 운영의 핵심 디렉토리
- ✔ 백업 1순위
- ✔ 장애 원인 1순위
/etc/nginx/nginx.conf
/etc/passwd
/etc/ssh/sshd_config
/home (일반 사용자 홈 디렉토리)
- 사용자 개인 파일
- 개발, 다운로드, 설정
- ✔ 실사용 작업 공간
- ✔ 프로젝트, 소스, 개인 설정
/home/user
/root (root 계정 전용 홈)
- 관리자 계정의 home
- ✔ 일반 사용자의 /home과 역할 동일
- ✔ root 전용
서비스 & 데이터
/var (변하는 데이터)
- 로그
- 캐시
- DB 파일
- 메일
- 로그 분석 중심지
/var/log
/var/lib
/var/cache
/srv (서비스 데이터)
- 서비스가 직접 제공하는 데이터
- 웹/FTP 서비스 데이터
- ✔ 배포 디렉토리로 사용하기도 함
/srv/www
/srv/ftp
/opt (서드파티/추가 프로그램)
- 패키지 관리자 외부 프로그램
- 독립 소프트웨어
- 수동 설치 프로그램
/opt/sonarqube
/opt/custom-app
마운트 & 임시 공간
/mnt (임시 마운트 지점)
- 사용자 개인 파일
- 수동 마운트
mount /dev/sdb1 /mnt
/media (자동 마운트 지점)
- USB, 외장하드, CD
- 데스크탑/VM 환경
- 자동 연결 장치
/tmp (임시 파일)
- 모든 사용자 쓰기 가능
- 재부팅 시 삭제되는 경우 많음
- ✔ 캐시
- ⚠ 서비스 데이터 저장 ❌
사용자 프로그램 영역
/usr (사용자 프로그램 & 라이브러리)
- 일반 프로그램 설치 위치
- 시스템의 “응용 프로그램 영역”
/usr/bin
/usr/sbin
/usr/lib반응형
'개발정리 (linux)' 카테고리의 다른 글
| [linux] 서버 상태 & 운영 필수 명령어 (0) | 2026.01.22 |
|---|---|
| [linux] 리눅스 필수 명령어 25개 (0) | 2026.01.20 |