1. 리눅스란 무엇인가
- 1991년 리누스 토르발스(Linus Benedict Torvalds)가 개발
- 다중 사용자, 다중 작업을 지원하는 유닉스(UNIX)와 유사한 운영체제
- 리눅스는 무료로 배포가능한 운영체제(Operating System)
- 따라서 다양한 배포판과 버전이 있음(ubuntu, Fedora, Centos,..)
- 공통점
- GNU software + 리눅스 커널
🔔 GNU(=GNU is Not Unix): 유닉스의 소스 코드를 공유하지 않는 문화에 반발해 만들어진 프로젝트 GNU프로젝트에서 운영체제에 필요한 라이브러리, 컴파일러, 에디터 등등은 개발했으나 핵심인 커널 개발 실패 이 때 마침 리누스 토르발스가 개발한 Linux를 GNU 소프트웨어에 포함시킴으로써 지금의 리눅스 탄생
- GNU software + 리눅스 커널
- 차이점
- 데스크탑 관리자
- 패키지 매니저(apt, yum, rpm)
- 기본 파일 시스템
- 공통점
2. 운영 체제
컴퓨터의 하드웨어와 소프트웨어 자원을 관리하는 시스템 소프트웨어
운영 체제의 주요 구성요소
- 커널(Kernel): 운영체제라는 시스템 소프트웨어 내에서의 코어 소프트웨어
- 프로그램 실행, 메모리 관리, 파일 시스템, 디바이스 드라이버, 네트워킹, 사용자 인터페이스 등
- 노래를 들으며 게임을 하는 것과 같이 여러 프로세스를 실행할 때 동시에 잘 작동하도록 커널이 도와준다
쉘(Shell)
- 사용자와 컴퓨터 하드웨어 또는 운영체제간 인터페이스
- 사용자의 명령을 해석해서, 커널에 명령을 요청해주는 역할
- CLI Shell 역할을 하는 프로그램: bash(Bourne-Again Shell) 리눅스의 디폴트, zsh, csh, ksh(Korn Shell)
3. 패키지 관리 시스템
-
리눅스 배포판마다 다양한 패키지 매니저가 있다(apt, yum, rpm, ..)
- 소프트웨어 패치, 추가, 관리
- 패키지 매니저가 파일 간의 의존성 문제를 해결해준다
- sudo apt-get install 패키지명
- sudo apt-get update
4. 하드 링크와 소프트 링크(복사)
- 하드 링크
- ln A B: B라는 파일 만들어서 똑같이 복사
- 삭제는 별개이나 수정은 링크되어 있어 따라 바뀐다
- 소프트 링크
- ln -s A B
- 바로가기와 거의 같은 역할