- 핵심 키워드
- 논의해 보면 좋은 것들
- 강의 후기
운영체제(Operating System)는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고, 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임
리눅스는 운영체제(Operating System) 중 하나이다.
유닉스(Unix) 운영체제를 모델로 만들어졌으며 다중 작업, 다중 사용자 시스템으로 설계된 네트워크 운영체제(Network Operation System)이다.
다른 운영체제와는 달리 어느 누구도 리눅스를 소유하지 않는다.
리눅스의 장점
리눅스의 단점
Internet Protocol의 약자로, IP 주소와는 엄연히 다른 것이다.
컴퓨터 네트워크에서는 송신자와 수신자가 패킷을 통해 데이터를 주고 받는데, 그때 사용하는 정보 위주의 규약이다. OSI의 7계층 중 네트워크 계층에서 주소 지정과 패킷 분할 및 조립 기능을 담당한다.
현재 인터넷에서 사용하는 표준 프로토콜은 인터넷 프로토콜의 4번째 판인 IPv4이지만 주소 고갈 문제로 조만간 IPv6가 대중화될 것으로 보인다.
그리고 IP 주소는 인터넷에 연결되어 있는 장치(컴퓨터, 스마트폰, 타블릿, 서버 등등)들이 각각의 장치를 식별할 수 있도록 가지고 있는 주소이다. 정확히 말하면 IP 주소이지만 IP라고도 부른다.
예) 115.68.24.88, 192.168.0.1
Uniform Resource Locator의 약자로, 인터넷에서 웹페이지, 이미지, 비디오 등 리소스의 위치를 가리키는 문자열이다.
URL은 웹 주소 또는 링크라고 불린다!
즉, 우리가 브라우저 주소창에서 흔히 볼 수 있는 주소가 URL이다.
원래 어떤 사이트에 접속하기 위해서는 IP 주소를 알고 있어야 하지만, IP 주소는 길기 때문에 사람이 이해하고 기억하기 어렵다. 이를 위해서 각 IP 주소에 이름을 부여할 수 있게 했는데, 이것을 도메인이라고 한다.
예) naver.com
Name Server 또는 Domain Name Server라고 부른다.
네임 서버는 대표적으로 IP 주소와 도메인 주소를 연결해주는 역할을 한다.
위에서 말했듯이 도메인 주소를 알고 있다면 IP 주소를 몰라도 사이트에 접속할 수 있다.
우리가 주소창에 도메인 주소를 입력하면, 도메인을 등록할 때 지정된 네임 서버가 해당 도메인과 연결된 IP 주소를 확인하고 연결해주는 것이다!
서브 도메인은 도메인의 보조적인 역할을 하는데, 다중의 사이트를 만들고 연결하고자 할 때 독립적으로 접속할 수 있도록 도와준다.
서브 도메인을 잘 활용하면 마치 여러개의 사이트가 있는 것처럼 활용이 가능하다.
특히, 특정 컨텐츠 등을 보조로 운영하기에 효율적이다.
ex) 네이버 블로그 : blog.naver.com, 네이버 메일 : mail.naver.com
re + direction -> redirection
즉, 다시 지시하는 것을 뜻한다.
주소창에 URL을 입력했을 때 서버는 브라우저의 요청에 응답하여 해당 주소에 맞는 사이트를 띄워준다.
그런데 이때 서버가 해당 사이트를 띄워주는 것이 아니라 다른 URL을 지시할 수가 있는데, 이게 바로 redirection이다.
최초 요청을 받은 웹서버는 HTTP 응답 상태코드로 302를 보내고 응답 메시지 헤더 중 Location 값으로 리다이렉트 되어야 할 주소를 설정해 리턴한다.
브라우저등의 웹 클라이언트는 HTTP 응답 메시지의 상태코드가 302라는 것을 보고 리다이렉트라는 것을 인지하여 Location 에 설정되어 있는 URL로 다시 재요청한다.
출처: https://dololak.tistory.com/147 [코끼리를 냉장고에 넣는 방법]
서브 도메인의 역할은 무엇일까?
서브 도메인은 도메인의 보조적인 역할을 하는데, 다중의 사이트를 만들고 연결하고자 할 때 독립적으로 접속할 수 있도록 도와준다. 서브 도메인을 잘 활용하면 마치 여러개의 사이트가 있는 것처럼 활용이 가능하다. 특정 컨텐츠 등을 보조로 운영하기에 효율적이다.
실습 때 구입한 도메인은 단 1개였지만, 서브 도메인을 활용했기 때문에 여러개의 주소로 접속할 수 있었다.
API를 배포한 후 사용자 및 사용 고객은 기본 URL을 사용하여 API를 호출할 수 있는데, 이 api-id가 어려워서 친숙하지 않다. 하지만 서브 도메인을 사용하면 기억하기 쉬운 인터넷 주소를 만들 수 있다.
리눅스의 역사
리누스 토르발스가 미닉스 OS(유닉스 계열의 운영 체제)를 사용하는 컴퓨터에서 작업해서 만들었다. 참고 기사 미닉스를 쓰면서 마음에 안 드는 점이 있을 때마다 커널에 여러 가지 기능을 추가했고, 어느새 운영체제에 가까울 정도로 기능이 늘어났다.
알고가기!
GNU (GNU's Not UNIX) : 리처드 스톨먼의 자유 소프트웨어 재단(Free Software Foundation)에서 진행하며 유지 중인 OS 프로젝트! 각종 자유 소프트웨어들이 돌아가고 번영할 수 있는 기반 생태계를 구축하기 위해 GNU 개발을 시작했다고 한다.
약자의 원래 표현 안에 약자 자체가 다시 들어간 것을 재귀 약자라고 한다! 해커들이 이름을 짓는 데에 재귀 약자를 많이 쓴다고 한다!!
↑ GNU의 상징 동물 뿔말(누)
GPL (GNU General Public License) : 자유 소프트웨어 재단에서 주력으로 밀고 있는 자유 소프트웨어 라이선스로, 소프트웨어의 실행, 연구, 공유, 수정의 자유를 최종 사용자에게 보장!
리눅스의 발전
1. 리눅스가 성장한 이유
리눅스 OS 커널 소스코드에 GPL 라이선스를 선택하고, 소스 코드 공개와 공개적 개발을 선택하면서 폭발적으로 성장하기 시작했다!
어떻게 완전하게 발전했을까?
초기 리눅스는 기능이 불완전한 운영체제였지만, 자체 커널 개발에 어려움을 겪고 있던 GNU 프로젝트가 리눅스 커널에 관심을 가졌고, 리눅스 커널과 GNU 유틸리티가 결합하면서 비교적 완전한 운영체제로 거듭났다고 한다.
수많은 배포판
리눅스 커널이 핵심 기술이기 때문에 동일한 리눅스 커널을 사용하는 수많은 배포판들이 있다! 모든 소스 코드가 공개되어 있다 보니 같은 역할을 하는 프로그램이라도 편리성을 지향하는 프로그램, 속도를 지향하는 프로그램 등... 여러 선택지들이 존재하여 많은 배포판들이 생긴 것이다.
리눅스에 관한 흥미로운 사실
1. 리눅스가 항상 무료인 것은 아니다. 소프트웨어는 무료로 제공하지만 기술 지원 서비스 등은 선택사항으로 유료로 제공한다.
윈도우와 macOS의 경우, GUI(Graphical User Interface) 환경이 시스템에 고정으로 포함되어있어 분리 할 수 없다. 하지만, 리눅스는 커널과 GUI(Graphical User Interface) 환경이 분리되어 GUI 환경만 별도로 개발할 수 있다.
'Linux'가 아니라 'GNU/Linux'라고 불러야 한다는 주장이 있다. 자유 소프트웨어 운동을 창시한 리처드 스톨먼도 'GNU/Linux'라고 부르지 않는 기자들과는 대화도 하지 않는다고 한다. 사실 리누스가 만든 것은 리눅스 커널 뿐이며, OS의 구성물 대다수는 자유 소프트웨어 재단 하에서 만들어진 소프트웨어로 채워져 있다. 커널이 OS의 핵심이기는 하지만 분량은 극히 일부일 뿐이다. 그런데 리누스 본인은 Linux라 부르는 걸 선호한다고!
3주차에서는 서버 환경 설정을 하는 것을 배웠다!
정확하게 어떤 원리로 작동하는 것인지는 아직 깨닫지 못했지만...
하지만 모든 코드를 보여주셔서 따라하는데 어려움을 느끼지 않았고, 과제 난이도도 적당했던 것 같다!
리눅스 명령어들이랑 정말 친해지고 있다...🤣😋
아직까지는 내용도 재미있고 쉬운 편인 것 같다!
다음주가 기대됩니당😁😀