/boot
(contains files required boot the system)
- 부팅할 때 사용되는 파일이 존재 (소프트웨어 엔지니어들에게는 사용할 일이 많이 없음)
/dev
(contains device files)
/etc
(holds system configuration files) ⭐️
- 설정(config)과 관련된 파일이 존재 (ex. hostname, sudoers, ...)
/bin
(contains essential user binaries) ⭐️
- 컴파일된 실행가능한(excutable) binary 파일이 존재 (ex. ls, cp, mv, ...)
- 링크 파일 : bin -> usr/bin
/sbin
(system binaries) ⭐️
- 시스템과 관련된 binary파일이 존재
- 링크 파일 : sbin -> usr/sbin
/opt
(optional application software packages) ⭐️
- 추가적인 application이 설치되는 장소 (패키지)
/proc
(contains runtime system information)
- 실행중인 리눅스 정보를 가짐
- 프로세스 정보를 포함 (PID 숫자를 디렉토리명으로 그대로 사용)
- cpu, memory, partitionm ... 과 같은 정보를 포함 (ex. cpuinfo, ...)
/lib
(contains essential shared libraries and kernel module)
/tmp
(temporary directory)
- 재부팅하면 삭제
- 시스템 운영자가 주기적으로 삭제하는 디렉토리
/home
(home directories for regular users) ⭐️
- 모든 사용자들의 디렉토리 포함
- 사용자들 개개인의 config 파일들을 포함 (ex. bash)
/var
(contains files that are expected to grow over time) ⭐️
- 여러가지 파일이 저장되는 디렉토리 (서버 개발자는 주로 log 파일을 확인)
/run
(non-persistent application state or runtime data)
- pid, lock file등이 생기고 사라지는 디렉토리
/mnt
(common mount point for temporarily mounting file systems)
- 마운트 시킨 cd rom, usb등이 들어감
- aws의 ebs같은 것을 마운트할 때 mnt가 생기기도 함
- 사용자가 직접 마운트하는 경로
/media
- 컴퓨터에서 자동으로 마운트하는 경우 사용되는 디렉토리
- 서버에서 잘 사용하지 않음
/usr
(contains a majority of user utilites and app)
- 시스템이 아닌 일반 사용자들이 실행할 프로그램을 저장
- 반드시 readonly만 존재
- root의 bin, sbin도 /usr 안의 디렉토리를 링크하고 있다.