[ 이전 ] [ 차례 ] [ 다음 ]

초보자를 위한 dselect 문서 - 2
dselect가 실행되었을 때


dselect가 실행되면 다음과 같은 화면을 보게 될 것이다:

     Debian Linux `dselect' package handling frontend.
     
     0.  [A]ccess  Choose the access method to use.
     1.  [U]pdate  Update list of available packages, if possible.
     2   [S]elect  Request which packages you want on your system.
     3.  [I]nstall Install and upgrade wanted packages.
     4.  [C]onfig  Configure any packages that are unconfigured.
     5.  [R]emove  Remove unwanted software.
     6.  [Q]uit    Quit dselect.

각각을 하나씩 살펴보도록 하자.


2.1 접근방식 (``Access'')

여기 접근방식 선택 화면이 있다:

     dselect - list of access methods
       Abbrev.        Description
       cdrom          Install from a CD-ROM.
     * multi_cd       Install from a CD-ROM set.
       nfs            Install from an NFS server (not yet mounted).
       multi_nfs      Install from an NFS server (using the CD-ROM set) (not yet mounted).
       harddisk       Install from a hard disk partition (not yet mounted).
       mounted        Install from a filesystem which is already mounted.
       multi_mount    Install from a mounted partition with changing contents.
       floppy         Install from a pile of floppy disks.
       apt            APT Acquisition [file,http,ftp]

여기서 우리는 dselect에게 설치하고자 하는 패키지들이 어디에 있는지를 알려주게 된다. 위의 리스트에서 순서는 무시하기 바란다. 정확한 설치 방법을 선택하는 건 매우 중요한 일이다. 아래에서 위의 방법들이 가지고 있는 차이점을 알아보도록 하자.

multi_cd
이 복잡하고 강력한 방법은 최신 데비안을 여러 장의 바이너리 CD에서 설치하는 방법으로 가장 추천할만한 방법이다. 각각의 CD에는 전체 세트의 Packages.cd 파일들이 (각각이 패키지에 대한 기록을 담고 있다) 있는데, 이것들은 다른 방법들에서 사용되는 전통적인 패키지 파일들에 대해 추가적으로 담겨있는 것들이다. 맨 처음 이방법을 택했다면, 우선 사용하고자 하는 CD-ROM이 마운트되지 않은 것을 확인하라. 바이너리 CD 세트 가운데 아무거나 드라이버에 넣고 아래의 질문들에 답하면 된다:

한번 사용 가능한 리스트를 업데이트하고 설치하고자 하는 패키지들을 선택한 다음부터 multi-cd 방법은 다른 방법과 달라진다. 각각의 CD들에 대해서 "Install"을 실행시켜야 하기 때문이다. 불행하게도 dselect의 한계로 인하여 각각의 단계에서 새로운 CD를 설치할 수 없다; 각각의 디스크에 대해 다음의 작업이 필요하다.

아마도 패키지 설치 순서를 고려할 때 한번 이상의 설치 단계를 거쳐야 할 것이다. - 미리 설치하려고 한 패키지가 적절한 설정 없이 후반에 설치할 패키지를 필요로 하는 경우 이런 문제가 발행한다.

이런 문제가 발생하게 되면 "Configure"를 실행시켜 그 문제점에 대한 도움을 받을 수 있을 것이다.

multi_nfs, multi_mount
이들은 multi-cd와 매우 비슷한데, 대신 매체를 바꿔줄 때 보다 편리하다. 예를 들면 multi-cd 설치를 다른 머신의 CD-ROM을 이용하여 nfs를 통해 하게된다면 도중에 CD를 바꾸는 번거로움을 없앨 수 있다.

apt
데비안 로컬 미러 사이트나 네트워크를 통한 설치를 위한 방법이다. 이 방법은 ``apt'' 시스템을 이용하여 의존성이나 설치 순서를 정하는데, 가장 최적의 순서로 패키지를 설치할 수 있다.

이 방법의 설정은 수월하다; 여러 개의 위치를 섞어서 쓸 수도 있는데 file: URL (지역 디스크나 NFS로 마운트된 디스크), http: URL, 혹은 ftp: URL 등을 자유롭게 사용할 수 있다. 하지만, HTTP와 FTP 옵션은 지역의 허가된 프록시(local authenticating proxies)를 지원하지 않는다.

만약 http나 ftp에 (혹은 둘 다) 대한 프록시 서버를 가지고 있다면, http_proxyftp_proxy 환경 변수가 설정되어 있는지를 확인해라. dselect를 실행시키기 전에 셸에서 이들을 다음과 같이 설정한다:

     # export http_proxy=http://gateway:3128/
     # dselect

floppy
CD-ROM이 없거나 네트워크 접속이 힘든 사람들을 위한 방법이다. 만약 전통적인 크기의 1.44M 플로피를 사용한다면 설치를 용이하게 하는 어떤 옵션도 사용하지 않을 것을 권한다. LS/120이나 ZIP 드라이브를 이용한다면 보다 편한 설치가 가능할 것이다. 먼저 플로피 드라이브의 위치를 지정해 준 다음에 플로피를 넣는다. 처음 것은 패키지 파일들을 가지고 있어야 한다. 이 방법은 느릴 뿐더러 매체의 문제가 생길 가능성이 크기 때문에 가급적 사용 안하는 것이 좋을 것이다.

nfs
사용 반대 -- apt나 multi_nfs를 대신 사용하라. 만약 다른 모든 방법들이 실패할 경우에만 이 방법을 사용하라.

이 방법은 설치 과정이 매우 간단하다: NFS 서버의 주소를 주고 데비안 배포판의 위치와 패키지 파일들의 위치만 알려주면 끝이다. dselect는 서버에서 여러가지 섹션을 설치할 것이다. 느리지만 쉽다; 적절한 설정 단계가 없기 때문에 수많은 ``Configure'' 단계를 거치게 될 것이다. NFS 기반의 설치에서만 적합한 방법이다.

harddisk
사용 반대 -- multi_mount를 대신 사용하라. 만약 다른 모든 방법들이 실패할 경우에만 이 방법을 사용하라.

데비안 파일들이 위치한 파티션에 대한 블럭 디바이스를 지정한다. 간단하지만 느리고, 설치 순서를 위한 단계가 없어서 ``Configure'' 단계를 많이 거쳐야 한다. ``apt'' 방법이 설치 순서 설정 기능과 함께 이 기능을 지원하므로 사용을 권하지 않는다.

mounted
사용 반대 -- multi_mount를 대신 사용하라. 만약 다른 모든 방법들이 실패할 경우에만 이 방법을 사용하라.

파일시스템에서 데비안 파일들의 위치만을 정해주면 된다. 아마 가장 쉬운 방법일 텐데, 느리다는 단점이 있다. 적절한 설치 순서를 위한 단계가 없으므로 수많은 ``Configure'' 단계를 거쳐야 할 것이다.

cdrom
사용 반대 -- multi_cd를 대신 사용하라. 만약 다른 모든 방법들이 실패할 경우에만 이 방법을 사용하라.

하나의 CD 설치를 위한 방법으로, CD-ROM 드라이브의 위치, 데비안 배포본의 위치, 각 패키지 파일들의 위치만을 물어볼 것이다. 간단하지만 정말 느리고, 설치 단계 설정을 위한 단계가 없으므로 수많은 ``Configure'' 단계를 필요로 한다. 하나의 CD-ROM에 만들어진 배포본은 더이상 없을 것으로 생각되기 때문에 권하지 않고, 대신 ``multi_cd'' 방법을 사용할 것을 권한다.

만약 어떤 문제가 발생할 때 -- 아마 Linux가 당신의 CD-ROM을 찾지 못하거나, NFS 마운트가 작동하지 않거나, 어떤 파티션에 패키지가 존재하는지 잊어버렸을 때 등 -- 몇가지 선택이 있다:

접근 방식을 선택한 다음 dselect는 패키지들의 적당한 위치를 찾게 될 것이다. 만약 이 정보를 정확히 얻지 못한다면 Control-C를 누르고 ``Access'' 아이템으로 돌아가기 바란다.

이 과정이 끝난 다음에는 처음의 주화면으로 돌아가게 된다.


2.2 갱신 (``Update'')

dselect는 `Packages' 혹은 `Packages.gz' 파일들을 읽어서 시스템에서 사용 가능한 모든 패키지들의 데이터베이스를 구성한다. 이 과정은 약간 시간이 걸린다.


