위 글은 예전에 내가 올렸던 우분투 리눅스 관련 글과 유사한 흐름을 보이는 글이다. 내가 주목한 문제는 위 글이 아니라 위 글에 달린 댓글들이다. 소위 리눅서라는 사람들의 생각이 그대로 드러난 댓글들인데, "리눅스 콘솔이 짱인데 윈도우즈 노예인 댁은 뭘 모르고 지껄인다"는 식의 답변들이 그것이다. 물론 직접적으로 그렇게 말한 건 아니지만 담긴 의미는 그렇겠지.
전공 과목 중 운영체제 강의에서 들은 바에 의하면 이렇다 - UI, 유저 인터페이스는 OS의 목적에 반대되는 기능이다. OS의 목적은 어디까지나 하드웨어를 효율적으로 운용하기 위해 존재하는 프로그램이다. OS의 입장에서 중요한 건 자신이 다루게 되는 하드웨어일 뿐, 유저가 OS를 사용하는 방법 따위는 중요한 게 아니다. 실제로 유저가 일일이 관여 할 필요가 없거나 관리 차원에서만 접근이 필요한 서버, 라우터 등에 들어가는 OS들은 단순한 인터페이스를 가진다. 그리고 그 대표적인 모습이 콘솔이다.
UI는 효율적인 면과 거리가 멀기 때문에 오랫동안 고려 대상이 아니었다. 그러나 OS가 대중화, 개인화 되면서부터 말은 달라진다. GUI - 즉, 그래픽 유저 인터페이스가 등장하고 쉽게 OS를 운용하는 방법들이 나오는 것이다. 그 선두에 애플 등의 업체가 있고 지금은 윈도우즈의 GUI가 보편화 되어있다.
(보편화라는 것에 태클을 걸 사람도 있겠는데, 정말 보편화 되어있다. 요즘 리눅스들의 기본 GUI는 윈도우즈의 그것에 더 닮아 있고 전 세계 윈도우즈 사용률은 90%이다.)
그러므로 근래의 OS들의 화두로는 효율성 뿐만이 아니라 효과적인 UI를 사용해 사용자에게 편의를 제공하는 편의성도 중요한 한 축이다. 따라서 앞으로는 효율성과 편의성 중 어느 한 쪽이라도 등한시 하는 OS는 도태될 수 밖에 없고, 앞으로 발전되는 OS의 방향성에도 맞지 않다. 시장과 소비자들이 그렇게 원하고 있는 것이고, UI도 시간이 지날 수록 그 가치가 새삼스럽게 각광받는 중이다.
여기서 개인 이야기로 넘어가 보면, 나는 콘솔로 시작한 유저다. 아무 것도 모르는 국민학생 시절에 MSX 콘솔을 만졌고 MS도스를 배웠으며 GUI는 윈도우즈 3.01로 처음 접했다. 유닉스에 접속해 포트란과 C언어 프로그래밍을 한 경험을 갖고 있기도 하다. 그런 만큼 콘솔의 강력함은 직접 체험해 봤기 때문에 너무나도 잘 알고 있다.
하지만 나는 절대로 콘솔이 뛰어난 인터페이스라고 생각하지 않는다. 오히려 그 콘솔에 심취한 사람들을 시대에 뒤쳐지는 사람들이라고 생각한다.
리눅스를 주제로 삼아서 이야기 해보면, 일부 리눅스 유저들이 말하는 것 처럼 콘솔이 그렇게 좋은 UI라면 개발자들은 애초에 왜 X윈도우 같은 걸 만들었겠는가? 여기서부터 모순이 발생하고 있다.
또한, 베릴이나 컴피즈 같은 엄청난 GUI(사용성에선 그다지 많이 편리하진 않다)를 구현하기 위해 콘솔을 두들겨야 한다는 것도 뭔가 앞뒤가 맞지 않는다고 생각해 보지는 않았는가?
개발자들은 사용자들의 편의성을 위해 GUI를 기준으로 개선을 하고 있는데 정작 고집스러운유저들은 그 개선된 GUI를 구현하기 위해 콘솔을 두들기라고 초보자들을 재촉하는 웃지 못할 일을 하고 있다.
얼마 전에 가상 OS로 우분투 7.10을 설치하고 각종 콘솔 팁에 의존하지 않은 채 패키지와 GUI에만 의존해서 프로그램들을 설치해 본 일이 있다.
결과부터 말하면, flash에 한글 출력이 제대로 안 되는 것만 제외하고 모든 문제를 마우스 클릭으로 해결할 수 있었다. 패키지 관리가 엄청나게 잘 되어 있어서 어느 프로그램을 설치할 때 필요한(혹은 의존된) 다른 패키지들을 자동으로 알아서 선택해 설치하게 해줬다. 심지어는 개발 툴(Kdevelop)을 설치할 때도 마우스 클릭만으로 성공시킬 수 있었다. 가상 OS라서 구현은 안 됐지만, 네이티브로 설치하면 간단한 컴피즈 3D 인터페이스 구현도 마우스 클릭으로 가능하다고 한다.
그런데 인터넷이나 블로그들에는 온통 콘솔로만 팁이 쓰여 있다. 그게 정설인 마냥. 그게 유일한 법칙인 마냥. 나는 그런 사람들을 콘솔홀릭이라고 부르고 싶다.
콘솔홀릭들에게는 안타까운 얘기지만, 인기 있는 리눅스들을 선두로 해서 데스크탑 리눅스는 점점 더 GUI적으로 쉬워지고 있다. 콘솔홀릭들이 가진 잘난 노하우가 점점 더 필요 없어지고 있는 것이며, 굳이 그 복잡한 콘솔을 다 알 필요가 없는 것이다. 콘솔홀릭들은 그런 리눅스의 흐름을 인정할 수 없다고 말하겠지만, 그들만 제외하고 거의 모든 개발자, 그리고 입문 사용자들은 지금의 흐름을 잘 타서 흘러 가고 있다.
데스크탑 리눅스는 앞으로 '공부'해야 사용할 수 있는 OS로 남지는 않을 것이다. 수 많은 도스 유저들이 윈도우즈 이래 도스 명령어를 잊어버린 것처럼, 리눅스 유저들도 언젠가는 콘솔 명령의 대부분을 잊게 될 것이다.
또한 그러한 현상은 벌써 시작된 지 오래되었고, 이미 프로그램 설치와 관련된 부분들에서는 거의 콘솔이 필요 없게 되었다. 그저 콘솔홀릭들만 현실을 모를 뿐이다. 콘솔홀릭들의 팁은 더 이상 팁이 아니며, 초보가 리눅스에 진입하는데 방해가 되는 장벽이다.
리눅스가 불편하다고 말하는 게 윈도우즈에 길들여진 사람들의 불평이라고? 그렇게 말하는 콘솔홀릭들은 그들이 편들고 있는 리눅스의 UI 발전 방향에도 역행하고 있다는 걸 언제 깨달을까?
답답할 따름이다.
덧) 많은 사람들이 얘기하는 것과 반대로 리눅스에도 바이러스 백신이 있다. 한 예로 Avast에서 리눅스용 백신을 배포 중이다. 그렇다는 건 바이러스가 있다는 말이겠지?
그리고 우분투 리눅스의 경우 일부 OS 업데이트 이후 재부팅을 요구하기도 한다.
댓글을 달아 주세요
"고기는 소금에 찍어먹어야 제맛이야, 고추장이나 쌈장에 찍어먹는건 촌놈들이나 하는 짓이지"를 외치는 우리 아버지 말씀이 생각나네요.
그저 먹기 좋으면 그만인것 처럼, OS도 쓰기 편리하면 그만인데.
그리고 리눅스가 정말 데스크탑 시장에서 윈도우즈를 조금이라도 따라잡으려면 앞으로는 더 편리성이 커져야만 하겠지 :-) KDE 등을 보면 상당히 긍정적이긴 한데.
와우~ 속이 다 후련합니다. 결국 기술은 사람을 향한다는 말이 생각나네요.
맞는 말씀입니다. 결국은 사람이 접하게 되는 환경이 UI로서 연구되는 것이라고 봐도 좋다고 생각합니다 :-)
어떤 면에서는 콘솔이 오히려 편리할 때도 있을 듯 하더군요. 예전에 보니, 어떠한 팁(설정에 관련한)을 콘솔 명령어로 잘 정리해둬서, 복사해서 콘솔을 열고 붙여넣기만 하면 바로 설정이 완료되게 해둔 것을 보았던 적도 있습니다.
하지만 이건 말 그대로 특수한 경우고, 대부분의 경우에는 초보 유저에게 있어 콘솔을 열고 뭔가 하라는 것은 공포에 가까운 마음이 들지 않을까 생각합니다.
개인적인 생각이지만 리눅스와 리눅서가 나아가야 할 바는 MacOS X이라고 생각합니다. OS X역시 유닉스 기반의 운영체제이지만 뛰어난 GUI로 인해 터미널 콘솔을 열어서 뭔가를 할 일이 거의 없고, 사용자들 역시 터미널 콘솔의 필요성을 주장한다거나 하지는 않습니다. 예를들어, 아이폰/아이팟 터치를 Jailbreak 하기 위해서는 터미널을 열어서 일련의 작업들을 해 줘야 했었죠. 하지만 오히려 소위 말하는 '고급 사용자들' (OS X의..)은 그러한 작업들을 한방에 실행시켜주는 프로그램을 따로 만들어서 배포했고요. 만약 리눅스였다면 이러한 분위기는 기대하기 힘들었겠죠.
물론 최근의 경향은 콘솔을 벗어나려고 하는 분위기가 많이 보이는 것 같아서 다행인 것 같습니다. 특히 우분투를 시작으로 해서요. 실제로 우분투 포럼 등에서는 각종 팁 등이 명령어보다는 어떤 메뉴에서 어떤 프로그램을 이용해서 하라는 식으로 올라오는 경우도 많고요. (외국 사이트 이야기입니다) 불과 1~2년 전에만 해도 이런 것은 보기 힘들었던 점을 생각하면, 시간이 지나면 좀 더 나아지지 않을까 생각합니다.
우분투의 발전 방향은 굉장히 긍정적인 듯 합니다. 비록 두 가지 버전의 변화 밖에 경험해보지 않았지만, 그 순간에도 많은 것이 변화되어 편리해져 있더군요.
다음 버전부터는 저도 리눅스의 네이티브 설치를 다시 진지하게 고려하게 될 것 같습니다 :-)
아참, 바이러스의 경우 윈도우나 리눅스나 MacOS X나 다 있을 수는 있습니다. 하지만 일반적으로 리눅스나 MacOS X의 사용자가 적어서 바이러스의 수도 적을 수밖에 없는 데다가, 운영체제의 구조상 바이러스에 감염되도 시스템 전체에 영향을 받지는 않기 때문에 이런 측면에서의 보안에는 강력하다고 하는 거죠.
그리고 업데이트의 경우, 대부분의 경우 라이브 패치가 가능합니다. 하지만 운영체제에 관련된(커널이나 시스템 라이브러리 등) 경우 재부팅이 필요하죠. 이건 리눅스 할아버지(-_-)가 와도 마찬가지입니다. 다만 윈도우에 비해 그 빈도가 현저히 적죠. DLL하나 지우려고 해도 재부팅을 요구하는게 윈도우인걸요 -_-;
하긴...... 윈도우즈를 최대절전모드로 사용하고 있지만 그럼에도 불구하고 며칠에 한 번씩은 반드시 재부팅을 할 수 밖에 없게 되더군요;
윈도우즈 7.0부터는 좀 덜 재부팅했으면 좋겠다는 바램이 생깁니다.
난 도스시절에도 M을 썼지...
관계가 있나?
있지. 요즘과 같은 개념의 GUI라고 볼 수 있는지는 모르겠지만, 기본 도스 운용상태보다 훨씬 편했던 건 사실이니까.
콘솔이 불편하기때문에 mdir ls nc등도 썼던거겠죠..
그렇죠 :-) 뭔가 불편했기 때문에 편리하게 사용할 프로그램들이 생기는 게 일반적일 텐데, 이상하게 리눅스에서는 아직도 콘솔을 강조하는 분위기가 강합니다.
콘솔홀릭들은 어쩌면 자신들만의 사랑스런 미인인 리눅스가 '만인의 연인'이 되는 걸 경계하기 때문에 그러는 걸지도(웃음)
만약 그런 생각을 한다면 팁을 공개하는 행위 자체가 그 생각과 반대되는 모순이겠지.
그저 단순하게 자신이 해오고 배웠던 것만을 신뢰하는 것일 지도 모르겠네.
리눅스의 대중화를 위해서는 공부하는 리눅스가 아니라 이용하는 리눅스라는 시각의 전환이 필요한것 같습니다. 리눅스를 잘하는 사람들에게 있어서 화려한 기능의 리눅스GUI는 그저 겉보기 식의 자랑일뿐 활용하는 대상은 아닌것 같습니다.
그렇습니다. 그래야만 리눅스의 보급률이 올라가게 될 것 같습니다. 문제는 개발자들도 다 그렇게 생각하고 그에 맞춘 개발을 진행하는 것 같은데, 파워유저 혹은 고수라 불리는 콘솔홀릭들이 잘 받아들이지 못 한다는 것이죠.
음... 아마도 많은 팁들이 콘솔에서 할 경우에 대해서만 써 있는 경우는, 각 베포판마다 GUI가 살짝 다를 수 있기 때문에 어느 하나에 대해서 쓸 수 없기 때문이 아닐까요? 이에 반해 콘솔용으로 설명하면, 뭐 종종 다른 경우는 있지만, 많은 경우 linux package 종류에 상관없이 잘 들어맞으니까요.
리눅스용 프로그램들이 그런지는 모르겠는데, 실제로 개발하다보면 설정 저장/읽기는 파일로 쓰고/읽고로 우선 개발하고, 거의 끝날때쯤에 가서야 '이 부분(예전에 파일로 읽고쓰던 부분)에 대한 GUI는 어떻게 할까?'를 고민하거든요. 그러다 보면 개발자 마음대로 GUI를 제각각 만들다보니, 콘솔로 하면 똑같은 명령어인데 GUI는 약간 다른 경우가 발생하는 것 같습니다. 실제로 개발할 때 보면, GUI가 사용자 입장에서는 중요하긴 한데 개발자 입장에서는 '핵심'은 아니라는 생각이 강하거든요. 나중에 몰아서 한꺼번에 잘 정리하자, 뭐 이정도...
CUI라고 해서 통일성이 있는 건 아닙니다. 배포판마다 디렉토리 구조가 정책에 따라 조금씩 다르죠. 특히나 데비안과 레드햇의 경우 천지차이고요.
GUI의 경우에도, KDE에도 그놈에도 (일단은) UI가이드라인이 존재하기 때문에 제법 일관적인 모습을 보여주고 있습니다.
팁을 작성하는 사람이 대부분 어느정도 리눅스에 익숙한 사람들, 즉 콘솔에 익숙한 사람들이기 떄문이 아닐까 싶습니다. 실제로 '생 초보' 분들이 고생해서 삽질해간 결과로서의 팁은 GUI위주로 설명되어 있는 경우도 종종 있고요.
저도 리눅스 설치를 하면서 많은 콘솔 팁을 볼 수 있었는데, 크게 봤을 때 레드햇 계열과 데비안 계열이 주로 다른 모습을 보이더군요. 콘솔에서도 통일성이 부족한 인상을 받았습니다.
cypher 님께서 잘 설명해주셨네요 :-) 감사합니다.
맞는 말씀입니다. 저도 콘솔을 많이 쓰긴 하지만 잘 알지 못하고 일반적인 경우 간단한 팁정도는 GUI 옵션이 주어져야 대중화에 성공할 수 있다고 봅니다. 하지만 말씀하신대로 콘솔에서만 가능한 일들도 있고, 나름대로 배워두면 그 강력함에 반하게 되는것이 콘솔의 장점이니 리눅스에 일반적인 GUI가 보태진다면, 빈약한 콘솔의 윈도우에 비해서 더 낫다는 평가를 받을 수도 있겠다는 생각도 듭니다.
윈도우즈도 리눅스도 UI면에서 아직 미완성이라고 볼 수 있습니다. 어쩌면 완성이라는 개념 자체가 없을 지도 모릅니다.
하지만 둘 모두 GUI라는 방법을 통해 같은 방향으로 가고 있는 것은 사실입니다. 일단은 접근성이 쉬워야 한다는 동일된 인식이 형성된 만큼 리눅스의 발전에 기대를 걸어 보고 싶습니다 :-)
과도기적인 시대이기 때문에 콘솔과 GUI의 마찰이 있는데, 유난히도 리눅스 쪽에서 마찰 정도가 심한 듯 합니다. 얼른 정리 되어야 리눅스에 대한 진정한 평가가 이루어질 것 같습니다.
재미있는건 윈도우즈 서버설정등도 사실 GUI에서 가능한데..
간혹 커맨드 명령어로 설명되어 있는 경우가 있습니다-_-;;;
설명할때 이걸 클릭해서 저걸로 들어가서 하세요.. 라기 보다는..
커맨드에 요걸 입력하세요가 설명하기 더 쉬워서가 아닐까요?;;
조금 귀찮아도 GUI에서 설정하는 방법론을 알려주면 모두가 행복할거 같아요;
먼저 재미난 아이콘이 눈에 띄었습니다 -ㅂ- 하핫;;
콘솔로 가르쳐주면 오히려 그 원리나 명령의 의도를 파악하기가 어렵던데 말이죠.
저도 GUI가 행복합니다 -ㅂ-;;;흐흐
저도 리눅스로 입문해보려 했으나 장난아닌 명령어들과 콘솔로 인해 포기..
정말 골치가 아픈 콘솔 명령어들입니다. 다행히도 이젠 많은 수의 명령어들이 굳이 필요하지 않게 변해가고 있죠. :-)
처음접하는분들(초보라고들 하더군요)에게 뭔가를 알려주려할때 메뉴나 창들을 실행한 후 캡처해서 주루룩 나열하는 것보단 콘솔창에 <요래요래 붙여넣고 엔터치면됩니다> 요게 훨씬 편하죠... 하면서도 정작 내 데스크탑에선 메뉴를 열고 클릭을 하고있죠.. 아무래도 뗄레야 뗄 수 없는 서로공존해야 하는 인터페이스들임에는 틀림없다는 생각이 드네요.
윈도우즈도 95까지만 해도 도스 명령어로 보팅시 최적화 등등의 기법이 그대로 존재했습니다. 하지만 98 이후로 거의 잊혀졌죠.
리눅스도 지금은 공존해야 정상적인 운용이 가능한 시기이지만 언젠간 UI로 거의 모든 것을 하는 때가 올 겁니다 :-)
하하하하.. 웬지 모르게 반성해버렸습니다.
"원래 최대한 GUI를 활용하자"가 제 목표이지만 커뮤니티나 블로그에 다는 덧글에는 명령어를 남발하고 있었군요-_-GUI설명은 콘솔명령 설명에 비해 두세배의 시간이 듭니다. 그 귀차니즘에 의하여... 저도 그만..ㅋ
아 다시 반성하고 충실한 포스트와 답글을 작성해야 겠습니다^^
헉 방문 감사합니다 :-) 그래도 멋진 팁이 많은 블로그를 운영하시네요. 저야말로 우분투 다음 버전 나오면 신세 지겠습니다^^.
콘솔에 대한 우수성을 논하는 사람들은 사실 콘솔에 대한 장점을 논하는 것이지 gui 에 대한 부정을 이야기 하는 것은 아닙니다. GUI인터페이스에선 할 수 없는 것이 있고 TUI 인터페이스에선 할 수 없는게 GUI엔 있는 법이죠. 데스크탑화되어지는 GUI 이는 오히려 오픈 소스계에서 원하고 바라는 부분이기도 하구요. 앞으로 더 좋은 부분이 나오겠죠. 하지만 tui 도 같이 잘 사용하면.. 플러스 요인이라는건 리눅스 시스템을 사용하여본 어느 누구나 의심에 여지도 없는 진실 이죠. 리눅스 백신에 대한 부분이 언급이 되어서 말씀을 조금 드리면 리눅스 시스템은 바이러스가 있습니다. 허나 이 바이러스의 대부분인 worm 과 같이 전이가 되는 것이아니라 단위 시스템에서 퍼지는 것이죠. 리눅스 시스템의 퍼미션 구조상 others 유저에 write 권한을 가지고 전이가 되는 부분이 거의없죠. 윈도우가 오래 사용되어서 그런것이 아니라 이 부분때문에 그런 부분입니다. 사실 서버 시장은 이미 유닉스 시스템과 리눅스 시스템쪽이 많지만 바이러스에 대한 부분이 나오면 ms가 언급이 되는 것도 이것이죠. 한가지 모르시는 분들을 위해서 데스크탑이 윈도우가 더 오래 됐으니까 그렇다... 라고 이야기를 하시는 분들에게 말씀 드리면.. unix 계열은 1960년대 말 멀틱스라는 프로젝트가 실패 후 1970 년대에 완성된 os 입니다. 윈도우가 사용하는 gui 인터페이스도 unix 가 먼저 말들었구요.