본문 바로가기
IT 인터넷/비개발자를위한IT지식

리눅스(Linux)란 무엇인가

by Oriyong 2020. 4. 6.
반응형

리눅스(Linux)란 무엇인가?

IT관련 업무를 하다 보면 리눅스라는 단어를 많이 듣게 됩니다. 비개발자, 비전공자들은 리눅스라는 단어가 굉장히 낯선데요. 비개발자를 위한 IT지식, 이번에는 리눅스를 알아보고, 왜 이리 많이 들리는지 알아보겠습니다. 본 포스팅은 개발자가 아닌 비개발자 분들을 위한 글이므로, 다소 가벼운 내용으로 정리했습니다. 물론... 비개발자분들도 그렇게 느끼실지는 확실치 않습니다. ㅎㅎ;;

 

인터넷을 돌아다니다 보면 이런 배가 뽈록한 펭귄로고를 본 적이 있으실 겁니다. 이 펭귄이 리눅스의 심벌입니다. 그럼 리눅스가 뭘까요.

 

정의

리눅스(영어: Linux)는 리누스 토르발스가 커뮤니티 주체로 개발한 컴퓨터 운영 체제이다. 혹은 커널을 뜻하기도 한다. 리눅스는 자유 소프트웨어오픈 소스 개발의 가장 유명한 표본으로 들 수 있다. 리눅스는 다중 사용자, 다중작업(멀티태스킹), 다중 스레드를 지원하는 네트워크 운영 체제(NOS)이다. - 위키백과 中 -

 

여기서 핵심은 '운영체제'라는 것입니다. 우리가 사용하는 윈도우즈가 운영체제입니다. 컴퓨터를 켜면 윈도우즈라는 운영체제가 우리를 반겨줍니다. 우리한테 프로그램도 설치하게 해주고, 마우스로 클릭도 하게 해주고, 키보드로 글씨도 입력하게 해주는 운영체제라고 생각하면 됩니다. 자유 소프트웨어라는 말은 Free를 해석한 결과인 듯 합니다. Free는 무료의 개념도 있지만, 사용자가 소프트웨어를 자유롭게 이용(열람, 수정, 배포 등)할 수 있는 권리와 라이센스를 의미하기도 합니다. 무료인 덕분에 더욱 빠르게 전세계로 확장할 수 있었습니다. 오픈 소스는 소스(Source)가 오픈(Open) 되어 있다라는 이야기니, 누구라도 소스를 확인할 수 있음을 이야기 합니다. 그러니 전문적으로 컴퓨터를 공부할 사람들은 열심히 들여 보겠죠. 당연히 대부분의 기업들은 코드를 공개하지 않습니다. 부끄럽잖아요. ㅎㅎ;;

 

실무에서는

현실에서 우리가 리눅스라는 단어를 듣는다면 웹 등의 인터넷 서비스를 운영할 때입니다. 우리는 서비스를 제공하가 위해 데이터를 저장하거나, 웹페이지를 제공하는 컴퓨터를 마련하게 됩니다. 홈페이지가 우리에게 보이는 건 어떤 컴퓨터에 '웹페이지 주세요~'하고 요청하면 그 컴퓨터가 웹페이지를 주는 과정입니다. 결국 우리가 요청하는 그 끝에는 어떤 컴퓨터가 있습니다. 우리는 그 컴퓨터들을 서버라고 부릅니다. IT업계에 계시다면 서버라는 단어는 수천 번 들어보셨을 겁니다. 그 서버라는 컴퓨터는 우리가 쓰는 노트북이나 데스크톱과 같습니다. 가격도, 생긴 것도 좀 다르긴 하지만 컴퓨터라는 것은 매한가지입니다. 그러면 그 서버라고 불리는 컴퓨터들의 운영체제는 뭘까요. 컴퓨터를 켜면 누가 반겨줄까요. 바로 리눅스라고 하는 운영체제입니다. 전부냐구요? 그렇지는 않습니다.

 

