리눅스
리눅스의 역사
유닉스
- 개발자들이 유닉스라는 운영체제를 기계어로 만듦
- 기계어로 만들었던 유닉스를 C언어로 개발하였고 완성된 유닉스의 소스코드를 무료로 대학기관이나 연구소에 배포
- 배포된 유닉스를 여러 기관에서 개발
- 유료인 유닉스에 반발하여 무료로 배포하려는 기관들이 등장
리눅스
- 리누스 토발즈라는 대학생이 GNU시스템에 적합한 커널을 개발
- 이후 계속해서 발전해가며 여러 리눅스 종류 탄생
리눅스의 종류
- 안녕 리눅스: 우리나라에서 개발중
- 우분투: 개발자 또는 일반 유저가 사용하기 좋음
- CentOS: 서버로 사용하기 알맞음~~(지금은 망했다고 들었다..)~~
리눅스의 특징
- 높은 이식성과 확장성(C언어 기반이기 때문!!)
- 안전성과 신뢰성(국제적이고 개방적으로 개발되었기 때문에 문제점에 대한 대처가 빠름)
- 계층적 파일 시스템 (최상위 디렉토리가 존재하고 모든 것들은 해당 디렉토리 하부에 존재)
리눅스의 기본 구성요소
리눅스는
HW>커널>쉘>명령어 이렇게 크게 4가지 요소로 분류되어있다.
리눅스로 국한하지말고 그냥 운영체제의 기본 구성이라고 생각하고 예시를 들어보자면
H/W: cpu, ram, hdd, I/O
커널(kernel): linux, window
쉘(shell): 파일탐색기, cmd, powershell, bash, zsh
명령어: 프로그램
근데 사실 처음에 이거 보고 좀 으잉? 했다
리눅스 구성요소라고 생각하면 그냥 리눅스 내부의 구성요소를 생각했는데,
이 기본구성 요소는 리눅스를 포함한 구성요소인게 의아했다.
아마도 이는 리눅스 운영체제를 전체 시스템 관점에서 설명하기 위함인듯 싶다
엄밀히 말하면 리눅스는 커널만을 지칭하는 것이지만,
운영체제(Linux) 전체를 지칭할때는 하드웨어 커널 셸 사용자 프로그램 모두 포함하는 개념으로 확장이 되는 것 같다.
리눅스 기본환경
- 프롬프트
- 컴퓨터가 입력을 기다리고 있음을 가리키기 위해 화면에 나타나는 표시
- 일반적으로 리눅스의 프롬프트는 현재 작업 디렉토리, 현재 로그인 한 사용자 등에 대한 정보를 표시
- CLI 인터페이스(명령줄 인터페이스)
- 텍스트 터미널을 통해 사용자와 컴퓨터가 상호 작용하는 방식
- 즉, 작업 명령은 사용자가 컴퓨터 키보드 등을 통해 문자열의 형태로 입력
- 컴퓨터로부터의 출력 역시 문자열 형태
- 명령어 구조
- 명령어: 시스템에서 특정 작업을 하기 위해 실행하는 실행파일, 프로그램
- 옵션: 명령어를 어떻게 실행할 것인지 지정 (일반적으로 대시 문자 뒤에 옵션을 지정)
- 아규먼트(Argument): 명령어에 의해서 영향을 받는 파일 or 디렉토리 등 특정 대상
- ex) netstat -anp, ifconfig -a, ls -al
참고) 인터페이스는 크게 GUI와 CLI(CUI)가 있다.
Windows와 macOS의 경우 GUI 환경이 시스템에 고정으로 포함되어 있으며 분리할 수 없다.
반면, Linux에서는 커널과 GUI환경이 분리되어 GUI 환경이 별도로 관리되고 있어 필요에 따라 선택하여 사용할 수 있다.
출처 : 따라학잇, 나무위키
'CS > Linux' 카테고리의 다른 글
[Linux] 윈도우에서 우분투(aws)로 파일 옮기기(다른 컴퓨터에서 다른 컴퓨터로 파일 옮기기)-termius, scp,ppk->pem (1) | 2024.12.27 |
---|---|
리눅스 기본 명령어 정리 (1) | 2024.12.16 |
리눅스 고정 IP 설정하는 법 (1) | 2024.12.16 |