Preface


D.M.Z CONTENT NEXT

Documentation on Linux
About this Book
The Official Printed version
More Information

On the Authors
Thanks
Typographical Conventions
The Linux Documentation Project
Filesystem Standards

인터넷이란 말을 여기저기서 떠들어대고, 진지한 이들은 "정보의 초고속도로"를 따라 드라이브를 즐기는 요즘, 컴퓨터라는 것은 그 지위를 TV나 전자오븐정도로 옮겨가는 것처럼 보인다. 인터넷은 최근, 평범치않은 high media 영역을 획득하고, 사회과학 주류는 "인터넷 문화"의 연구를 위해 Usenet newsgroup까지 영역을 넓히고 있다. 통신회사(Carrier companies)는 현재의 네트웍 링크가 가지는 평균의 수배에 이르는 bandwidth를 제공하는 ATM 같은 새로운 전송기술을 소개하고 있다.

물론, 네트워킹은 오래전부터 있어왔다. 컴퓨터를 연결하여 LAN을 구축하는 것은 소규모 설치에서 일상적인 것이었고, 전화선을 사용한 장거리 전송링크도 존재했다. 그러나 급격히 성장하는 전 세계 규모의 네트웍 집합체는 개인 컴퓨터 사용자의 소규모 비영리조직까지도 지구촌에 참여할 수 있게 만들었다. mail과 news 서비스 능력을 가지고 dialup 억세스를 제공하는 인터넷 호스트를 셋업하는 것도 가능해 졌고, ISDN의 월등한 성능은 이 trend를 의심할 여지 없이 가속화 시킬 것이다.

컴퓨터 네트웍에 대해 논하는 것은 흔히 UNIX에 대해 얘기하는 것을 의미한다. 물론, UNIX가 네트웍 능력만을 지닌 운영체제이거나, 영원히 그것을 선두로 남겨두진 않는다 해도, 그것은 오랫동안 네트워킹 business내에 있었고, 틀림없이 당분간은 그대로 일 것이다.

개인 사용자에게 특별히 흥미를 끌게했던 것은 무료 UNIXoid 운영체제를 PC에 제공하고자 했던 활동으로, 이는 386BSD, FreeBSD - 그리고 Linux를 만들어 냈다. 그러나 Linux는 UNIX가 아니다. UNIX는 그에대한 권리를 가지고 있는 누군가의 것이고(이 글을 쓰는 당시 Univel), 리눅스는 UNIX-like 운영체제에 필요한 POSIX 표준의 모든 기능을 제공하려 노력하는 운영체제이나, 완벽하지는 않다.

리눅스 커널은, Intel i386을 알고, "MINIX 보다 좋은 걸 만들자."라는 프로젝트를 창시한 Linus Torvalds에의해 만들어졌다. MINIX는 또다른 대중적인 PC 운영체제로 UN*X 기능의 핵심요소만을 제공하며, Prof. Andrew S. Tanendaum이 만든 것이다.

Linux는 GNU General Public Licence(GPL) 에 따르며, GPL은 자유로운 코드의 태포를 허용한다. (Appendix C에서 "free software"가 무엇을 의미하는지 읽어보라). 불완전성을 벗어나고, 거대하고, 성장을 거듭하는, 자유로운 어플리케이션 프로그램의 기반을 다져, 그것은 급격히 많은 PC 사용자들이 선택하는 운영체제가 되었다. 커널과 C 라이브러리는 대부분의 표준 소프트웨어들을 힘들이지 않고 컴파일 할 수 있을 정도로, 다른 UN*Xish 시스템의 main stream들보다도 좋아졌고, 리눅스 배포판은 폭넓은 종류로 패키지화되어 쉽게 하드디스크에 깔 수 있도록 했다.

Documentation on Linux

리눅스에 (그리고 일반적인 free software)에 딱지가 붙는 불평은 문서화가 빈약하거나, 전혀 되어있지 않다는 것이다. 초창기 패키지에 작은 README와 설치문서가 딸려 온다는 것은 흔하지 않은 일이었고, 그것들은 적당히 숙련된 UN*X의 마법사들이나 성공적으로 설치, 운영할 수 있을 정도의 정보만을 주었다. 그러나 평범한 신출내기들은 무시되었다.

