컴퓨터 연결 구조
LAN(Local Area Network) < MAN(Metropolitan) < WAN(Wide)
- LAN : 작은 지역 (아파트, 커피숍 등)
- MAN : LAN을 연결한 도시
- WAN : 도시와 도시, 나라와 나라를 연결
** 유선을 벗어나 무선을 만들어 냄 (3G, 4G 5G)
파일을 달라고 요청 > 보조기억장치의 파일을 메모리로 올림 > 그 파일을 CPU가 처리해서 보냄
- 파일을 달라고 하는 컴퓨터 = 손님 = 클라이언트(보이는 곳) = 프론트엔드
- 파일을 주는 컴퓨터 = 종업원 = 서버(안보이는 곳) = 백 엔드
운영체제와 서버
- 운영체제 : 윈도우, 맥OS, 리눅스
- 컴퓨터라는 하드웨어를 사용하도록 도와주는 소프트웨어
사용자(User) - 쉘(Shell) - 커널(Kernel) - 하드웨어(Hardware)
=> 쉘 = 터미널 (터미널에서 실행되는 프로그램이 쉘)
=> 쉘은 여러종류이지만 커널은 똑같은 것을 사용한다.
리눅스(Linux)
왜 리눅스를 사용하나?
- 오픈소스 소프트웨어
- 네트워크 운영체제(멀티테스킹, 멀티 스레드)
- 리누스 토발스가 만듦 (리눅스, 깃 을 만든 사람)
- 리눅스는 무료배포이며, 그로인해 다양한 버전이 나옴
- 윈도우95, xp, 10 처럼 리눅스의 유명한 버전은 우분투(Ubuntu), 레드햇(Red hat), 안드로이드(Android)
- 그래픽UI(휴지통, 폴더 등)가 아닌 CLI환경에서 명령어(MS-DOS처럼)로만 동작 -> 리눅스 대부분의 버전들이 다른 운영체제보다 저렴한 이유이기도 -> but, 기본적인 명령어를 알아야 사용
파일구조
/ : 최상단(root)
~ : /HOME/폴더 접근
/bin : Binary의 약자, OS최소한의 구동을 위해 필요한 파일이 들어있음
경로
절대 경로 : /home/eun/bin(고유한 최상위 경로부터 출발)
상대 경로 : cd ..(현재 내 위치로부터 찾음)
환경변수
- OS환경에서 필요한 변수를 담아둔 것
- 기본 제공도있고, 직접 생성도 가능
리눅스를 서버로 사용하는 이유
서버 프로그램은 365일 24시간 계~속 안정적으로 돌아가는게 중요, 서버를 돌릴 때에는 그래픽UI가 필요 없어 저렴
개인 서버 vs 호스팅 업체
서버를 365일 24시간을 돌려야 하는데,
- 개인이 집에서 서버를 운영하면 전원이 꺼져 데이터가 날아버리거나 하는 여러 리스크가 존재.
- 호스팅 업체를 사용하면 안정적이고 효율적인 서버를 쉽게 구축 가능
공부하며 정리&기록하는 ._. 씅로그