반응형
LINUX 디렉터리 종류와 특징
디렉터리란 파일 저장소를 의미하며, 리눅스 디렉터리는 최상위 디렉터리(/)를 기준으로 하위 디렉터리들이 존재하는 계층적 트리 구조로 구성되어 있다.
디렉터리별 내용
- / : 루트 디렉터리
- 파일 시스템이 있는 최상위 디렉터리로 루트 디렉터리라고도 함
- 모든 디렉터리의 출발점인 동시에 다름 시스템과의 연결점이 되는 디렉터리
- /boot : 정적 부트 파일
- 부트 디렉터리로 부팅 시 커널 이미지와 부팅 파일 저장
- /proc : 커널 및 프로세스 파일(process)
- 시스템 정보 디렉터리이며 커널 기능을 제어하는 역할
- 현재 실행되는 프로세스와 실제 사용되는 장치, 하드웨어 정보 저장
- 가상 파일 시스템
- 시스템에서 운영되고 있는 다양한 프로세스들에 관한 내용과 프로그램에 대한 정보를 포함
- 디렉터리에서 볼 수 있는 것은 실제 드리아브가 아니라 메모리 상에 저장되어 있다.
- 사용자가 /proc이나 하위 파일에 접근할 때마다 커널에서 파일 내용을 동적으로 만들어낸다.
- 각 프로세스는 고유의 식별자를 가지고 있으며, 이 식별자를 가진 디렉터리 밑에 정보를 저장한다.
- /lib : 공유 라이브러리 (library)
- 공유 라이브러리 디렉터리
- 커널 모듈 파일들과 프로그램 실행을 지원해 주는 라이브러리 저장
- 동적 공유 라이브러리를 저장하고 있다.
- 공유 라이브러리에는 많은 프로그램에서 공통으로 사용하는 함수들이 들어있어 디스크의 공간을 절약할 수 있으며, 프로그램마다 동일한 코딩을 할 필요가 없다.
- 라이브러리 공유 방법에는 정적 라이브러리와 동적 라이브러리 두 가지 방법이 있다.
- 정적 라이브러리는 컴파일 과정에서 공유 라이브러리의 루틴을 사용하지 않고 프로그램내에 라이브러리 루틴의 복사본을 갖도록 컴파일한다.
- 동적 라이브러리는 실행 파일 내부에 라이브러리를 넣어두지 않고 프로그램을 실행할 때 가져와 사용하므로 메모리의 효율성이 높다.
- /bin (binary) : 사용자 바이너리
- 기본적인 명령어가 저장된 디렉터리
- root 사용자와 일반 사용자가 함께 사용할 수 있는 명령어 디렉터리
- /dev (device) : 장치파일
- 시스템 디바이스 파일들을 저장하는 디렉터리
- 하드디스크, 프린터, 입출력장치 등과 같은 장치들을 파일화하여 관리한다. 따라서 특정장치를 실행하기 위해서는 해당 장치 파일을 실행해야 한다.
- 장치 파일(device file) 또는 특수 파일(special file)은 장치 드라이버 이다.
- 블록 장차 파일(block device)은 하드디스크, CD/DVD, 플로피 디스크와 같은 저장 장치들이며, 문자 장치 파일(character device)은 키보드, 마우스, 테이프, 모니터, 프린터 등의 같은 입출력장치들이다.
- 리눅스의 표준 입력장치는 키보드이며, 표준 출력장치는 모니터이다.
- /etc : 구성파일
- 시스템 환경설정 파일과 부팅 관련 스크립트 파일들이 저장되어 있는 디렉터리이다.
- 사용자 정보 및 암호 정보 파일, 보안 파일 등을 저장한다.
- /etc/group
- 룹의 정보가 담겨 있는 파일
- /etc/passwd
- 자원을 사용할 수 있는 사용자 목록 저장
- /etc/shadow
- /etc/passwd의 두 번째 필드인 패스워드 부분을 암호화 관리
- 패스워드 만기일, 계정 만기일 등을 설정
- /root : 루트 디렉터리
- 시스템 관리자용 홈 디렉터리
- /sbin : 시스템 관리 바이너리 (system binary..?)
- 관리자용 시스템 표준 명령 및 시스템 관리와 관련된 실행 명령어 저장
- /usr : 사용자 바이너리 및 읽기 전용 데이터 (user..?)
- 시스템이 아닌 일반 사용자들이 사용하는 디렉터리
- 사용자 디렉터리로 사용자 데이터나 애플리케이션 저장
- 공유 가능한 프로그램들이 설치되며 네트워크를 이용해서 여러 개의 시스템을 연결할 경우 이 디렉터리를 공유해서 설치된 프로그램들을 활용할 수 있다.
- /usr 디렉터리는 읽기 전용으로 마운트 되어야 하며, 가변 자료들은 /var 디렉터리로 심볼릭 링크로 사용하게 된다.
- /home : 홈 폴더
- 사용자 계정 디렉터리로 계정들의 홈 디렉터리가 위치
- 일반 사용자들이 로그인 시 처음으로 위치하게 되는 디렉터리
- /var : 변수 데이터 파일
- 가변 자료 저장 디렉터리로 로그 파일이나 메일 데이터 저장
- 시스템에서 사용되는 가변적인 파일들을 저장하는 디렉터리이다.
- 가변적인 파일들로는 로그파일, 스풀링(spooling), 캐싱(caching) 등이 있다.
- /tmp : 임시 파일 (temporary)
- 각종 프로그램이나 프로세스 작업을 할 때 임시로 생성되는 파일 저장
- 모든 사용자에 대해서 읽기와 쓰기가 허용
- 스티키 비트(sticky bit) 설정으로 파일의 소유자만이 자신의 소유 파일 삭제 가능
- /mnt : 임시 마운트 지점 (mount)
- 파일 시스템을 일시적으로 마운트할 때 사용
- /lost+found : 복구된 파일
- 결함이 있는 파일에 대한 정보가 저장되는 디렉터리
- 파일 시스템의 이상 유무를 진단하고 복구하는 fsck에 의해서 사용되는 디렉터리이다.
- 손상된 파일이나 디렉터리를 /lost+found 디렉터리로 연결한 뒤에 오류를 수정하게 되며 평상시에는 null 파일 링크에 의해서 비어있는 상태로 존재한다.
- 리눅스 파일 시스템 ext2에 의한 fack, ext2 프로그램도 이 디렉터리를 사용한다.
반응형
'📄Document > 🔥Linux' 카테고리의 다른 글
[Linux] 리다이렉션, 파이프, 정규표현식(정규식) (0) | 2021.12.21 |
---|---|
[Linux] 리눅스 기본/기본명령어 모음 (0) | 2021.11.22 |
[Linux] 리눅스, 유닉스, GNU, 리눅스배포판이란? (0) | 2021.11.20 |