지난 1992년 말, Lars Wirzenius와 Michael K. Johnson은, 일관성 있는 매뉴얼 세트의 제공을 돕는 Linux Documentation Project (LDP)의 수립을 제안했다. 더 이상의 "어떻게?", 또는 "왜?", 또는 "무엇이 삶이고 우주이고, 또 그 이외의 것들인가?"라는 식의 짧은 질문을 그만두고, 이들 매뉴얼은 사용자가 UN*X에대해 잘 알고 있지 않다해도 리눅스 시스템을 운영하고 사용하는데 대한 전반적인 측면을 다루려고 시도했다.

LDP의 성과들은, Matt Welsh가 쓴 Installation and Getting Started Guide, Michael K. Johnson의 Kernel Hacker's Guide, 그리고 대부분의 시스템과 C 라이브러리 콜에 관한, 대략 450여개에 달하는 매뉴얼 페이지를 결국 제공한 Rik Faith의 manpage project가 있다. Lars Wirzenius가 쓴 System Administrators' Guide는 아직 alpha stage이며, User's Guide도 준비된다.

본 문서, Linux Network Administrators' Guide 역시 LDP 시리즈의 일부이다. 고로, 그 페이지에서 얘기하였듯, LDP copying license하에서 자유롭게 복제와 배포가 가능하다.

그러나, 리눅스에대한 정보를 구할 수 있는 곳은 LDP 책자만이 아니다. 지금은, comp.os.linux.announce에 정기적으로 포스팅되고, 여러 FTP 사이트에 묶여있는 다양한 HOWTO 문서도 있다. HOWTO는 몇장 안되는 짧은 문서로, 가령 리눅스에서의 이더넷지원, 또는 Usenet news 소프트웨어의 설정같은 특정주제에대한 간략한 소개를 제공하거나, FAQ에대한 해답을 제시한다. 그것들은 보통, 주제에대한 가장 정확하고 최신의 정보를 제공한다. 현재 구할 수 있는 HOWTO 목록은 이 책 끝 부분의 "Annotated bibliography"에서 볼 수 있다.

About This Book

내가 1992년 Linux Documentation Project에 참여했을 때, System Administrator's Guide에 기고하고자하여 UUCP와 smail에 관한 작은 chapter를 썼다. TCP/IP 네트워킹이 막 발전하기 시작하고 그러한 "작은 chapter"들이 커시지 시작하였을 때, 나는 Networking Guide를 만드는 것이 좋지 않을까라고 소리쳐 물어보았다. 모든 사람들은 "괜찮은 생각이야", "밀고나가!"라고 얘기했다. 그래서 나는 그 일을 계속 추진했고 1993년 9월, Networking Guide의 첫번째 버전을 릴리즈하였다.

지금 읽고 있는 새로운 Networking Guide는 첫번째 릴리즈 이후 리눅스 사용자들이 쓸 수 있게된 몇가지 새로운 어플리케이션의 특성에관해선 완전히 다시 썼다.

이 책은 대략 당신이 시스템을 네트워킹의 목적으로 설정하는 일련의 단계에 따라 구성되어 있다. 네트웍의 기본개념, 특히 TCP/IP기반, 네트웍에 대한 것에서 시작하여, 디바이스 차원의 TCP/IP 설정에서부터 rlogin등과 같은 일반 어플리케이션, 그리고 Network File System, Network Information System의 셋업까지 천천히 진행해 나간다. 그리고 그 후 당신의 머신을 UUCP 노드로 설정하는 방법을 다룬 chapter가 있고, 이 책의 나머지는 TCP/IP와 UUCP 상에서 쓰니은 두 개의 주요 어플리케이션인 electronic mail과 news에 대해 다룬다.

email 부분은, mail 전송과 라우팅에 관해 보다 심도 있는 부분과, 당신이 직면할 수 있는 무수한 주소화 구조를 소개하는데 중점을 둔다. 그 곳엔 소규모 메일 허브 (hub) 상에서 보통 사용되는 MTU (mail transport agent)인 smail의 설정과 운영, 그리고 좀 더 복잡한 라우팅을 구현하거나 대용량의 메일을 다룰 수 있는 sendmail을 논의한다. sendmail chapter는 Vince Skahan이 기고한 것이다.

news 부분에선, 어떻게 Usenet news가 작동하는지에 대한 개요를 제공하고, 폭 넓게 사용되는 news 전송 소프트웨어인 C news와, 로컬 네트웍에 newsreading 억세스를 제공하기 위한 NNTP의 사용법을 다루고자 하였다. 이 책은 리눅스 상에서 가장 인기있는 뉴스리더(newsreader)의 관리와 사용에 대한 짧은 chapter를 마지막으로 끝맺는다.

