서버를 생성하려 보면 다양한 OS가 선택지로 나온다. 처음에는 클라우드 서버를 생성할때 도대체 뭐가 뭔지 몰라서 리눅스만 선택하고 진행했다. 다른 OS는 어떤건지, 어떤 장단점이 있는지 항상 궁금했기 때문에 이번 기회에 정리해보려 한다. 레츠꼬!
CentOS (센토스)
센토스는 Community Enterprise Operating System 의 약자이다. 그 유명한 레드햇이 만든 리눅스 운영체제, 레드햇 엔터프라이즈 리눅스(RHEL)와 완전하게 호환되는 무료 기업용 운영체제이다. 따지고 보자면 무료 버전 RHEL 이다. 그러나 이도 무색해 진것이, 2020년 8월 레드햇에서 CentOS 8을 이후로 CentOS Stream버전만 지원한다고 밝혔는데, Stable 버전을 앞으로 무료로 지원하지 않겠다는 것이다. RHEL을 무료로 사용할 수 있다는 장점은 20년 8월을 기점으로 사라졌다... 아무튼 지금도 CentOS를 기업, 개인 할 것 없이 많이 사용하고 있다고 한다. 단점은 RHEL과 달리 사후 관리 기업이 없다는 것..
😇 장점
- RHEL과 완벽한 호환 → but...
- 유료인 RHEL을 무료로 사용해 볼 수 있다.
😈 단점
- 사후 관리 기업이 없다.
Linux (리눅스)
리눅스로 컴퓨터 운영체제 중 하나이다. 다중 사용자, 다중 작업(멀티 테스킹, 다중쓰레드)를 지원하는 네트워크 운영체제(NOS)이다. 리눅스는 오픈 소스 프로젝트이다. 독점되거나 배타되지 않는 프리 소프트웨어를 지향하며 탄생한 OS로, 오픈 소스 프로젝트이며 누구나 무료로 사용할 수 있다. 때문에 기업은 물로 개인, Pc, mobile, IOT 기기 등 광범위하게 사용되고 있다. 아무튼 리눅스가 오픈소스이기 때문에 누구나 다운가능하고 편집이 가능한데, 이러한 리눅스의 장점때문에 다양한 리눅스 기반의 OS들이 탄생했다. 리눅스를 가공하여 다른 사용자들이 리눅스를 사용하기 쉽도록 회사만의 OS로 업그레이드 한 것인데, 위에 적은 CentOS, RHEL, 뒤에 말할 Ubutu 등 사용자 입장에서 양질의 배포판을 선택할 수 있는 기반이 되었다. → 공식 페이지, 참고 블로그1 , 참고 블로그 2
😇 장점
- 유닉스와 완벽한 호환
- 공개 운영 체제 (오픈소스) & 무료
- PC용 OS (가령 윈도우..)보다 안정적이다.
- 강력한 네트워크 구축 가능
- 강력한 보안 기능
- 인터넷의 거의 모든 기능을 지원한다. (네트워킹 기능 거의 다 지원)
- 개발환경이 풍부하다.
😈 단점
- 문제 발생시 보상 받을 방법이 없다...
- 한글 입출력이 어렵다. (이건 개발할때 거의 다 그래서...)
- 기술 지원이 부족하다. (커뮤니티 의존)
- 특정 하드웨어데 대한 자원이 부족하다.
- 숙련된 기술이 요구된다. (배워야 함)
Ubuntu (우분투)
우분투는 리눅스 커널(핵심 기능) 기반의 배포판 이다. 때문에 오픈소스이며, 특히 개인 Pc에 최적화된 os로 알려져 있다. 하지만, 개임 pc뿐만아니라 서버에도 사용되며 꽤 다양하게 사용되고 있다. apt- 명령어를 기반으로 다양한 언어, 패키지등을 다운받는게 특징이다. 서버 세팅하다보면 지겹게 볼 명령어...
😇 장점
- 리눅스 기반, 호환 가능
- 꽤 안정적인 기능
- 네트워킹 기능 등
😈 단점
- 리눅스와 같다...
Unix (유닉스)
유닉스는 주로 서버용 컴퓨터에 사용되는 운영체제이다. 현재처럼 다양한 운영체제가 보급화 되기전 유닉스는 거의 독점이었고, 비싼 값때문에 대학교나 연구실에서만 사용되었다. 대부분 C언어로 작성되어 있어 여기저기 이식하기 좋고, 호환성이 좋다. 유닉스도 네트워킹 기능이 많다. 현재엔 개인 데스크탑이나 임베디드에서 주로 쓰인다고... 현재 개발이 활발하지 않고, 사실상 중단되었다고 보는 사람들도 있다. 그렇게 미래가 밝다고는 할 수 없는듯? → 공식 홈페이지 , 나무위키
😇 장점
- C언어 기반의 유연함
- 강력한 네트워크 기능
- 편리한 CLI
😈 단점
- 유료다...
- 업데이트를 보장할 수 없다.. (개발자 다수 해고되었다고)
Window
우리가 알고 있는 그 윈도우가 맞다. 그윈도우를 서버용으로 가공한 운영 체제가 Window Server이다. 당연히 MS가 만든 서버 OS로, 컨테이너 기능이 강력하고, 괜찮은 GUI 등이 있다. 하지만 그렇게 안정적이다는 평을 받지 못하는듯. 익숙한 운영체제 환경으로 빠르게 시작할 수 있지만, 리눅스 만큼의 안정성, 속도를 보장할 수 없단는 평을 받기도 한다. 멘토님과 프로젝트를 진행할 때에도, 비슷한 피드백을 받았다. 학생이라면 한번쯤 사용해보아도 좋을 듯?
😇 장점
- 익숙한 운영 체제
- 편리한 GUI
- 네트워킹 기능
- 컨테이너 기능이 좋다고 함 (안써봄..)
😈 단점
- 안정성이 안 좋다는 인상..
- 리눅스 등 다른 OS에 비해 느리다는 평
다음엔 nCloud의 Application 서비스 알아보고, 서버에 접속해서 사용하는 ssh나 sh, bash가 도대체 무엇인지 알아봐야겠다.
'Dev > 코딩공부 이모저모' 카테고리의 다른 글
로직 ) 로그인, 메일 인증 (0) | 2021.09.25 |
---|---|
CS ) ssh, sh, bash 란 뭘까? (0) | 2021.09.25 |
CDN ) CDN 결과 비교하기, 근데 거기에 Request header 분석을 곁들인... (0) | 2021.09.04 |
Node.js ) Storage 에서 사용하지 않는 더미 파일들 정리하기 -- ft.서버 스케줄링 (0) | 2021.08.22 |
Node.js ) 페이징 처리 1 - offset, limit 방식 (0) | 2021.07.24 |