본문 바로가기
Linux

리눅스 디렉토리 구조

by 드로니뚜벅이 2022. 4. 27.

리눅스 동작을 위한 기본 디렉토리 구조는 /bin, /dev, /etc, /lib, /mnt, /proc, /root, /sys, /tmp, /usr 디렉토리를 포함합니다.

Directory Description
/ 루트 디렉토리로 시스템이 시작되는 첫 번째 위치이면서 최상위 디렉토리입니다. 모든 리눅스 시스템에서 반드시 존재해야 합니다.
/home 사용자 계정 디렉토리로 사용자를 등록하면 일반적으로 "/home/<계정명>"으로 사용자 계정 디렉토리가 생성되고 관리됩니다. 윈도우에서 내문서, 다운로드 폴더가 있는 개인폴더에 해당됩니다.
/root 루트 계정의 홈 디렉토리입니다. 루트 계정이란 리눅스에서 시스템 운영을 할 수 있는 슈퍼유저입니다.
/boot 부팅에 필요한 부트로더 파일과 커널이미지(vmlinuz)가 있습니다. 커널 이미지는 커널 컴파일을 통해 생성됩니다.
/bin ls, cat, cp, rm, date, more, ip, ...등의 일반 유저들을 위한 기본 명령어들이 들어 있습니다.
이 디렉토리에 존재하는 명령어는 root 사용자 뿐만 아니라 일반 유저도 사용할 수 있습니다.
/sbin reboot, halt, fsck, fdisk, ... 등의 슈퍼 유저를 위한 명령어들이 들어 있습니다. 일반 유저들은 제한적으로만 실행할 수 있습니다.
/mnt 마운트가 필요할 때 사용하기 위한 디렉토리입니다. 시스템에서 마운트를 이 위치에 통일성 있게 하라는 의미만 있을 뿐 꼭 해당 디렉토리만 마운트할 수 있는 건 아닙니다.
/proc 커널과 프로세스 정보를 위한 가상 파일 시스템으로 이 디렉토리 아래에는 현재 메모리에 존재하는 모든 작업들이 파일 형태로 존재합니다. 커널이 메모리 상에 만들어 놓은 것으로 디스크에는 존재하지 않습니다.
각 프로세스는 자신만의 디렉토리를 /proc 아래에 갖게 되는데 자신의 프로세스 식별번호가 그 디렉토리의 이름이 됩니다.
/dev 모든 하드웨어 장치에 대한 장치 파일들을 가지고 있습니다.
시스템의 각종 디바이스들에 접근하기 위한 디바이스 드라이버들이 저장되어 있는 디렉토리로 하드디스크에 차지하는 공간이 없는 가상 디렉토리입니다.
리눅스 시스템은 각종 디바이스 장치들을 하나의 파일로 취급합니다. 디바이스 드라이버 파일은 통신포트/프린터포트/터미널 장치처럼 한번에 한 바이트씩 차례로 오가는 단방향의 문자 장치가 있고, 또 하나는 버퍼를 사용하여 한번에 블록 단위로 처리하는 블록 장치가 있습니다.
/media USB와 같은 장치들의 마운트 포인트입니다.
/tmp 임시 파일 디렉토리로 부팅 시 /tmp 디렉토리 안의 모든 파일이 삭제되는 경우가 많습니다.
/lib 시스템을 위한 공유 라이브러리 파일들과 커널 모듈 (lib/modules)이 있습니다.
/var 시스템 작동 중에 변경되는 파일들이 담겨 있습니다. 로그 파일이나 캐시 스풀 파일 등이 있습니다.
/opt 추가적인 운영체제 구성요소들이나 서드파티 응용프로그램들이 설치되는 디렉토리입니다. 하지만 거의 대부분은 /usr 디렉토리에 설치됩니다.
opt를 "option"이란 단어로 오해하시는 분들이 있는데 operation의 줄임말입니다.
/usr 모든 프로그램들이 설치되는 디렉토리로, 보통 /usr 디렉토리에는 배포판에서 제공하는 파일들이 들어 있으며 그 밖에 따로 설치되는 프로그램들과 내부적 용도의 프로그램들은 /usr/local 디렉토리에 들어가는 것이 일반적입니다.
시스템이 아닌 일반 사용자들이 주로 사용하는 디렉토리입니다.
또한 리눅스 커널 소스나 각종 C 언어 관련 헤더 파일 등도 이 디렉토리 안에 저장됩니다.
    /usr/bin 사용자 명령어가 포함되어 있다. python, wish, crontab, du, find 등과 같이 일반 사용자들이 사용할수 있는 명령어들이 위치합니다.
    /usr/include C 또는 C++ 프로그램에 의해 포함되는 헤더 파일들, 시스템이 일반적으로 사용하는 include 파일들이 존재합니다.
    /usr/lib 프로그래밍과 패키지들을 위한 라이브러리들이 존재합니다.
    /usr/local 로컬 디렉토리 체계이며, 해당 컴퓨터에서 사용할 소프트웨어를 시스템 관리자가 설치하는 디렉토리입니다.
    /usr/sbin 시스템 관리자에 의해서 사용되는 비중요 시스템 바이너리들이 존재합니다.
    /usr/share 모든 읽기만 가능한 아키텍처 비의존 자료들이 존재한다. man과 misc 디렉토리를 포함하고, 관련 소프트웨어의 설치 여부에 따라 dict, doc, games, info, local등 디렉토리가 포함됩니다.
/etc 시스템 환경설정 파일이 있는 디렉토리입니다. 또한 프로그램이 설치되면 해당 프로그램으로 설정 파일이 /etc 디렉토리에 위치하게 됩니다.
/sys  

'Linux' 카테고리의 다른 글

맥(mac)OS에서 BOOTCAMP 삭제하기  (0) 2023.12.05
OpenJDK 설치  (1) 2022.03.23