The Official Printed Version

1993년 가을, LDP 메일링 리스트에서 초창기 부터 활동하고 있던 Andy Oram은 나의 책을 O'Reilly and Associates에서 출판해 보지 않겠느냐고 물었다. 나는 흥분하였다. 나는 내 책이 성공한다는 사실을 상상해 본 적이 없었다. 우리는 결국 O'Reilly가 Networking Guide의 enhanced Official Printed Version을 생산하되, 책의 소스가 자유롭게 배포될 수 있도록 오리지널 copyright는 그대로 유지하기로 동의했다. 이는 당신이 자유로이 선택할 수 있음을 의미한다. 즉, 당신은 네트웍 상에 배포되는 LATEX 소스(또는 DVI나 PostScript 버전)을 얻어 출력할 수도 있고, 또는 올해 말에 구할 수 있을 O'Reilly의 official printed version을 구입할 수도 있다.

그러면, 왜 공짜로 구할 수 있는 것에 돈을 지불해야 하는가? 모든 사람이 출력해 심지어는 팔 수도 있는 것을 출판하다니, Tim O'Reilly가 제정신이 아닌 것일까? 또는 이들 버전간에 차이점이라도 있는걸까?

그 답은 "그럴 수도", "절대로 아니다", 그리고 "예 그리고 아니오"이다. O'Reilly and Associates는 Networking Guide를 출판함에 있어 위험부담을 감수했다. 그러나 나는 결국 그들이 그에대한 댓가를 받길 희망한다. 만약 그렇게 된다면, 나는 이 프로젝트가, free software 세상과 회사들이 양쪽다 이득을 보기위해 어떻게 협력하는지에 대한 일례를 제공할 수 있을것이라 믿는다. 나의 관점에서, O'Reilly가 리눅스 사회에 제공하는 크나큰 공헌은 (당신 지역의 서점에서 구입할 수 있는 책과는 별개로) 리눅스가 진지하게 받아들여지는 무언가, 즉 상용 PC UNIX 운영체제에 대한 유용한 대체물로 인식되도록 돕는 것이다.

그러면 printed version과 online version의 차이점은 무엇인가? Andy Oram은 내 두서없는 초장기 원고를 실제로 프린팅할 가치가 있는 것으로 바꾸는데 많은 노력을 했다. (그는 Linux Documentation Project의 산물인 다른 책들도 재검토하며, 그가 리눅스 사회에 할 수 있는 어떠한 직업상의 기술도 공헌하고자 노력한다)

Andy가 Networking Guide를 재검토하고 내가 보낸 복사본을 편집하기 시작하고부터, 그 책은 반년전의 그것과는 비교도 되지 않을 만큼 향상되었다. 이제 그것에 어느곳하나 그의 손때가 묻지 않은 곳이 없게 되었다. O'Reilly에서의 정리작업 단계에서 Networking Guide에 생기는 변화들과 같이, 그가 편집한 것은 모두 online version에 반영되었다. 그러므로 내용상으로 둘 사이에 차이점은 없다. 그러나 O'Reilly 버전은 약간 다를 것이다. 즉, O'Reilly에서는 보고 느끼기 좋게 만드는데 많은 작업을 할 것이고, 표준 LATEX에서 표현할 수 없는 멋진 layout을 만들어 내었다. 또 한편으론, 향상된 index와 좀 더 나은, 그리고 더 많은 그림과 같은 면에서 몇가지 향상된 점이 있을 것이기 때문이다.

More Information

만약 당신이 이 책의 지시에 따랏음에도, 무엇인가가 제대로 동작하지 않는다면, 참을성을 발휘하기 바란다. 당신의 문제점은 나의 어처구니 없는 실수에서 비롯된 것일 수도 있지만, 네트워킹 소프트웨어의 변경에서 비롯된 것일 수도 있다. 먼저 당신은 comp.os.linux.help에 물어보아야 할 것이다. 그러면 당신의 문제에 대해서 더 이상 혼자 고민하지 않아도 되며, 아마도 fix나 적어도 참고 정도는 얻게 될 것이다. 만약 기회가 있다면, 최신 커널과 네트웍 릴리즈를 리눅스 FTP 사이트나 BBS에서 얻어보기 바란다. 많은 문제들이 서로 다른 개발 과정에서 서로 궁합이 잘 맞지 않는데서 유발된다. 뭐, 어쨌든 리눅스는 "개발중"이니까 말이다.