2.3 선택 (``Select'')

준비하시라. 여기가 모든 것이 결정되는 핵심이다. 이 부분에서는 설치하고자 하는 패키지들을 선택한다.

Enter를 누르자. 만약 컴퓨터가 좀 느린 경우 화면이 지워지고도 15초 동안 아무것도 안나타날 수도 있다.

먼저 화면에 나타나는 것은 도움말 파일의 첫 페이지이다. ``Select'' 화면 어디서든 ? 키를 누름으로써 이 도움말의 첫 페이지를 볼 수 있으며, 그 페이지를 . 키를 누름으로써 넘길 수 있다.

그 안으로 들어가기 전 다음과 같은 사실을 주의하라:

``Select'' 화면의 상단 두 줄을 보자.

     dselect - main package listing (avail., priority)          mark:+/=/- verbose:v help:?
     EIOM Pri Section  Package      Inst.ver    Avail.ver   Description

이것들은 몇몇 특수키들에 대한 정보를 상기시켜 준다.

+
설치를 패키지를 선택한다.

=
패키지를 그대로 유지한다 -- 설치에 실패한 패키지에 유용하다. 이전 버전을 다시 설치하고 새로운 버전의 프로그램이 나타날 때까지 그것을 유지시킬 수 있다.

- (마이너스) 패키지를 제거한다.

