2. 리눅스 디렉토리 구조

Son_Doobu96·2023년 1월 27일
0

DevOps 이론

목록 보기
2/25

디렉토리란?

리눅스에서의 폴더를 의미하며 GUI 환경과 다르게 CLI 환경을 가지는 리눅스에서는
디렉토리 구조와 경로에 대한 이해를 통해 작업을 진행한다.

절대경로 =
기준점으로부터의 절대적인 위치를 나타낸다.
이때 기준점은 루트 폴더(/)가 된다.
명령어 $ pwd를 통해 나타나는 경로가
절대경로라고 할 수 있다.

상대경로 =
현재 위치로부터
상대적인 위치를 나타내는 경로이다.
현재 위치한 폴더는 점(.)으로 표현하고 상위 폴더는 두 개의 점(..)로 표현한다.
슬래시(/)는 폴더 내부를 나타낸다.
즉 ./는 현재 폴더의 내부 = ’현재 폴더 하위의’ 라는 뜻이다.

◎ 리눅스 디렉토리 구조

▶ bin
실행 파일들이 모두 모여 있는 디렉토리 입니다.
ls /bin을 입력하여 확인해 본 결과 cat. apt,cp와 같은 오늘 배운 명령어들도
해당 디렉토리에 존재한다.

▶ sbin
시스템 관리를 위한 전반적인 실행 유틸리티를 담고 있는 디렉토리입니다.
해당 디렉토리에 있는 명령어들은 일반 사용자는 실행할 수 없습니다. (루트 사용자는 가능)

▶ dev
디바이스 드라이버들을 모아 놓은 디렉토리입니다.
디스크 드라이버, 메모리와 같은 시스템 디바이스에 접근하는데 사용된다고 합니다.

▶ root
root 사용자 시스템의 홈 디렉토리 입니다.

▶ etc
시스템의 부팅, 셧다운 시에 필요한 파일들과 시스템 전반에 걸친 설정 파일들,
초기 스크립트 파일들이 있습니다.
시스템에 어떠한 문제가 발생할 경우 시스템 전체 환경 설정을 변경하기
위해서는 해당 디렉토리 내에 포함되어 있는 파일들을 잘 알아야 합니다.

▶ lib
부팅과 시스템 운영에 필요한 공유 라이브러리와 커널 모듈이 위치한다고 합니다.
공유 라이브러리란 dll과 같이 여러가지 프로그램들에 의해서 사용되는 기능을
별도의 프로그램으로 분리 시켜 놓은 것입니다.
커널 모듈 역시 라이브러리와 같이 커널 안에 자체적으로 포함되지 않고
독립적인 형태로 분리되어 있으면서 부팅시에 유기적으로 연결되는 별도의 파일이라고 합니다.

▶ mnt
루트 파일 시스템에 연결된 파일 시스템들의 마운트 디렉토리입니다.
마운트하지 않은 상태에서는 빈 디렉토리이지만 마운트 시키게 되면
해당 파일 시스템의 내용이 포함된다고 합니다.

※마운트 : mount 명령어를 사용하면 저장 장치의 접근 경로를 원하는 위치에 생성할 수 있다.
마운트를 이용하면 분산 파일 시스템으로 확장하기가 용이하다.
사용자는 마운트된 미디어의 파일들에만 접근이 가능하다

▶ home
사용자의 홈 디렉토리로써 login했을때 처음으로 위치하게 되는 디렉토리입니다.

▶ opt
add-on 소프트웨어 패키지가 설치됩니다.

▶ tmp
프로세스 진행중 발생하는 임시파일들이 저장되는 작업 디렉토리입니다.
수시로 자료가 생성되고 제거되는 디렉토리로써 중요한 자료는
해당 디렉토리에 저장하지 않는 습관을 들여야 합니다.

▶ usr
루트 디렉토리와 함께 중요한 시스템 디렉토리 계층을 구성합니다.
해당 디렉토리에는 공유 가능한 대부분의 프로그램들이 설치되며
네트워크를 이용해서 여러개의 시스템을 연결할 경우
해당 디렉토리를 공유해서 설치된 프로그램들을 활용할 수 있게 됩니다.

▶ var
내용이 수시로 변경될 수 있는 변수를 담고 있는 파일들이 위치하고 있습니다.
tmp 디렉토리가 파일 자체에 대한 임시 디렉토리인데 반해
var 디렉토리는 변경될 수 있는 자료를 포함하고 있는 파일들을 위한 디렉토리입니다.

▶ proc
가상 파일 시스템입니다. 해당 디렉토리는 시스템에서 운영중인 다양한 프로세서들에 관한 내용과 프로그램에 대한 정보를 가지고 있습니다.
해당 디렉토리에서 볼 수 있는 것은 실제 드라이브에 저장된 내용이 아닌 메모리상에
저장된 내용입니다.
lost+found : 파일 시스템의 이상 유무를 진단하고 복구하는 프로그램인
fsck(File System Check)에 의해서 사용되는 디렉토리입니다.
파일이 손상되면 손상된 디렉토리를 lost+found 디렉토리로 연결한 뒤 오류를 수정하게 되며
평상시에는 null파일 링크에 의해 비어있는 상태로 존재합니다.

profile
DevOps를 꿈꾸는 엔지니어 지망생!

0개의 댓글