현재의 개발 상황에 대해 정보를 얻을 수 있는 또 다른 곳은 Networking HOWTO이다. 그것은 Terry Dawson이 관리하고 comp.os.linux.announce에 한달에 한번씩 포스팅되며, 대부분의 최신정보를 포함하고 있다. 최신버전은 fsx-11.mit.edu/pub/linux/doc에서 얻을 수 있다. 이러한 방법으로 해결할 수 없는 문제들에 대해선, preface에 적힌 주소로 이 책의 저자와 접촉할 수 있다. 그러나 개발자에게 도움을 요청하는 일은 제발 삼가해 주었으면 한다. 그들은 어쨌든 이미 남는 시간의 대부분을 리눅스에 쏟아붇고 있고, 가뭄에 콩나듯 net을 벗어난 삶을 살아가고 있기 때문이다. :-)

On the Authers

Olaf는 수학을 공부했던 다년간 UNIX 유저였고 파트타임 관리자였다. 지금 그는 UNIX 프로그래머로 일하고 책을 쓰고 있다. 그가 즐기는 스포츠 중의 하나는 sed로 다른 사람들이 perl 인터프리터로 할 수 있는 있을 하는 것이다. 그는 이것에서 백팩과 텐트를 들고 등산을 하는 것 만큼의 재미를 얻는다.

Vince Skahan은 1987년부터 다수의 UNIX 시스템을 관리하였고, 현재로는 2000명이 넘는 유저가 사용하는 300대에 달하는 UNIX 워크스테이션 상에서 sendmail+IDA를 돌린다. 1990년에 sendmail+IDA를 개발해내기 이전, 그는 어려운 방법으로 꽤 많은 sendmail.cf 파일을 편집하느라 중요한 잠을 손해보아도 아랑곳 없었다. 그는 좀 더 모호한 재미를 얻기위해 최초의 sendmail perl버전에 도전중이다.

Olaf에겐 다음의 주소로 연락할 수 있다.

    Olaf Kirch
    Kattreinstr. 38
    64295 Darmstadt
    Germany

    okir@monad.swb.de

Vince에게 연락하려면:

    Vince Skahan
    vince@victrola.wa.com

우리는 당신의 질문, 견해, 엽서등은 환영하지만, 정말 중요하다고 생각하더라도 전화는 하지 말기 바란다.

Thanks

Olaf: 이 책은, 수많은 사람들이 시간을 들여 기술적인 면과 문법적인 면에대해 검토하고 (현수분사같은 것들이 있는지 알지 못했다)으로 잘못된 점을 교정하는 도움을 받았다. 그들 중 대표로 O'Reilly and Associates의 Andy Oram에 감사한다.

Andres Sepúlveda, Wovfgang Michaelis, Michael K. Johnson, 그리고 Networking Guide에 제공된 정보를 검토하는데 여가를 보내는 모든 개발자에게 감사한다. 역시나 Networking Guide의 첫번째 버전을 읽고 고칠점과 제안할 점을 도움 준 모든 이들에게 감사하고 싶다. 당신은 online 배포판의 Thanks 파일에서 도움 준 분들의 완전한 목록을 볼 수 있다. 마지막으로, 이 책은 중요한 Internet connectivity를 제공한 Holger Grothe의 지원이 없었다면 존재하지 않았을 것이다.

Networking Guide의 첫번째 에디션을 찍어, 나나 linux Documentation Project에 돈을 기부해 준 단체와 홰사에 감사한다.

  • Linux Support Team, Erlangen, Germany
  • S.u.S.E. SmbH, Fuerth, Germany
  • Linux System Labs, Inc., United States

Vince: 다년간 sendmail+IDA에 신경써 준 Neil Rickert와 Paul Pomes에, 그리고 최초로 리눅스에 sendmail+IDA를 포팅해 준 Rich Brann에 감사의 말을 전한다. 이에 대해, 그리고 그 외는 프로젝트들에 대해 모든 지원을 아끼지 않았던 나의 아내 Susan에게 가장 감사한다.


Typographical Conventions

이 책에선, 쉘 커맨드, 여러 가지 인자등을 표시하기 위해 몇가지 서체가 쓰였는데, 그에대한 설명은 아래와 같다.