[모두의 리눅스] 1장 리눅스 첫 걸음

aramjs·2023년 10월 23일

Linux

목록 보기
1/14

1.1 리눅스란

  • 리눅스

    • 컴퓨터라는 하드웨어에서 다양한 애플리케이션을 돌리기 위한 기본 소프트웨어
    • 리눅스는 일반적인 데스크탑 뿐 아니라 임베디드, 서버 등 다양한 분야에서 널리 사용되고 있음.
  • 장점

    • 오픈 소스이다. 운영 체제의 내부 동작을 확인할 수 있다. 컴퓨터를 깊게 공부하기에 좋다.
    • 높은 품질의 다양한 소프트웨어를 돌릴 수 있다.
    • 스크립트를 통해 자동화할 수 있다.
    • 직접 코드를 보면서 구체적인 동작을 파악할 수 있다.
  • 단점

    • 상용 애플리케이션이 많지 않다.
    • 멀티미디어를 편집하는 소프트웨어가 부족하다.
    • 한글 대응이 부족하고 영어로 되어 있다.

1.2 리눅스 환경 준비

  • 배포판

    • 어떤 배포판을 사용할 지 정해야 한다.
    • 커널이란 운영 체제의 중심에서 하드웨어 제어하는 역할을 담당하는 소프트웨어이다. 사용자가 사용하는 도구나 애플리케이션은 포함되지 않는다.
    • 리눅스 배포판 : 커널과 함께 기본적인 명령어와 애플리케이션을 묶어서 사용자가 바로 사용할 수 있게 패키징한 것.
    • 커널을 가리킬 때는 '리눅스 커널'이라고 명시적으로 표현한다.
  • 레드햇(Red Hat) 계열 : Red hat Enterprise Linux, CentOs, Fedora

  • 데비안(Debian) 계열 : Debian GNU/Linux, Ubuntu

  • 가상 머신에 리눅스 환경을 구축한다.

    • 호스트 OS : 가상 머신을 돌리는 OS
    • 게스트 OS : 가상 머신 위에 있는 OS. 쉽게 재시작할 수 있다.

1.3 로그인, 로그아웃, 종료

콘솔에서 로그인 시 패스워드를 입력하면 아무것도 표시되지 않는다.

로그인 완료되면 셸이 작동하여 프롬프트가 표시된다.

  • GUI

    • 내부적으로는 명령어가 실행되거나 설정 파일이 변경된다.
    • CLI를 보기 좋게 감싼 것이다.
    • 프로그램 간의 입출력 연동이 어렵다.
  • CLI

    • GUI보다 풍부하고 강력한 기능을 구사할 수 있다.

    • 셸 스크립트를 사용하면 다양한 로직으로 프로그램을 연결할 수 있다.

    • 명령어들을 파일에 기록하고 일괄 실행이 가능하다.

    • 여러 명령어를 조합해 자기만의 명령어를 만들어 자동화할 수 있다.

  • 로그아웃

    • 작업이 끝난 후 로그아웃 해야 한다.

    • 자원이 불필요하게 사용되고, 계정 탈취의 위험성이 있다.

    • CLI로 로그인 한 경우 exit로 로그아웃 한다.

    • exit : 셸을 종료하는 명령어이다. 셸이 종료되면 자동적으로 로그아웃된다.

    • logout : 현재 셸이 로그인 셸이어야만 동작한다.
      logout보다는 exit를 사용하는 것이 좋다.

    • GUI의 터미널에서 exit를 실행하면 터미널만 종료될 뿐 로그아웃은 되지 않는다.
      터미널이 로그인 셸이 아니기 때문이다.
      GUI에서는 메뉴를 통해 로그아웃 해야 한다.

  • 셧다운 : 컴퓨터의 전원을 끄려고 OS를 완전히 정지시키는 것.

    • 전원 종료 전에는 os를 정상 종료 하는 것이 좋다.
      여러 프로그램이 백그라운드에서 돌아가기 때문이다.

    • shutdown : sudo su - 를 사용하여 슈퍼 유저로 전환 후 실행해야 한다.
      슈퍼 사용자가 되면 $에서 #로 바뀐다.

    • shutdown -h now : 곧바로 전원 off

    • shutdown -r now : 재부팅

    실행이 안 되는 경우

    • /sbin/shutdown -h 5 : 5분 후 셧다운

    • 리눅스에서 로그아웃은 하지만 셧다운은 하지 않는 경우가 흔하다.

    • 유지보수, 장애 대응 시에만 제한적으로 셧다운한다.

profile
안녕하세요.

0개의 댓글