Linux
Linux는 유닉스 계열로 만들어진 오픈소스 운영체제
모든 것들을 파일로 관리
계층구조(tree 구조)의 디렉토리
그렇다면 운영체제는 무엇인가?
운영체제(OS)
Operating System
컴퓨터 시스템 자원들을 효율적으로 관리,
사용자가 컴퓨터를 편리, 효과적으로 사용할 수 있게 관리해주는 소프트웨어
- 응용 프로그램이나 사용자에게/ 컴퓨터의 자원을 사용할 수 있는 인터페이스 제공/ 결과를 돌려줌
- 응용 프로그램이나 사용자에게 /모든 컴퓨터의 자원을 숨기고, 정해진 방법으로만 컴퓨터의 자원을 사용할 수 있도록 제한
사용자는 운영체제가 제공하는 인터페이스를 통해서만 컴퓨터의 자원을 접근하도록 함으로써,
컴퓨터의 자원을 보호하고 효율적으로 관리
운영체제의 커널(Kernel) & 쉘(Shell)
커넬
- 운영체제의 핵심 기능들이 모여있다
- 사용자와 응용 프로그램에 인접하여 커널에 명령 전달, 실행 결과를 사용자와 응용 프로그램에 전달/돌려주는 인터페이스로 구성
- 프로세스 관리, 메모리 관리, 파일 시스템 관리, 입출력 관리, 프로세스 간에 통신 관리
쉘
- 응용프로그램과 커널 사이의 명령어 해석기 (명령어와 커널이 대화 도움)
즉, 사용자가 명령어를 입력하게 되면
컴퓨터 내부에서는 쉘이 이를 받아들이고, 명령어를 해석
커널이 하드웨어를 조작하게 합니다.
쉘은 크게 Windows와 같은 GUI(Graphical User Interface)와 Linux에서 사용되는 CLI(Command Line Interface)가 있습니다.
다시 Linux로 돌아가서,
파일 종류에는
- 일반 파일 : 데이터 저장에 사용 (실행, 데이터, 이미지 파일--> binary 0과 1 형태 파일/ 텍스트 -> vi, vim 문서 편집기 명령어로 내용 보거나 수정 가능)
- directory 파일 : directory 도 파일의 한 종류 (해당 directory에 저장된 정보, 하위 directory에 대한 정보 담음)
- 링크 파일: 원본 파일을 대신하기 위해 다른 파일명으로 지정 ('바로가기' 기능)
- 장치 파일 : 장치(hardware) 관리하는 파일 (CPU, CD-ROM)
root directory ( / )
시작점(가장 위)
모든 디렉토리의 최상위 디렉토리
절대경로 표기할 때 이거로 시작
/home (~)
사용자들의 home directory가 있는 곳
User 사용자의 공간 (window C드라이브/Users/사용자명과 비슷한 역할)
가장 빈번하게 사용하는 경로
home directory, system directory
home directory <=> system directory (리눅스 운영 & 관리 관련 파일들 존재)
home directory: 2가지 (사용자에 따라 구분됨)
- 일반 사용자: /home/user_name
- 루트 사용자: /root
system directory : home directory 를 제외한 모든 directory
/bin
일반 사용자 (기본적 명령어)
Binary 의 약자
OS의 최소한의 구동 위해 필요한 프로그램 들어있는 directory
기초적 프로그램 포함
/sbin
root 사용자 (시스템 관리/ 운영을 위한 명령어)
/bin과 유사하지만 오직 root 사용자 전용 프로그램
(예 rebbot, tcpdump, fdisk)
/usr/bin
/bin에 있는 명령을 제외한
기본적인 명령어 (일반 사용자)
/usr/sbin
/sbin에 있는 명령을 제외한
시스템 관리 위한 명령어 (root 사용자)
/root
root 사용자의 홈 디렉토리 (다른 사용자 접근 불가)
PATH - 절대경로, 상대경로
절대경로
Absolute path
경로를 표현하는 방식이 root directory부터 시작~ 목적지까지의 실제 경로
ex. /home, /eun , /bin
현재 나의 위치와 상관없이 이동할 수 있다!
상대경로
Relatvie Path
현재 내 위치를 기반으로 나타내는 경로
- . 현재 내가 있는 경로요소
- .. 이전 위치로 가기 (이전 폴더)
환경변수
환경: 현재 돌아가고 있는 shell
변수: variable
--> 환경변수 = shell의 어떤 설정값을 갖고 있는 변수
shell이 돌아가는 동안 계속 존재하고 사용됨
(env 명령어)
PATH 환경변수
환경변수들 중 이해해야 하는 변수는
PATH 환경변수
명령어들을 찾을 수 있는 경로들을 저장해놓은 환경변수
PATH 환경변수에는 터미널에서 사용하는 명령어들의 경로가 저장되어있음 (하나하나 프로그램 위치 찾는 게 아닌, 해당 명령어 실행되게)
Configs 설정파일 / 숨김파일/ dot file
Linux에서 필요한 설정(config)들을 파일 통해 적용
ex.shell
주로 . 로 시작
숨김파일로 간주 (dot file)
ls-a 명령어로 볼 수 (all)
'Wecode - Foundation 1 (부트캠프) > Linux, Terminal' 카테고리의 다른 글
[linux& terminal] 실습 & 추가 명령어 linux commands (0) | 2023.09.04 |
---|---|
[Git, Github] homebrew 설치 (0) | 2023.09.01 |
[Linux & Terminal] Linux Commands 터미널 명령어 (0) | 2023.08.30 |