전 세계의 서버들은 다양한 운영체제들로 운영됩니다. 유닉스, 리눅스 등입니다. 우리에게 익숙한 윈도우즈도 윈도우즈 서버라는 서버용 제품군이 있습니다. 운영체제는 벽돌인 컴퓨터 기계 장치에 생명을 불어넣는 역할을 합니다. 우리도 윈도우즈가 제공하는 사용성 안에서 엑셀도 사용하고, 포토샵도 사용하고 하니까요. 그럼 리눅스 안에서는 어떤 걸 사용할까요. 웹서버, 데이터베이스 프로그램 등을 사용합니다. 홈페이지를 응답해주고, 데이터를 저장해주는 프로그램들을 사용합니다.

 

리눅스가 널리 사용되는 이유 중 하나는, 무료이기 때문입니다. 물론 리눅스라는 운영체제 자체도 참 좋지만, 무료라는 이유는 절대적입니다. 유닉스, 윈도우즈 서버 등의 운영체제는 수백, 수천 만원 단위의 운영체제입니다. 돈 없는 기업들은 부담스럽죠. 웹, 앱, 데이터 등의 서비스는 굉장히 여러 대의 컴퓨터가 필요한 영역인데요. 그럴 때마다 운영체제를 구매해서 사용하는 건 돈 없는 초창기 기업들에게는 쉽지 않습니다.

 

서버에서 사용하는 운영체제는 대부분 CLI 환경으로 사용합니다. CLI는 Command LIne Interface를 이야기하는데요.

이런 게 CLI입니다. 그림은 없이 키보드로, 명령어를 입력해서 사용하는 형태입니다. 서버는 서비스를 운영해야 되기 때문에 자원을 최대한 활용해야 합니다. 그럴 때는 화려한 그래픽보다는 이런 명령어 기반 인터페이스를 주로 운영합니다. 메모리 한 푼이라도 아껴야 하니까요. ;;;

종류

리눅스라는 단어는 깊게는 리눅스 커널을 의미합니다. 커널은 응용 프로그램의 요청 처리, 자원(메모리, 네트워크 등) 관리를 해주는 운영체제의 핵심 소프트웨어입니다. 우리가 일상에서 만나는 다양한 이름의 리눅스들은 리눅스 배포판입니다. 리눅스 커널에 여러 가지 프로그램들을 붙여서 배포하기 위해 구성된 운영체제입니다. 최근 많이 듣는 리눅스 배포판으로는 우분투(Ubuntu), 페도라(Fedora), 리눅스 민트(Linux Mint), 센트OS(CentOS) 등이 있습니다. 뭔가 못 들어본 단어가 나와도, 그냥 '리눅스 계열인가' 라고만 생각해도 됩니다. 우리에게 친숙한 스마트폰용 운영체제인 안드로이드도 리눅스를 기반으로 만들어졌습니다.

 

마무리

제 늘 하는 고민 중 하나는 '어떻게 하면 서버 비용을 아낄 수 있을까'입니다. 유료 서비스의 경우 싸다고 아무 서버와 운영체제나 가져다 쓸 수 없으니까요. 그러므로 무료이면서 성능과 기능도 좋은 리눅스라는 선택지는 저에게 많은 고민을 덜어주었습니다. 서버라고 불리는 컴퓨터들은 운영체제 뿐만이 아니라 다양한 서비스와 프로그램, 미들웨어 등으로 운영됩니다. 최근에는 서버 운영의 부담을 덜어주는 다양한 클라우드 서비스들도 있습니다. 개발자가 아니더라도 리눅스, 서버, 데이터베이스 등 다양한 서비스와 개념들을 알아놓으시길 추천드립니다.

반응형

'IT 인터넷 > 비개발자를위한IT지식' 카테고리의 다른 글

API란 무엇인가  (0) 2020.04.24
UI 용어 컴포넌트 이름 소개  (1) 2020.04.23
CLI, GUI, NUI란 무엇인가  (0) 2020.04.22
URL이란 무엇인가  (0) 2020.04.16
컴퓨터 암호화를 알아보자  (0) 2020.04.08