[Linux]

xeomina·2022년 5월 17일
0

Linux

목록 보기
1/16
post-thumbnail

운영체제(OS)란?

오퍼레이팅 시스템 (Operating System; OS)

  • 시스템 하드웨어를 관리할 뿐 아니라 응용 소프트웨어를 실행하기 위해 하드웨어 추상화 플랫폼과 공통 시스템 서비스를 제공하는 시스템 소프트웨어
  • 최근에는 실제 하드웨어가 아닌 하이퍼바이저(가상 머신)위에서 실행되기도 함
  • 입출력과 메모리 할당과 같은 하드웨어 기능의 경우 운영 체제는 응용 프로그램과 컴퓨터 하드웨어 사이의 중재 역할을 함
  • 예) Windows, Mac OS, Linux

운영체제 구성 요소

1. 커널(Kernel)

  • 운영체제에서 가장 중요한 프로그램 중 하나로, 하드웨어라는 자원을 관리하는 관리자
  • 즉, 어떤 프로그램이 작동할 수 있도록 CPU, 메모리, 디스크와 같은 물리적 장치들을 배분하는 것
  • Linux 커널은 Linux 운영체제의 주요 구성 요소이며 컴퓨터 하드웨어와 프로세스를 잇는 핵심 인터페이스

커널의 기능

  • 메모리 관리: 메모리가 어디에서 무엇을 저장하는 데 얼마나 사용되는지 추적
  • 프로세스 관리: 어느 프로세스가 중앙 처리 장치(CPU)를 언제 얼마나 오랫동안 사용할지를 결정
  • 장치 드라이버: 하드웨어와 프로세스 사이에서 중재자/인터프리터의 역할을 수행
  • 시스템 호출 및 보안: 프로세스의 서비스 요청을 수신

2. 쉘(Shell)

  • 사람이 사용하는 명령어를 프로그램이 실행할 수 있도록 만들어주는 인터페이스
    • 터미널에서 사용하는 명령어들은 전부 쉘 언어
  • 쉘에서는 프로그램에 직접 명령어를 전달할 수도 있고, 내부에서 함수도 짤 수 있으며, 초기 환경 세팅도 가능
  • 명령줄 vs 그래픽
    • 명령줄 쉘: 운영 체제 상에서 명령 줄 인터페이스(CLI)를 제공
    • 그래픽 쉘: 그래픽 사용자 인터페이스(GUI)를 제공
  • 윈도우 쉘 vs 유닉스 쉘
    • 윈도우 : 탐색기 / cmd
    • 유닉스 쉘 : bash ...

3. 디렉토리(Directory)

  • 폴더(Folder), 카탈로그(Catalog)
  • 컴퓨팅에서 파일을 분류하기 위해 사용하는 이름 공간
  • 일반적인 파일 시스템은 수천개가 넘는 디렉토리들을 가지고 있고, 같은 디렉토리에 관련 파일들이 저장되어 나열 및 관리됨
  • 하위(서브) 디렉토리: 다른 디렉토리 속의 디렉토리
    • 계급, 트리 구조
    • 부모 - 자식 디렉토리

리눅스(Linux)란?

  • 컴퓨터 운영체제(서버 운영체제)이며, 그 커널을 뜻하기도 함
  • 자유 소프트웨어와 오픈 소스 개발의 가장 유명한 표본
  • 다중 사용자, 다중 작업(멀티태스킹), 다중 스레드를 지원하는 네트워크 운영 체제(NOS)
  • Unix와 Windows 운영체제의 대안으로 자리잡음
    • CentOS7(AWS, AMI, AL2), Ubuntu18, ...
  • 벤더 독립성, 적은 개발비, 뛰어난 보안성 및 안정성

  • UNIX > BSD > LINUX > ...

디렉토리

디렉토리

  • 루트 (root) 디렉토리

    • /로 표시하며 모든 디렉토리의 상위 디렉토리
    • /로 시작하면 절대경로
      • /etc/sysconfig/network
  • 하위 디렉토리 & 서브(Sub) 디렉토리

    • 디렉토리 아래 위치한 디렉토리
  • 상위 디렉토리 & 부모 디렉토리

    • ..로 표시하며 디렉토리 위에 위치한 디렉토리
  • 작업 디렉토리(Working Directory)

    • .로 표시하며 현재 위치한 디렉토리

절대경로와 상대경로

  • 절대경로 : 최상위 디렉토리 /부터 시작하는 경로

    • 루트 디렉토리부터 시작하여 특정 파일이나 디렉토리의 위치까지 이동하면서 거치는ㅜ모든 중간 디렉토리의 이름을 나열하여 표시
    • 특정 위치를 가리키는 절대 경로명은 항상 동일
  • 상대경로 : 현재 작업하고 있는 디렉토리에서의 상대적인 경로

    • . : 현재 디렉토리
    • .. : 상위 디렉토리
    • 현재 디렉토리가 어디냐에 따라 달라짐

디렉토리 종류

  • /home : 사용자 홈 디렉토리 생성되는 디렉토리
  • /media : CD_ROM이나 USB 같은 외부 장치를 연결하는 디렉토리
  • /opt : 추가 패키지가 설치되는 디렉토리
  • /dev : 장치 파일들이 저장되어 있는 디렉토리
  • /root : root 계정의 홈 디렉토리
    • / 디렉토리와는 다름
  • /sys : 리눅스 커널 관련 정보가 있는 디렉토리
  • /usr : 기본 실행 파일과 라이브러리 파일, 헤더 파일 등의 파일이 저장되어 있는 디렉토리
  • /boot : 부팅에 필요한 정보를 가진 파일들이 있는 디렉토리
  • /var : 시스템 운영 중에 발생한 데이터의 로그가 저장되는 디렉토리
    • /var/www/html ...
    • /var/log ...
  • /tmp : 시스템 사용 중에 발생한 임시 데이터가 저장되는 디렉토리
    • 부팅 시 초기화
  • /srv : FTP나 Web등 시스템에서 제공하는 서비스의 데이터가 저장되는 디렉토리
  • /run : 실행 중인 서비스와 관련된 파일이 저장되는 디렉토리
  • /proc : 프로세스 정보 등 커널 관련 정보가 저장되는 디렉토리
  • /mnt : 파일 시스템을 임시로 연결하는 디렉토리
  • /etc : 리눅스 설정을 위한 각종 파일들을 가지고 있는 디렉토리

0개의 댓글