Linux
: 프로그램이 배포되고 동작하게 하는 서버
Terminal
: Linux 서버에 명령어를 전달하는 수단
컴퓨터는 하드웨어와 소프트웨어로 구분된다.
하드웨어는 눈으로 보이고 만질 수 있는 물리적인 장치를 의미하고,
소프트웨어는 반대로 눈으로 보이지않고 만질 수 없는 요소들이다.
소프트웨어는 응용 프로그램(MS Office, 웹 브라우저)과 운영체제(윈도우, 우분투)로 구분된다.
운영체제는 다시 커널과 시스템 프로그램으로 구분된다.
'커널'은 운영체제의 핵심 기능을 하며 컴퓨터 자원들을 관리하는 역할을 한다.
그러나 사용자와의 상호작용은 하지 않으므로 이를 위해 시스템 프로그램이 필요하다.
따라서 운영체제는 커널과 시스템 프로그램을 함께 제공한다.
대표적인 시스템 프로그램에는 쉘(Shell) 이라는 명령어 해석기가 있다.
쉘은 사용자가 컴퓨터에게 전달하는 명령을 해석하는 프로그램으로 사용자와의 상호작용을 가능하게 한다.
커널은 가장 큰 역할은 컴퓨터의 물리적 자원과 추상화 자원을 관리하는 것이다. 이러한 자원들을 관리하는 이유는 사용자가 하드웨어에 접근하고 사용할 수 있도록 매개하기 위해서이다. 컴퓨터만의 언어와 규칙으로 통신해야 하는데 사용자들은 이러한 규칙과 언어에 대해 모르므로 커널은 "번역가" 같은 역할을 하는 것이다.
추상화란? 하드웨어를 여러 사용자들이 번갈아 사용하게 중재함으로서 마치 한 개의 하드웨어가 여러개인 것처럼 보여지도록 하는 기술
추상화된 환경에서 사용자들은 하나의 하드웨어를 독점하여 활용하는 것처럼 느끼게 된다. 또한 커널은 하나의 하드웨어 자원을 여러 사용자들을 위한 복수개의 추상화된 객체로 관리한다.
/
)/
기호로 접근한다.~
기호로 바로 접근 가능cat
, chmod
, chown
, cp
, date
, echo
, kill
, in
, is
, mkdir
, etx
등이 들어있다./
: root 디렉토리~
: home 디렉토리/home/desktop/wecode
cd
, .
: 현재경로, ..
: 상위 경로env
명령어로 환경변수 확인 가능.$PATH
: 터미널에서 사용하는 명령어의 경로PATH=/Users/apple/miniconda3/condabin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
폴더 이동 cd
, cd ../
- 이전 폴더 (상위경로)로 이동, cd .
- 현재경로 cd /usr
현재 경로 내 파일 목록 출력
현재 경로(위치) 출력, print working directory
디렉토리 생성/ 제거, make directory
파일/ 디렉토리 제거 rm -rf/*
- 디렉토리 안의 모든 파일 삭제 !사용하지 않도록 주의!
파일 생성 touch readme.md
리눅스 안의 visual studio 같은 에디터
i
- 파일 수정 가능 esc
- 단축키 입력 가능
vi
나갈 때는 :q
- 그냥 나감, :wq
- 저장하고 나감
좋은 지식 감사합니다~