Linux의 구조와 파일시스템

우진혁·2024년 6월 14일

Linux

목록 보기
5/5

리눅스의 구조

  • 커널(Kernel) 프로그램의 실행과정에서 가장 핵심적인 연산이 이루어지는 부분
    하드웨어를 직접 제어, 프로세스 관리, 메모리 관리, 파일시스템 관리 등을 수행
    응용프로그램과 하드웨어 사이의 관리자 역할하면서 쉘에서 명령하는 작업도 수행
  • 쉘(Shell) 운영체제에서 사용자가 입력하는 명령을 해석해서 커널에 전달, 실행해주는 프로그램 커널에게 명령어를 찾아서 작업 요청하고 그 결과를 쉘로 받아 사용자에게 알려주는 형식
  • 응용프로그램(Application) 각종 프로그래밍 개발도구, 문서 편집도구, 네트워크 관련 도구 등 전부 응용프로그램

리눅스의 디렉토리 구조

주요 디렉토리의 기능들 (몇 가지만 예시 겸 소개)

  • /(루트) 최상위 디렉토리, 모든 디렉토리의 시작점이고 절대경로 표기할 때 이 디렉토리를 먼저 표시해야 한다.
  • /bin 바이너리를 저장하는 디렉토리, 기본 명령어들이 저장된 디렉토리
  • /etc 리눅스설정을 위한 각종 파일들이 있는 디렉토리
  • /dev 여러가지 장치 파일들이 저장되어 있는 디렉토리
  • /var 시스템 사용 중에 발생한 데이터, 로그가 저장되는 디렉토리
  • /home 사용자 홈 디렉토리
  • /usr 일반 사용자들이 사용하는 프로그램과 데이터들이 존재하는 디렉토리
    이 외 등등등 많은 것 들이 존재한다.

파일시스템 (File system)

파일시스템이란?은 파일들이 디스크 상에서 구성되는 방식이다. 파일시스템은 컴퓨터에서 파일이나 자료를 쉽게 발견할 수 있도록 유지, 관리한다.

파일시스템이 필요한 이유
파일 시스템 검사의 필요성 파일 시스템을 검사하는 것은 디스크 공간을 효율적으로 관리하고, 시스템 성능을 향상시키며, 데이터 손실을 방지하는 데 중요한 역할을 합니다.

예를 들어, 디스크 공간이 부족하다면 새로운 애플리케이션의 설치나 중요한 데이터의 저장에 문제가 생길 수 있습니다.

파일시스템의 특징

  • 사용자영역이 아닌 커널 영역에서 동작한다
  • 계층적 디렉터리 구조를 가진다
  • 단일 트리구조를 갖는다.
  • 하나의 root 디렉토리가 있고, 디렉터리-하위디렉터리-데이터파일로 구성된다.
  • Linux 파일시스템에서는 모든 것이 파일이다.
    ① 하드웨어 장치, 프로세스, 파일 등등
    ② 파일 형태로 되어있기 때문에 어떤 동작을 위한 조작이 쉬워진다.

파일시스템의 종류
리눅스에서는 ext3, ext4, xfs, iso9660, nfs 등등 다양한 파일 시스템을 제공
① EXT : Extended File System
리눅스 초기에 사용되던 파일 시스템이며, 시스템이 조각화로 복잡해지는 등에 문제로 사용하지 않고 있음

② EXT2 : Second extended filesystem
EXT의 문제점을 해결하기 위해 나온 파일 시스템으로 256 바이트 길이의 파일, 2GB 단일 파일, 4TB의 디스크를 사용
->그러나 시스템이 비정상적으로 종료되었을 때 부팅시 파일 시스템의 일관성 검사를 하게 되고 파일 시스템에 많은 양의 데이터가 있을 경우 오랜 시간이 걸리는 등등의 문제로 사용하지 않고 있다.

③ EXT3 : Extended File System 3
파일 시스템의 변경 사항을 추적, 삭제일 복구하는 기능인 저널링이 추가되었고, EXT2 파일 시스템보다 데이터 신뢰성이 강화되고 빠른 속도가 작업을 수행할 수 있게 되었다.
->그러나 파일 시스템은 삭제 파일 복구가 용이하지 않는 등 개선해야 될 점이 많아 사용하지 않고 있다.

④ EXT4 : Extended File System 4
EXT3 문제점을 해결하기 위해 나온 파일 시스템
파일 시스템 점검 속도 향상, 파일복구 용이, 16TB까지 단일 파일 크기를 지원하고 있으며 현재 가장 많이 사용하는 파일 시스템

⑤ XFS
빠른 복구를 제공, 크기 변경, 최대 500TB까지 지원하는 64Bit 고성능 저널링 파일 시스템

⑥ SWAP
시스템이 처리하는 데이터의 저장할 RAM 부족할 경우 SWAP 파티션이 저장되는 파일 시스템

⑦ EFI
UEFI에서 부팅용으로 사용하는 파일 시스템

⑧ NFS : Network File System
네트워크를 통해 다른 컴퓨터와 파일을 공유할 수 있도록 하는 파일 시스템

참조 : https://www.infracody.com/2023/09/understanding-linux-file-systems-guide-to-checking-file-systems.html#elcreative_toc________________________
참조 : https://it-serial.tistory.com/19

profile
개인 발전과 성장을 위한 정리노트

0개의 댓글