Operating System(OS)/리눅스 마스터 2급 이론 정리

리눅스마스터 2급 자격증 이론 내용 정리 / 03. 파일 시스템과 프로세스 - 3. 셸(Shell)과 환경 설정

9rrrr-m 2024. 8. 6. 21:01
더보기

올해안에 리눅스 마스터 2급 따기를 목표로 '세종사이버대학교 컴퓨터공학과·AI공학과' 유튜브 채널의 컴퓨터·AI공학과 리눅스마스터2급 자격증 특강 강의를 듣고 내용을 정리한 것입니다.

 

* 오타나 내용 오류시 댓글 남겨주시면 감사하겠습니다!

** 코드 블록에 명령어는 적혀있으나, 모든 실행 결과를 함께 적지는 않았습니다.

 

03. 파일 시스템과 프로세스

    1. 권한 및 그룹 설정
    2. 파일 시스템의 관리
    3. 셸(Shell)과 환경 설정
    4. 프로세스 개념과 관련 명령어


03. 파일 시스템과 프로세스

3. 셸(Shell)과 환경 설정

▶ 리눅스의 셸(Shell) 개요

  • 명령어 해석기: 사용자의 명령어 ↔ 커널
    ◦  로그인 시 사용자별 셸 지정
    ◦  리다이렉션, 파이프, 셸 스크립트, 포그라운드/백그라운드 프로세스 실행
  • 셸의 분류
     본셸(Bourne Shell): $ 프롬프트 → korn shell,  bash shell (리눅스 표준셸, POSIX 호환),  z shell (확장 기능 제공)
    ◦  C셸: % 프롬프트 → tc shell (BSD 계열에서 많이 사용, 명령어 편집 기능)
  • 사용할 수 있는 셸의 목록과 설정
    ◦  /etc/shells
     /etc/passwd의 마지막 필드
[rocky@localhost ~]$ cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
[rocky@localhost ~]$ echo $SHELL
/bin/bash

 

▶ 환경 변수와 셸 변수의 특징

환경 변수 (전역 변수) 셸 변수 (지역 변수)
전체 셸에서 사용 가능한 전역 변수 현재 로그인 셸에서만 사용 가능한 지역 변수
서브 셸에 기능 상속 가능 서브 셸에 기능 상속 불가능
환경 변수 확인 명령:  env 셸 변수 확인 명령:  set
  • 주요 환경 변수
    ◦  PATH,  HOME,  HOSTNAME,  USER,  DISPLAY,  PS1,  PWN,  SHELL,  TERM,  TMOUT,  LANG,  PRINT,  MAIL
  • 환경 변수의 설정과 해제
    ◦  설정:  export  변수명=값 → $변수명으로 참조
    ◦  해제:  unset  변수명

▶ 환경 설정 파일 - 셸 시작 시 참조하여 자동 실행

  • 주요 환경 설정 파일 (bash shell)
    ◦  공통 설정:  /etc/profile,  /etc/bashrc
    ◦  사용자 설정:  ~/.bash_profile (로그인 시),  ~/.bash_histroy (명령어 재사용),  ~/.bashrc (alias와 자동실행),  ~/.bash_logout (로그아웃 직전)
  • /etc/profile.d: 특정 응용 프로그램 시작 시 자동 실행할 스크립트 경로 저장

 

▶ History 기능 - .bash_history에 저장된 명령어 재사용

  • 사용 방법
    ◦  history: 명령어 목록 출력
    ◦  상/하 화살표 → 이전/이후 명령어
    ◦  !! (마지막 명령어),  !n (n번째 명령어),  !-n (현재 이전 n번째 명령어),  !string (string으로 시작하는 최근 명령어),  !$ 혹은 !!$ (마지막 명령의 인자),  !*(마지막 명령의 모든 인자),  !?string? (string을 포함하는 가장 최근 명령어)

  • History 관련 환경 변수
    ◦  HISTSIZE,  HISTFILE,  HISTFILESIZE,  HISTTIMEFORMAT,  HISTCONTROL
728x90