_
(밑줄) 패키지와 설정 파일 모두 제거한다.

i,I
화면에 표시되는 정보를 다르게 선택한다.

o,O
정렬 방법을 변경한다.

v,V
이것은 보다 많은 정보를 나타내기 위한 것이다. 이 키를 사용하면 두번째 줄의 EIOM의 의미가 해제되지만, 어쨌든 그 내용을 요약하고자 한다. (대문자와 소문자가 다른 역할을 한다는 것에 유의하라.)
     Flag   의미              가능한 값
     E      에러              Space, R, I
     I      설치 상태         Space, *, -, U, C, I
     O      이전 마크         *, -, =, _, n
     M      현재 마크         *, -, =, _, n

모든 것에 대해 설명하기 보다는 당신이 Help 화면에서 그 내용을 직접 확인하는 것이 좋을 것이다. 예를 하나 들어보자.

dselect로 들어가서 이와 같은 줄을 찾았다고 하자:

     EIOM Pri  Section  Package   Description 
       ** Opt  misc     loadlin   a loader (running under DOS) for LINUX kernel

이것은 당신이 마지막에 dselect를 실행했을 때 loadlin을 선택했다는 것과 아직 선택되어 있다는 것, 하지만 아직 설치되지는 않았다는 것을 보여준다. 이유는 무엇 때문이겠는가? 당연히 loadlin 패키지가 물리적으로 설치 불가능하기 때문이다(설치 중인 매체에 패키지가 포함되어 있지 않다는 등의 이유).

dselect가 모든 패키지에 대한 설치 내용에 대한 정보는 패키지들 자체에 담겨져 있다. 이 세상에 완전한 것은 없다. 따라서 때때로 패키지 안의 의존성 내용이 정확하지 않아 dselect가 그 문제를 해결할 수 없는 경우도 존재한다. 이런 경우 ``Select'' 화면에서 QX 명령을 이용하여 제어할 수 있다.

Q
덮어쓰기. dselect 내부의 의존성을 강제로 무시하고 당신이 지정한 작업을 수행하게 한다. 물론 결과에 대해서 당신이 정확히 알고 있어야 한다.

