
Linux
Linux란
- 프로그램이 배포되고 동작하게 되는 환경이 바로 Linux OS가 설치된 서버이다.
- 리누스 토발즈(Linus Benedict Torvalds)가 개발한 Unix 기반 운영체제
- Linux, Git을 최초로 개발함 => 오픈소스 커뮤니티에 크게 기여
- 구글에서 배포하는 안드로이드 역시 리눅스의 한 갈래
- Command Line Interface(CLI) 기반
Terminal
Linux는 왜 쓰이나요?
- 안정적
- 유연성
- 오픈소스 => 사용자가 소스코드를 비교적 쉽게 변경 가능
- 무료
- 오픈소스이기 때문에 사용자가 많아 생태계가 풍부하다.
Linux는 언제 쓰이나요?
- 안드로이드 기반 스마트폰, 임베디드 시스템(구글 네스트, 삼성 TV, 테슬라 자동차 등)
- 서버에서 설치된 리눅스 환경을 사용할 수 있다.
- 인프라를 구축해야 하는 백엔드 개발자들에게 아주 중요!
핵심개념
FHS(Filesystem Hierarchy Standard)

- root 디렉토리 (/)
- 최상위 경로
/
기호로 접근 가능
- 파일 시스템은 root 디렉토리에서 부터 뻗어나간다.
- home 디렉토리 (~)
- 유저의 공간
- 가장 빈번하게 사용하게 되는 겨올
~
기호로 접근 가능
- 전부 외우려고 하기 보다는 주로 내가 쓰게 될 기능과 공간이 어디에 있는지를 중점적으로 익히면 됨
path
절대경로 (Absolute path)
상대경로 (Relative path)
환경 변수
- OS도 프로그램이기 때문에 동작하기 위한 변수 필요
env
명령어로 linux의 환경변수 확인
$PATH
- 터미널에서 사용하는 명령어의 경로가 저장되어 있다.
- 여러 경로를 저장하기 위해 각 경로는
:
로 구분된다.
configs
.
으로 시작되는 파일 및 디렉토리는 숨김파일로 간주(dot file)
- 대부분 설정 파일로 쓰임
.bashrc
, .zshrc
- shell
- 터미널이라고 생각하면 된다.
- 명령어를 kernel에 전달하는 역할을 한다.
- 숨김파일은 ls -al를 통해 확인할 수 있음
기본적인 리눅스 명령어
- cd
- ls
- pwd
- mkdir / rmdir
- rm
- cp
- mv
- cat
- touch
- chmod
