OS_Linux&Unix

[Linux/Unix] 리눅스 파일 시스템

최선을 다하자! 2022. 11. 2. 15:33

 

리눅스 파일시스템의 모습.

 

 

주요 디렉터리만 설명 

 

 

 /

 루트 디렉토리라고 불리며 리눅스의 최상위 디렉토리입니다. 아래의 주요 디렉터리를 포함하고 있습니다. 이 디렉토리를 기준으로 모든 디렉토리가 생성되고 다른 파티션(디스크 분할)의 연결점 입니다. 

 

bin.

 사용자들이 쓸 수 있는 명령어를 저장해 놓은 디렉터리입니다.

 

sbin.

 관리자(root)가 사용 할 수 있는 명령어를 저장 해 놓은 디렉터리입니다. 

 

dev.

 장치 파일(프린터, 마우스, 모니터 등)을 저장하는 공간이며 커널을 통해서 이 하드웨어에 접근하고 자원을 할당 받을 수 있습니다. 

 

•실제 로 하드 디스크에 존재하지는 않는 정보를 저장함

• 모든 하드웨어( hdd,cdrom, 마우스, 가상 장치,etc…) 를 파일로 인식

하며 이를 장치 파일이라 함

•psaux PS/2 마우스 장치

•tty : teletypewritter, 사용자와 시스템 사이를 중계하는 역할

사용자와 시스템 사이의 입출력은 모두 여기를 통해 이루어짐

서버 시스템에 직접 연결된 장치에서 사용함

•pts : telnet, ssh 등을 이용해 원격으로 접속할 경우

(pseudo TTY slave)

유사 장치 : 실제 장치와 곾렦이 없음

•null : 이 장치로 들어갂 데이터는 모두 사라짐

•zero : 이 장치에서는 항상 null을 반환

 

home.

 각 사용자들의 디렉터리입니다. 리눅스는 다중 접속이 가능한 운영체제이기 때문에 사용자들이 접속한 상태에서 파일의 변환이나 생성 프로세스가 많이 발생하게 되는데 이때에 한 디렉터리에서 모든 사용자가 작업을 수행하게 될 경우 충돌이 생길 수 있기 때문에 각각의 사용자 공간을 마련해 둔 것이라고 생각하시면 됩니다. 

 

tmp.

 프로세스 생성 과정에서 발생되는 임시 파일을 저장하는 디렉토리 입니다. 

 종료시에 이 위치에 있는 모든 파일은 삭제된다.

 

var.

•리눅스 상에서 자주 변경되는 데이터들을 모아놓음

•/var/lib

일반적인 시스템 운용시 계속 갱신되는 파일들을 위한 공간

•/var/local

•/usr/local 아래에 설치된 프로그램들의 다양한 데이터가 보관

•/var/lock : 잠금 파일(lock file)이 있는 곳이다. 

•/var/log : 다양한 프로그램들의 로그 파일

•/var/log/wtmp : 시스템의 모든 로그인, 로그아웃 정보를 기록

•/var/log/messages: 커널과 시스템 프로그램들의 모든 메시지

•/var/run : 시스템의 현재 정보, 부팅 시 리셋

•/var/run/utmp : 현재 로그인한 사용자들에 대한 정보

•/var/spool : 대기 상태에 있는 작업들을 위한 디렉토리

•/var/tmp : /tmp에 있는 임시 파일들보다는 좀 더 오래 유지될 필요가

있는 임시 파일들, 부팅 시 지워지지 않는다. 

 

 

boot.

 부팅에 필요한 커널과 부팅할 때 필요한 핵심 파일이 들어 있습니다. 

 

etc.

 리눅스 내의 설정 파일들이 위치함

주요 설정 파일들

 

•motd : 로그인 성공 시 처음에 띄워주는 문구

•passwd : 리눅스 사용자에 대한 정보

(예전에는 사용자의 비밀번호(!) 도 있었음)

shadow : 리눅스 사용자 패스워드 정보 ( root만 볼수 있음)

•sudoers : sudo 권한을 가짂 사용자와 권한에 대한 정보

•fstab : 파일 시스템과 마운트 포인터

•hosts : 도메인 네임

•issue : 리눅스 배포반 및 버전

•skel/ : 새로운 사용자가 추가될 때 홈 디렉토리에 기본적으로 복사

해줄 파일들을 포함한 디렉토리

•init.d/ : 컴퓨터가 부팅될 때 실행될 파일들을 넣어둔 디렉토리

이 외에도 많은 파일들이 중요한 설정을 가지고 있음

 

lib.

 공유라이브러리 (*.so)를 저장하고 있는 곳입니다. 이 라이브러리에 있는 공유라이브러리를 참조 하여 실행파일이 작동됩니다.  

 

opt.

 추가적인 패키지가 설치될 경우 이 디렉토리에 설치가 됩니다. 

 

root.

 그냥 /home에 사용자들의 디렉토리가 있듯이 root의 디렉토리 입니다. 

  

usr.

리눅스 상에서 가장 큰 공간을 사용하는 디렉토리

•리눅스 배포판에 따라 많은 차이를 보임

•어플리케이션 수준의 프로그램들이 여기에 있음

• usr 밑의 bin, lib,… 등은 사용자가 자유롭게 다룰 수 있음

며 루트 디렉토리의 같은 이름을 가짂 디렉토리와 같은 역할

을 한다. 

 

proc

 •RAM 위에 존재하며 커널에 의해 제어됨

•현재 실행되는 프로세스와 실제로 사용되는 장치, 커널이 수집한

하드웨어 정보가 저장됨

•사용자가 /proc이나 하위 파일에 접근할 때마다 커널에서 파일

내용을 동적으로 만들어냄

•각 프로세스는 고유의 ID를 가지고 있으며(숫자) 이 아이디를 가

짂 디렉토리 밑에 각종 정보를 저장함

=>

cmdline : 프로세스를 시작한 명령행 내용

status : 프로세스의 내부 상태 정보

cwd : 프로세스의 현재 작업 디렉토리

/proc/meminfo : 총 메모리 사용 현황

/proc/stat : 시스템의 상태에 곾한 정보

/proc/uptime : 시스탬이 부팅된 후 흐른 시갂

/proc/version : 현재 실행되는 커널 버전

 

 

기타...

/bin : 문서에 명시되어 있는 명령어 및 필수적인 명령어

/usr/bin : 주로 콘솔과 X에서 사용되는 명령어

/usr/local/bin : 그 외 어플리케이션에 의해 추가되는 명령어

 

 

 

copyright by

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=fjrzlgnlwns&logNo=206146032