[Liunx] 리눅스 디렉토리 구조 및 역할

리눅스 디렉토리란?

리눅스는 강력한 운영 체제로, 그 구조와 파일 시스템은 사용자에게 많은 유연성을 제공

아래에서 리눅스의 디렉토리 구조를 살펴보고, 각 디렉토리의 역할과 중요성을 이해해보자!

 

리눅스 디렉토리 구조 개요

디렉터리(Directory) 란 파일을 보관하는 곳,

리눅스의 디렉터리는 최상위에 해당하는 루트를 중심으로 하위 디렉터리에 다수 디렉터리가 존재하는 형태의 트리 구조로 갖추고 있어 계층적으로 관리합니다.

(※ 리눅스 벤더나 버전에 따라 약간의 차이가 있으나 대체적으로 유사)

 

디렉터리의 종류와 특징

 

 

 

종류 특징
/ 최상위에 있는 디렉터리, 루트(root) 디렉터리
/bin binary, 실행 파일 디렉터리, 명령어들이 들어있는 디렉터리로 보통 PATH 가 설정 되어있다.
ex) cp, mkdir, rmdir, mv, rm, cat 등
/boot boot, 시스템 부팅 시 필요한 파일이 들어있는 디렉터리
리눅스 버전에서 부트로더로 사용되는 grub관련 파일도 이 디렉터리에 존재한다.
/dev device, 실제로 존재하는 물리적인 장치 등을 파일화 하여 관리하는 디렉터리
ex) 하드 디스크, CD-ROM, 터미널 등
/etc etc, 시스템 환경 설정 파일 및 부팅과 관련된 여러가지 스크립트 파일들이 들어있는 디렉터리
이들 파일에 설정된 내용을 읽어서 관련 프로그램들이 실행하게 됨
/home home, 개인 사용자들이 파일이나 디렉터리를 만들어 사용할 수 있는 home 디렉터리
/lib library, 각종 라이브러리가 저장되어있는 디렉터리
커널 모듈도 해당 디렉터리에 들어있다.
/lib64 library 64bit, 64비트용 리눅스(x86_64) 설치하는 경우에 생성되는 디렉터리로 64 비트 기반의 라이브러리 관련 디렉터리
/mnt mount, CR-ROM, 플로피 디스크, 하드 디스크, 네트워크 파일 시스템 등을 마운트 할 때 포인터가 되는 디렉터리
/opt optional, 응용 프로그램들의 설치를 위해 사용되는 디렉터리
/proc process, 가상 파일 시스템으로 시스템의 프로세스와 커널 정보를 나타내는 파일드이 위치하는 디렉터리
/root root, 시스템 관리자인 root 사용자의 home 디렉터리
/sbin system binary, 주로 시스템 관리에 대한 명령어들이 들어 있는 디렉터리, 보통 슈퍼 유저인 root 가 사용한다.
주로, 시스템 종료 명령, 네트워크 인터페이스 설정 명령, 시스템 점검과 복구 등의 명령어들이 있다.
/tmp temporary, 임시 저장 디렉터리,
각종 프로그램이나 소켓 파일, 프로세스 작업을할 때 임시로 생성되는 파일을 저장하는 디렉터리
(모든 사용자에게 접근 가능하도록 설정)
/usr user, 시스템 운영에 필요한 명령, 응용 프로그램들이 위치하는 디렉터리
이 디렉터리의 주요 하위 디렉터리에는 응용 프로그램의 명령어들이 들어있는 /usr/bin, /usr/sbin, /usr/local 등이 있다.
/var variable, 가변적인 데이터를 저장하는 디렉터리
시스템 운영 로그 파일과 스풀링과 같은 가변적인 데이터를 보관하거나 메일 서버를 운영하는 경우 도착한 메일이 이 디렉터리에 존재
/media media, 이동식 장치인 cdrom, floppy 등을 마운트하기 위해 제공되는 디렉터리
/srv service, 사이트에서 생성되는 데이터를 저장하는 디렉터리
/var의 역할을 /srv 로 대체
/sys system, 가상 파일 시스템인 sysfs에서 사용하는 디렉터리로 USB처럼 hotplug 하드웨어 정보를 가지고 있는 디렉터리
/run runtime, 부팅 이후에 동작중인 프로세스의 런타임(Runtime) 데이터를 저장하는 디렉터리