X
만약 실패했다면 이 키를 사용하라. 모든 것을 이전 상태로 돌리고 빠져나갈 것이다.

당신의 실패를 방지하는데 도움을 주는 키로 R, U, D 가 있다.

R
이 단계의 모든 선택을 취소한다. 이전 단계에서 선택한 것에는 영향을 미치지 않는다.

U
만약 dselect가 무언가 바꿀 것을 제안하거나 당신 스스로 추가로 바꾼 것이 있다면 이 키로 현재 dselect의 내용을 복구할 수 있다.

D
dselect에 의해 선택된 것들을 모두 제거하고, 당신이 선택한 것 만을 남겨놓는다.

다음과 같은 예를 보자. boot-floppies 패키지는 (초보자를 위한 예제가 아니라는 걸 안다. 하지만 이것이 많은 패키지에 의존적이기 때문에 선택했다) 다음과 같은 패키지들에 의존적이다:

boot-floppies 패키지를 관리하는 사람은 또한 아래의 패키지 역시 설치되어 있어야 한다고 생각한다. 하지만, 이것은 반드시 필요한 것은 아니다:

따라서 내가 boot-floppies를 선택할 때 다음과 같은 화면을 보게 된다:

     dselect - recursive package listing mark:             +/=/- verbose:v help:?
     EIOM Pri Section Package Description
     
     dselect - recursive package listing                         mark:+/=/- verbose:v help:?
     EIOM Pri Section  Package      Description
       ** Opt admin    boot-floppie Scripts to create the Debian installation floppy set.
       _* Opt devel    newt0.25-dev Developer's toolkit for newt windowing library
       _* Opt devel    slang1-dev   The S-Lang programming library, development version.
       _* Opt devel    slang1-pic   The S-Lang programming library, shared library subset ki

(당신 시스템에 어떤 패키지들이 설치되어 있는가에 따라서 나머지 패키지들은 나타날 수도 있고 그렇지 않을 수도 있다). 모든 필요한 패키지들이 나를 위해 선택되어 있다는 것을 확인할 수 있을 것이다.

R 키를 누름으로써 처음으로 돌아갈 수 있다.

     dselect - recursive package listing mark:             +/=/- verbose:v help:?
     EIOM Pri Section Package Description
     
     dselect - recursive package listing                         mark:+/=/- verbose:v help:?
     EIOM Pri Section  Package      Description
       __ Opt admin    boot-floppie Scripts to create the Debian installation floppy set.
       __ Opt devel    newt0.25-dev Developer's toolkit for newt windowing library
       __ Opt devel    slang1-dev   The S-Lang programming library, development version.
       __ Opt devel    slang1-pic   The S-Lang programming library, shared library subset ki

만약 이 boot-floppies 패키지를 설치하지 않기로 결심했다면, 이 상태에서 Enter를 치면 된다.

D 키는 처음 설치 상태로 돌아가게 한다:

     dselect - recursive package listing mark:             +/=/- verbose:v help:?
     EIOM Pri Section Package Description
     
     dselect - recursive package listing                         mark:+/=/- verbose:v help:?
     EIOM Pri Section  Package      Description
       _* Opt admin    boot-floppie Scripts to create the Debian installation floppy set.
       __ Opt devel    newt0.25-dev Developer's toolkit for newt windowing library
       __ Opt devel    slang1-dev   The S-Lang programming library, development version.
       __ Opt devel    slang1-pic   The S-Lang programming library, shared library subset ki

U키는 dselect의 선택들을 복구한다:

     dselect - recursive package listing mark:             +/=/- verbose:v help:?
     EIOM Pri Section Package Description
     
     dselect - recursive package listing                         mark:+/=/- verbose:v help:?
     EIOM Pri Section  Package      Description
       _* Opt admin    boot-floppie Scripts to create the Debian installation floppy set.
       _* Opt devel    newt0.25-dev Developer's toolkit for newt windowing library
       _* Opt devel    slang1-dev   The S-Lang programming library, development version.
       _* Opt devel    slang1-pic   The S-Lang programming library, shared library subset ki

