리눅스 환경 및 기타 설정에 대한 질문 입니다.

acme_pie의 이미지

안녕하세요.

저는 자바 프로그래밍을 하고 있는 이정욱이라고 합니다.
(참고로 리눅스에 대한 기반 지식은 전혀 :oops: 없습니다.)
올해 들어와서 회사 컴퓨터들의 라이센스 정리로
일반 프로그래머는 할당된 라이센스 중에서 자신이 선택한 OS 로 작업 환경을
바꾸게 됐습니다.

그래서 저는 무모하게도 :shock: SUSE professional 9.0으로 선택을 하게됐습니다.
뭐 JDK 도 기본 배포판안에 들어있는 등 자바 개발 환경이 다른 배포판보다
월등했구요, 레드햇보다는 설치나 외향이 깔끔하더군요.
뭐 몇 가지 개발툴과 cvs 사용 등은 HOWTO를 참고하니
그다지 문제 없이 적응할 수 있더군요.

그런데 시스템 안쪽으로 들어가볼려고 하니 약간 심각한 문제가 생겼습니다.
레드햇도 그렇고 suse도 그렇고, 왜 kde 제어판, gnome 제어판이 따로 있고
yast2나 redhat-config-* 등의 각 배포판 마다 제어판등이
또 있는 것인지요? 제어판에서 설정하는 기능이 완전히 다르다면
그런가보다 하겠는데 중복되는 설정도 많구요.

그렇다면 무엇을 사용해야 하나요? 또 kde나 gnome 등은 꼭 써야하는
것인지요? 불필요한 프로그램들이 잔뜩 설치가 되네요.
HOWTO 등의 문서를 주욱 읽어본 결과 kde 나 gnome은
gtk나 qt 등의 그래픽 툴킷 위에서 돌아간다고 되있는데
그렇다면 그래픽 툴킷만 설치하고 필요한 프로그램만 깔 수 있는지도
궁금합니다.

사실 이번에 처음 리눅스를 사용합니다만은,
일반 사용자 입장에서는 어플리케이션 이용에는 그다지 문제가 없습니다.
뭐 많이들 얘기하시는 한글문제도 그리 어려울게 없구요.
그런데 리눅스 시스템 자체는 이해가 잘 안되네요..
사실 윈도우는 구동 원리라던지 shell, kernel 등이
공개가 안되있어서 그렇지 kernel 부터 gui 까지의 구조는
msdn 등을 참고하면 일목요연하게 파악할 수가 있거든요.

리눅스는 x-window 따로 kernel 따로 library 따로
개발이 되서 그런다고 합니다만,
그 많은 부분을 일반 사용자가 보기가 약간 벅찹니다.

그럼 답변 부탁 드리겠습니다.

codebank의 이미지

일단 과감한 용기에 박수를 먼저 보냅니다. :)
자신이 사용하던 환경을 바꿀 수 있는 사람은 진정한 용기를 가진 사람이거든요.
그렇다고 이전에 사용하던 환경이 나쁘다는 것은 아닙니다. :)

SUSE는 사실 제가 사용을 못해본 배포판 중에 하나죠.
들리는 이야기로는 RedHat과 차이가 없으면서도 상당한 차이를 보인다고 들었는데...
그건 써보시면서 차츰 알아가도 상관없는 부분인것 같고...

질문으로 들어가서 이야기하죠.
KDE나 GNOME을 MS-Windows형태의 OS와 비교를 하다보면 자연히 생기는 의문점입니다.
왜 같은 기능을 가진 프로그램을 여럿 만들어서 사용자를 헷갈리게 하나...
LINUX에 대한 원론적인 이야기를 조금 하자면...
Hardware가 있고 그위에 Linux Kernel이 있습니다.
그리고 나서 각종 데몬이나 응용프로그램들, X가 그 위에 있죠.
MS-Windows의 형태는 Kernel과 Windows가 유기적으로 결합되어서 나온 제품이지만
LINUX의 경우는 각자가 독립적인 형태를 유지한다고 보셔도 됩니다.
문제는 X위에 있는 것들인데...
X는 단순히 서비스만 제공을하죠. 키보드가 눌렸다거나 마우스가 움직였다는 이벤트를
발생시킨다고 보면 됩니다.
그러면 이것을 받아서 처리하는 부분이 필요한데 이것을 WM(Window Manager)라고
부르는 놈들이 받아서 화면에 글자를 출력해주거나 어떤 동작을 하게 만들어줍니다.
WM은 상당히 많이 있습니다.
KDE, GNOME, xfce, blackbox, fluxbox, twm, fvwm, WindowMaker, NextSTEP...
제가 아는것만도 이정도 되는군요.
의문을 제기했던 부분은 바로 여기서 시작이 됩니다.
즉, 제어판이라는 것이 있는데 같은 동작을 하는 프로그램인데 왜 따로 만들어졌나...
그것은 각 WM개발자들이 독립적으로 되어있어서 그런겁니다.
MS-Windows의 경우는 개발팀이 있어서 모든 의견을 수렴하고 그것에 맞춰서
하나의 제어판만을 만들게 되겠죠.
하지만 MS-Windows가 만일 여러개의 WM이 존재한다면 그리고 각 개발팀이
서로 의사소통없이 독자적으로 화면을 구성하고 인터페이스를 구성한다면...
아마 KDE나 GNOME과 같은 현상이 일어날지도 모릅니다.
사용자 입장에서는 헷갈릴 수 있는 부분이지만 그게 또한 WM들의 특징이므로
하나의 WM에 통달하면 다른 것들도 자연스럽게 익힐 수있는 기회가 있을 지도
모릅니다. :)
결론은 각 WM별 유저 인터페이스가 틀리기 때문이라는 결론이 나오네요.

두번째...
굳이 KDE나 GNOME을 설치하지 않아도 개발시에는 별로 힘들지 않습니다.
물론 eclips인가를 사용하려면 해당되는 라이브러리를 설치해야하지만 그것도
문제될것은 없습니다.
blackbox, xfce4, WindowMaker는 상당히 가볍고(프로그램 크기도 작고 반응속도도
빠르다는 소리입니다.) 유저가 조작하기도 편리하기 때문에 많이 사용되는 편이기도 합니다.
물론 문서를 읽고 자신에 맞게 세팅을 하려면 시간은 걸리지만 하루 이틀정도면
충분히 가능하다고 생각합니다.
물론 KDE나 GNOME, MS-Windows같은 모든것이 갖추어진 WM을 사용해본
사람입장에서는 너무 단순하다고 생각되어질 수도 있지만 그것은 사용법이나
설정방법을 익히고 나면 그렇게 여러개가 필요없다는것을 느끼게 될 수도 있습니다.
특히나 개발자의 입장이라면 사용하지도 않는 군더더기(그렇다고 전혀 쓸모없는것은
아닙니다만... -주관적인 생각입니다.-)없고 자신이 필요한 것만 갖추어져 있는
환경을 선호한다고 생각합니다.
음... 두번째 결론은 라이브러리(툴킷이라고 쓰셨군요.)만 설치하면 GNOME이나
KDE는 그리 필요하지 않을 수도 있다는 겁니다.

원하는 답이 있었는지 모르겠네요. :)

------------------------------
좋은 하루 되세요.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.