[Linux] 리눅스 디렉토리 별 용도 정리

김동욱·2021년 12월 14일
0

linux

목록 보기
1/5

[리눅스 디렉토리 구조 정리]

ᄆ 리눅스 디렉토리 구조 한눈에 보기
출처

ᄆ 디렉토리별 용도 정리

/

: 최상위 디렉토리

  • 마운트 되는 리눅스 파일 시스템이 있는 최상위 디렉토리.
  • 시스템의 근간을 이루는 가장 중요한 디렉토리.
  • 파티션 설정 시 반드시 존재하여야 함.
  • 절대경로의 기준이 되는 디렉토리.

/bin

: 기본 실행 명령어(실행파일)가 저장되어있는 디렉토리

  • 리눅스의 기본 명령어(binary)들이 들어있는 디렉토리.
  • 시스템을 운영하는데 기본적인 명령어들이 모여있는 디렉토리.
  • 부팅에 필요한 명령어들이 위치하며 부팅 후 시스템의 사용자들이 사용할 수 있는
    일반적인 명령어들도 위치하고 있음.

/boot

: 부팅 관련 파일 디렉토리

  • 부팅에 핵심적인 커널 이미지와 부팅 정보 파일을 담고 있는 디렉토리.

/dev

: 장치를 쓸 때 필요한 특수 파일 디렉토리

  • 시스템 디바이스(device) 파일을 저장하고 있는 디렉토리.
  • 하드디스크 장치파일 /dev/sda, CD-ROM 장치파일 /dev/cdrom 등과 같은 장치
    파일들이 존재하는 디렉토리.
  • /dev위치에 백도어파일이 숨겨져 있는 장소로 유명했음. 관리자들의 관심이 소홀한
    디렉토리이기 때문에 백도어 파일을 숨겨두기에 최적의 장소로 인식됨. 따라서 기본
    장치파일 외에 다른 생소한 파일이 생성되어 있는가를 주기적으로 확인해야함.

/etc

: 시스템 설정 파일 디렉토리

  • 시스템 환경설정 파일이 있는 디렉토리.
  • 네트워크 관련 설정 파일, 사용자 정보 및 암호 정보, 파일 시스템 정보, 보안 파일,
    시스템 초기화 파일 등 중요 설정 파일들이 위치한 디렉토리.

/home

: 일반 사용자의 홈 디렉토리

  • 일반 사용자의 홈 디렉토리가 만들어지는 디렉토리.
  • 대부분 사용자의 ID와 동일한 이름의 디렉토리가 자동으로 생성됨.

/lib

: 공유 라이브러리 디렉토리

  • 커널 모듈 파일과 라이브러리 파일이 있는 디렉토리.
  • /lib/modules: 커널 모듈 파일들 존재.
  • 대부분의 라이브러리들은 링크로 연결되어 있음.

/media

: 임시 마운트 디렉토리

  • DVD, CD-ROM, USB 메모리스틱 등과 같은 탈부착이 가능한 장치들의
    마운트포인트 (mount point)로 사용되는 디렉토리.

/mnt

: 입출력 장치 연결 마운트 디렉토리

  • ount 명령을 사용하여, 마운트 시킨 cd-rom, floppy disket등이 들어가는 디렉토리
  • 여러 가지 기타의 파일 시스템을 마운트 하는 곳으로. 가끔씩, cdrom와 플로피
    장치를 마운트 하기 위해서 /cdrom과 /floppy 디렉토리가 사용되지만, 데비안이 아닌
    다른 배포본에서도 이렇게 쓰이는지는 확신할 수 없다. /mnt는 /mount라고도 불린다.
  • 다른 장치들을 마운트 할 때 일반적으로 사용하는 디렉토리
  • 다른 디렉토리를 사용하여도 됨

/proc

: 커널과 프로세스를 위한 가상 파일 시스템들이 저장돼 있는 디렉토리

  • 일명 “가상파일시스템”이라고 하는 곳에 현재 메모리에 존재하는 모든 작업들이
    파일형태로 존재하는 곳
  • 디스크상에 실재 존재하는 것이 아닌 메모리상에 존재하기 떄문에
    “가상파일시스템”이라고 함

/root

: 관리자 홈 디렉토리

  • 시스템 최고 관리자인 root 사용자의 개인 홈 디렉토리

/sbin

: 시스템 명령어가 저장되어 있는 디렉토리

  • fconfig, e2fsck, ethtool, halt, shutdown 과 같은 주로 시스템관리자들이 사용하는
    시스템 관리자용 명령어를 저장하고 있는 디렉토리

/tmp

: 공용 디렉토리 및 임시 저장소

  • 시스템을 사용하는 모든 사용자들이 공동으로 사용하는 디렉토리
    ex) mysql에서 사용하는 mysql.sock 등과 같은 소켓파일
    아파치에서 사용하는 session file
    등이 생성되기도 함
  • ex)와 같이 시스템의 일반적인 사용자 또는 각종 프로세스에서 사용되는 파일들이
    생성되는 위치이다
  • 웹해킹에 사용되는 파일이 업로드 되는 위치이기도 하기 때문에 주의가 요구되는
    디렉토리이다.

/usr

: 시스템이 아닌 일반사용자가 사용하는 프로그램이 설치되는 디렉토리

  • c++, chsh, cpp, crontab, du, find 등과 같이 일반사용자들용 명령어들은 /usr/bin에
    위치
  • 시스템관리자 전용명령어를 제외한 거의 모든 일반적 리눅스 명령어들이 존재하는
    위치가 /usr/bin 이다.
  • 특히 /usr/local 디렉토리는 사용자들이 설치한 어플리케이션이 설치되는 위치이다.
  • /usr/sbin에는 각종 어플리케이션 설치시에 생성되는 명령어들과 네트워크에 관련된
    명령어들이 주로 존재

/var

: 시스템 운영중에 저장되는 자료가 저장되어 있는 디렉토리

  • 시스템 운용중에 생성되었다가 삭제되는 데이터를 일시적으로 저장하기 위한
    디렉토리.
  • 거의 모든 시스템로그파일은 /var/log에 저장
  • DNS의 zone 설정파일은 /var/named에 저장
  • 메일파일은 /var/spool/mail에 저장
  • 크론설정파일은 /var/spool/cron에 저장

/lost+found

: 파일 시스템마다 존재할 수 있는 디렉토리

  • 이 디렉토리는 fsck 또는 e2fsck 등과 같은 파일시스템 체크 및 복구유틸리티 실행
    후에 주로 생성 되는 것으로서 복구되지 않은 채로 블록(block)에만 존재하는 파일
    즉, 연결이 끊어진 inode 들이 숫자파일형태로 존재하는 곳이다.
  • 숫자 형태로 존재하는 파일들은 mv명령어로 파일 이름만 바꾸면 바로 복구될 수
    있다.
  • 이 위치에 존재하는 텍스트파일의 경우에는 file 이라는 명령어와 cat 또는 vi 등의
    명령어로 파일의 내용 등을 확인한 후에 복구 가능하므로 경우에 따라서는 매우
    중요한 역할을 하는 디렉토리
  • 이 디렉토리를 삭제해도 시스템에는 아무런 영향이 없으나
  • 꼭 필요한 파일이 이 디렉토리에 복구되지 않은 채로 남아있을 수 있기 때문에
    반드시 확인후에 삭제해야 한다.

이미지 출처 http://www.doc.ic.ac.uk/~wjk/UnixIntro/Lecture2.html

profile
웹 개발 관련 공부한 내용 기록하는 블로그입니다.

0개의 댓글