지금은 기본적인 것들을 실행할 것을 제안한다 -- 앞으로 많은 패키지들을 추가할 수 있는 기회가 있을 것이다.

당신 결정이 어떻든, Enter를 치면 그 결정을 받아들이고 주화면으로 전환된다. 만약 결과가 해결할 수 없는 문제를 담고 있다면, 바로 문제 해결을 위한 다른 화면으로 전환될 것이다.

따라서 R, U, D, 키는 ``어떤 상황에서도'' 매우 유용하다. 어떤 것이든 실험해보고 모든 것을 원상태로 복구한 뒤 다시 시도해 볼 수 있다. 이것들을 ``비상시 유리를 깨고 사용하시오'' 딱지가 붙어있는 유리 상자와 같이 보지 말라.

``Select'' 화면에서 선택을 마친 후, I를 누르면 큰 창이 나타날 것이고, t를 쓰면 처음으로 간 뒤 Page-Down 키를 이용하여 선택 내용을 빠르게 검토할 수 있다. 이 방법은 작업 결과를 확인하고 에러를 쉽게 찾아낼 수 있게 한다. 어떤 사람은 모든 패키지들 선택을 실수로 해제하고 너무 늦게 그 사실을 알아채는 경우도 있다. dselect는 매우 강력한 도구이므로 잘못 사용하지 않도록 주의해야 한다.

처음상태는 다음과 같다:

     package category     status
     
     required             all selected
     important            all selected
     standard             mostly selected
     optional             mostly deselected
     extra                mostly deselected

만족스러운가? Enter를 누르고 ``Select'' 프로세스를 빠져나오라. 만약 원한다면 다시 ``Select''를 실행시킬 수 있다.


2.4 설치 (``Install'')

dselect는 실행시 2250개의 모든 패키지를 거치면서 선택된 패키지를 설치하게 된다. 설치가 진행되면서 결정이 필요할 때에는 질문이 나타나게 될 것이다. 이것은 서로 다른 셸을 비교하면서 교체할 때 (말하자면 이전의 설정을 새 패키지에 적용할 때) 종종 유용하게 사용된다. 만약 예전의 파일이 conf.modules였다면 새로운 것은 conf.modules.dpkg-new가 될 것이다.

시스템이 빠르면 화면이 너무 빨리 넘어갈지도 모른다. 그렇다면 Control-s/Control-q 로 화면을 정지/해제 시킬 수 있고 화면의 마지막에서는 설치되지않은 패키지들의 목록을 얻게 될 것이다. 만약 모든 것에 대한 기록을 간직하고 싶다면 teescript 같은 일반 유닉스의 기능을 이용하라.

패키지가 설치되지 않은 경우 가운데 하나는 설치를 위해 목록에 포함되긴 했지만 아직 설치되지 않은 패키지에 설치하고자 하는 패키지가 의존적인 경우이다. 이런 경우에 대한 해답은 ``Install''을 다시 한번 실행시키는 것이다. 모든 것이 제위치에 설치되기 위해서 설치를 4번 반복해야 하는 경우가 보고된 적도 있다. 물론 이 회수는 당신이 어떤 방법으로 무엇을 설치하는 지에 따라 다르다.


2.5 설정 (``Configure'')

대부분의 패키지들은 세번째 단계에서 설정이 되지만, 설정이 이루어지지 않은 패키지가 있다면 이 곳에서 설정을 한다.


2.6 제거 (``Remove'')

설치되어 있지만 더이상 필요하지 않은 패키지들을 제거한다.


2.7 나가기 (``Quit'')

나는 이 단계에서 /etc/cron.daily/find를 실행시켜 시스템에 설치된 수많은 파일들을 확인하기를 권한다. 그러면 locate를 이용하여 주어진 파일이 위치를 확인할 수 있다.


[ 이전 ] [ 차례 ] [ 다음 ]
초보자를 위한 dselect 문서
Stphane Bortzmeyer bortzmeyer@debian.org
한국어 번역: Taejoon Kwon linusben@bawi.org