6.3. 각 구성 요소 사용하기

여기서는 설치 프로그램의 각 구성 요소를 자세히 설명합니다. 이 구성 요소는 사용자 입장에서 몇 단계로 분류할 수 있습니다. 여기서 설명하는 순서는 설치할 때 나타나는 순서입니다. 설치할 때 여기 있는 모듈을 모두 사용하는 건 아닙니다. 이 중에서 실제로 어떤 모듈을 사용하는 지는 설치 방법과 하드웨어에 따라 달라집니다.

6.3.1. 데비안 설치 프로그램 및 하드웨어 설정 준비하기

데비안 설치 프로그램이 부팅하고 첫번째 화면이 나왔다고 가정합니다. 이 시점에서는 아직 debian-installer의 기능은 매우 제한적입니다. 하드웨어도 모르고, 선호하는 언어도 모르고, 어떤 작업을 해야 할 지도 모릅니다. 걱정하지 마십시오. debian-installer는 아주 똑똑하기 때문에, 하드웨어를 자동으로 검색해서, 필요한 구성 요소를 찾아낸 다음에, 다양한 기능을 갖춘 설치 시스템으로 다시 태어납니다. 하지만 자동으로 알아낼 수 없는 일부 정보의 경우는 (선호하는 언어 선택, 키보드 배치, 사용할 네트워크 미러 따위) 여러분이 직접 debian-installer에 관련 정보를 입력해야 합니다.

이 단계에서 debian-installer는 여러 번의 하드웨어 검색을 합니다. 첫번째는 설치 프로그램의 구성 요소를 읽어들이는 데 필요한 하드웨어를 (예를 들어 CD-ROM이나 네트워크 카드) 검색합니다. 첫번째로 실행할 때는 아직 사용할 수 없는 드라이버가 있기 때문에, 나중 단계에서 하드웨어 검색을 다시 합니다.

6.3.1.1. 사용 가능 메모리 검사 / 저용량 메모리 모드

debian-installer가 맨 처음에 하는 일 중의 하나는, 메모리를 검사하는 것입니다. 메모리가 부족할 경우, 이 구성 요소에서는 설치 과정에 약간 수정을 가해서 시스템에서 Debian GNU/Linux을 설치할 수 있게 합니다.

설치 프로그램의 메모리 소모를 줄이기 위해 첫째로 번역 기능을 사용하지 않습니다. 즉 설치는 영어로만 진행됩니다. 물론 설치한 시스템은 설치가 끝난 다음에도 지역화 기능을 설정할 수 있습니다.

그걸로 부족하다면, 설치 프로그램에서 기본적인 설치를 마칠 수 있는 구성 요소들만 읽어들이는 방법으로 메모리 소모를 줄입니다. 이렇게 하면 설치 시스템의 기능이 줄어듭니다. 수동으로 구성 요소들을 추가로 읽어들일 수도 있지만, 구성 요소를 하나 하나 선택할 때마다 메모리를 추가로 사용하기 때문에 설치가 실패할 수도 있습니다.

설치 프로그램이 저용량 메모리 모드로 동작할 경우, 비교적 큰 스왑 파티션을 (64MB에서 128MB 정도) 만들기를 권장합니다. 스왑 파티션은 가상 메모리로 사용해서 시스템에서 사용 가능한 메모리 양을 늘립니다. 설치 프로그램에서는 스왑 파티션을 가능한한 설치 과정의 앞 부분에서 활성화합니다. 단 스왑 파티션을 많이 사용하면 시스템의 성능이 떨어지고 디스크 동작이 많아질 수 있습니다.

이렇게 하더라도, 시스템의 메모리가 부족하면 시스템이 멈출 수도 있고, 예상하지 못한 오류가 발생하거나 커널이 프로세스를 끝낼 수도 있습니다. (이 경우에 “Out of memory” 메세지가 VT4와 syslog에 나타납니다.)

예를 들어 저용량 메모리 모드에서 스왑 공간이 부족하면 큰 ext3 파일 시스템을 만들 때 실패한다는 보고가 있었습니다. 스왑을 더 늘려도 개선이 안 될 경우에는, 파일 시스템을 ext2로 (ext2는 설치 프로그램의 필수 구성요소입니다) 만들어 보십시오. 설치를 끝낸 다음에 ext2 파티션을 ext3로 바꿀 수 있습니다.

6.3.1.2. 지역화 옵션 선택

대부분의 경우 처음 물어보는 질문은 설치할 때 및 설치한 시스템에 대한 지역화에 모두 적용됩니다. 지역화 옵션은 언어, 국가, 로케일로 이루어져 있습니다.

여기서 선택하는 언어를 사용해 나머지 설치 과정을 진행합니다. 단 그 언어로 해당 대화 상자들의 번역이 있어야 됩니다. 그 언어로 된 번역문이 없으면 기본값인 영어를 사용합니다.

여기서 선택한 지역은 나중에 기본 시간대 및 지리적으로 가까운 데비안 미러를 고르는 데 이용됩니다. 물론 설치 프로그램의 기본값이 마음에 들지 않으면 다른 선택을 할 수도 있습니다. 선택한 국가와 언어는 새 데비안 시스템의 로케일 설정과 키보드를 선택하는데 사용됩니다.

먼저 사용할 언어를 선택하게 됩니다. 각 언어의 이름은 (왼쪽에) 영어 및 (오른쪽에) 해당 언어로 쓰여 있습니다. 오른쪽에 있는 이름은 해당 언어의 문자를 이용해서 표시됩니다. 이 언어 목록은 영어 이름 순서로 나열되어 있습니다. 목록의 맨 위에는 “C” 로케일을 선택하는 옵션입니다. “C” 로케일을 선택하면 설치는 영어로 진행되고, 설치한 시스템은 locales 꾸러미를 설치하지 않고 지역화 기능이 없게 됩니다.

여러 국가들에서 공식 언어로 사용하는 언어를 선택하는 경우[4], 해당 국가를 선택하게 됩니다. 목록의 맨 아래에 있는 기타를 선택하면, 모든 언어의 목록이 대륙별로 구분 지어서 표시됩니다. 해당 언어를 사용하는 국가가 하나뿐이라면, 자동으로 그 국가를 선택합니다.

기본 로케일은 선택한 언어 및 국가에 따라 자동으로 결정됩니다. 중간 혹은 낮음 우선순위로 설치하는 경우, 다른 기본 로케일 값을 다르게 선택하거나 로케일을 여러 개 추가로 만들어 놓도록 할 수 있습니다.

6.3.1.3. 키보드 선택하기

어떤 키보드는 특정 언어에서 사용하는 문자에 맞게 만들어져 있습니다. 사용하고 있는 키보드에 맞는 키보드 배치를 고르시고, 해당 키보드 배치가 여기 없으면 어느정도 비슷한 키보드 배치를 고르십시오. 시스템 설치를 모두 마치면 더 많은 종류의 키보드 배치 중에서 하나를 고를 수 있게 됩니다. (kbdconfig를 실행하십시오.)

반전 표시를 해당 키보드로 옮기고 Enter를 누르십시오. 화살표 키로 반전 표시를 움직입니다. 화살표 키는 모든 언어의 키보드에 대해 동일하므로, 키보드 설정과는 상관이 없습니다. 목록에서 '확장' 키보드는 F1에서 F10 키가 위에 붙어 있는 키보드를 말합니다.

6.3.1.4. 데비안 설치 프로그램 ISO 이미지 찾기

hd-media 방법으로 설치하면, 데비안 설치 프로그램 ISO 이미지를 찾아서 마운트해야 하는 시점이 있습니다. 이 ISO 이미지에서 나머지 설치 파일을 가져옵니다. iso-scan 구성 요소가 정확히 이 일을 합니다.

먼저, iso-scan은 알려진 파일 시스템을 사용하는 블록 장치(파티션 등)를 마운트하고, 차례대로 .iso로 (혹은 .ISO로) 끝나는 파일이름을 찾습니다. 단 첫번째에서는 맨 위 디렉토리와 바로 아래 서브 디렉토리에 있는 파일만 찾습니다. (즉 /아무개.iso, /data/아무개.iso 파일은 찾지만, /data/tmp/아무개.iso는 찾지 않습니다.) ISO 이미지를 찾으면, iso-scan에서 이미지 내용을 검사해서 이미지가 올바른 데비안 ISO 이미지인지 아닌지 판단합니다. 올바른 이미지가 맞으면 끝나고, 아니면 다른 이미지를 찾습니다.

앞에서 설치 ISO 이미지를 찾는 데 실패하면, iso-scan에서는 계속해서 이미지를 찾을 지 여부를 물어봅니다. 그러면 맨 위의 디렉토리만 찾는 게 아니라, 모든 파일 시스템을 뒤져봅니다.

iso-scan에서 설치 프로그램 ISO 이미지를 발견하지 못했다면, 원래 운영 체제로 다시 시작해서 이미지 이름이 올바른 지 (.iso로 끝나는 지), debian-installer가 인식할 수 있는 파일 시스템에 들어 있는지, 파일이 손상되지 않았는지 (체크섬 확인) 확인하십시오. 경험 많은 유닉스 사용자라면 다시 시작하지 않고 두 번째 콘솔에서 할 수도 있습니다.

6.3.1.5. 네트워크 설정하기

이 단계에 들어왔을 때 시스템에서 네트워크 장치를 두 개 이상 찾으면, 어떤 장치를 주요 네트워크 인터페이스로 사용할 지 질문을 받게 됩니다. 주요 네트워크 인터페이스란 설치할 때 사용할 인터페이스를 말합니다. 이 인터페이스 외의 인터페이스는 이 시점에서는 설정하지 않습니다. 설치가 다 끝난 다음에 장치들을 추가로 설정할 수 있습니다. interfaces(5) 맨 페이지를 참고하십시오.

기본값으로 debian-installer에서는 먼저 DHCP를 통해 컴퓨터 네트워크를 설정하려고 시도합니다. DHCP 검색이 성공하면 네트워크 설정이 모두 끝납니다. 검색이 실패하면 네트워크 케이블을 꽂지 않았거나 DHCP가 잘못되었거나 따위의 여러가지 원인 때문일 수 있습니다. 아니면 LAN에 DHCP 서버가 아예 없을 수도 있습니다. 자세히 알고 싶으면 네번째 콘솔에 나오는 오류 메세지를 참고하십시오. 원인이 무엇이든, 다시 시도할 지 수동으로 설정할 지 여부를 물어봅니다. DHCP 서버는 가끔 응답이 아주 느리기도 하기 때문에, 다른 문제가 없는 게 분명하면 다시 시도해 보십시오.

수동 네트워크 설정에서는 네트워크에 관한 여러가지 정보들을 차례대로 물어봅니다. IP 주소, 네트마스크, 게이트웨이, 네임 서버 주소호스트이름을 물어봅니다. 또 무선 네트워크 인터페이스가 있다면, 무선 ESSIDWEP 키를 물어봅니다. 3.3절. “필요한 정보”의 답을 채워 넣으십시오.

참고

알아두면 편리할 수도 있고 아닐 수도 있는 기술적인 정보: 이 프로그램에서는 네트워크 IP 주소가 시스템의 IP 주소와 네트마스크를 비트 AND한 값이라고 가정합니다. 브로드캐스트 주소는 시스템의 IP 주소와 네트마스크의 비트 NOT한 값을 OR한 값이라고 가정합니다. 또 게이트웨이도 임의로 추정합니다. 수동 설정에서 무슨 값을 써야 할지 잘 모르겠다면, 시스템의 추정값을 사용해 보십시오. 일단 시스템을 설치한 다음에 필요하다면 /etc/network/interfaces 파일을 편집해서 이 설정을 바꿀 수 있습니다.

6.3.2. 파티션하기 및 마운트 위치 선택

여기에서는 마지막으로 하드웨어 검색을 한 다음에, debian-installer는 필요한 기능을 모든 갖추고, 사용자의 필요에 맞게 진짜 설치 작업을 할 준비를 갖추게 됩니다. 제목이 말하듯, 다음 몇 개의 구성 요소는 디스크를 파티션하고, 파일시스템을 만들고, 마운트 위치를 지정하고, 또 필요하다면 LVM이나 RAID 장치와 같은 관련 설정을 합니다.

6.3.2.1. 디스크 파티션하기

디스크를 파티션할 차례입니다. 파티션하는 게 불안하거나 자세히 알고 싶으시면, 부록 C. 데비안의 하드디스크 파티션 부분을 참고하십시오.

먼저 선택에 따라, 전체 드라이브나 드라이브의 빈 공간을 자동으로 파티션할 수 있습니다. 이 방법을 “자동” 파티션이라고 합니다. 자동 파티션을 하지 않으려면, 메뉴에서 수동으로를 선택하십시오.

자동 파티션하는 경우, 세 가지 방법이 있습니다: 하드 디스크에서 직접 파티션을 만들거나 (전통적인 방법), 논리 볼륨 관리를 (LVM) 사용하거나, 암호화한 LVM을[5] 사용하는 것입니다.

참고

아키텍쳐에 따라 (암호화한) LVM을 사용하는 옵션을 사용하지 못할 수도 있습니다.

LVM이나 암호화한 LVM을 사용하는 경우, 설치 프로그램은 대부분의 파티션을 한 개의 큰 파티션 안에 만듭니다. 이 방법의 장점으로 이 큰 파티션 안의 파티션들은 나중에 비교적 쉽게 크기를 바꿀 수 있습니다. 암호화한 LVM의 경우 특수한 열쇠글을 알지 못하면 이 큰 파티션을 읽지 못하므로, (개인적인) 데이터에 대해 더 보안에 안전합니다.

암호화된 LVM을 사용할 때, 설치 프로그램은 디스크에 임의의 데이터를 써 넣어서 디스크를 지웁니다. 이렇게 하면 보안을 더욱 높이겠지만 (디스크의 어느 부분을 사용하고 있는지 추적하는 게 불가능하고, 예전에 설치했던 데이터를 지우기 때문입니다), 디스크 크기에 따라 시간이 오래 걸릴 수도 있습니다.

참고

LVM이나 암호화한 LVM을 사용해 자동 파티션을 하는 경우, LVM을 설정하는 동안 파티션 테이블의 일부를 바꿔야 합니다. 이렇게 하면 해당 하드 디스크에 있는 데이터가 전부 지워지고 되돌릴 수 없습니다. 설치 프로그램이 해당 사항을 디스크에 쓰기 전에 계속해도 좋을 지 확인 질문을 합니다.

전체 디스크에 대해 자동 파티션 하기를 (일반적인 파티션이나 (암호화한) LVM에서) 선택했다면, 사용하려는 디스크를 선택하라는 질문을 맨 처음에 받게 됩니다. 디스크가 모두 목록에 있는 지 확인하십시오. 디스크가 여러 개 있을 경우 반드시 올바른 디스크를 선택하십시오. 목록에 나오는 순서는 경우에 따라 달라질 수 있습니다. 디스크 용량으로도 어떤 디스크인지 확인할 수 있을 것입니다.

선택한 디스크에 있는 모든 데이터를 영영 잃어버리게 될 것입니다. 하지만 디스크에 변경 사항을 쓰기 전에 언제나 확인 질문을 받습니다. 일반적인 파티션 방법을 선택했다면, 끝날 때 변경 사항을 취소할 수 있습니다. 반면 (암호화한) LVM을 사용하는 경우에는 취소가 불가능합니다.

그 다음에 아래의 표에 나온 방식 중 하나를 선택할 수 있습니다. 이 방식들은 각각 장단점이 있고, 부록 C. 데비안의 하드디스크 파티션에서 설명합니다. 잘 모르겠으면 첫번째를 선택하십시오. 명심해 둬야 할 것은, 자동 파티션할 때는 어느정도 최소한의 빈 공간이 필요하다는 점입니다. 최소 1GB의 공간이 없으면 (방식에 따라 이 최소 용량은 다릅니다) 자동 파티션은 실패합니다.

파티션 방식 최소 공간 만들 파티션
한 파티션에 파일 모두 600MB /, 스왑
별도 /home 파티션 500MB /, /home, 스왑
별도 /home, /usr, /var, /tmp 파티션 1GB /, /home, /usr, /var, /tmp, 스왑

(암호화한) LVM을 사용해 자동 파티션하는 경우, 설치 프로그램은 별도의 /boot 파티션을 만듭니다. 그 외의 파티션은 (스왑 파티션 포함) LVM 파티션 안에 만듭니다.

파티션 방법을 선택하면, 그 다음 화면에서 새로 만든 파티션 테이블이 나타납니다. 여기에는 파티션을 포맷할 형식과 마운트할 위치에 대한 정보도 들어 있습니다.

파티션 목록은 다음과 같이 나타납니다:

  IDE1 master (hda) - 6.4 GB WDC AC36400L
        #1 primary   16.4 MB     ext2       /boot
        #2 primary  551.0 MB     swap       swap
        #3 primary    5.8 GB     ntfs
           pri/log    8.2 MB     FREE SPACE

  IDE1 slave (hdb) - 80.0 GB ST380021A
        #1 primary   15.9 MB     ext3
        #2 primary  996.0 MB     fat16
        #3 primary    3.9 GB     xfs        /home
        #5 logical    6.0 GB     ext3       /
        #6 logical    1.0 GB     ext3       /var
        #7 logical  498.8 MB     ext3
        #8 logical  551.5 MB     swap       swap
        #9 logical   65.8 GB     ext2

위의 예에서는 IDE 하드드라이브가 2개이고 여러 개 파티션으로 나눠져 있습니다. 첫 번째 디스크에는 빈 공간이 있습니다. 각 파티션 줄에는 파티션 번호, 종류, 크기, 추가 플래그, 파일시스템, 그리고 마운트 위치를 (마운트 위치가 따로 있는 경우) 표시합니다. 주의: 위와 같은 파티션은 자동 파티션하면 만들 수 없고, 수동으로 만들면 이렇게 될 수도 있다는 걸 안내하는 것 뿐입니다.

여기까지가 자동 파티션입니다. 자동으로 만든 파티션 테이블이 마음에 들면, 메뉴에서 파티션 나누기를 마치고 바뀐 사항을 디스크에 쓰기를 선택해서 새 파티션 테이블을 실제로 적용합니다 (이 절의 맨 뒤 부분에서 설명합니다). 마음에 들지 않으면, 파티션에 바뀐 사항을 취소를 선택해서 자동 파티션을 다시 실행하거나, 자동으로 만들어 준 파티션을 아래에서 설명하는 것처럼 수동으로 고칠 수도 있습니다.

수동 파티션을 선택하면 위와 비슷한 화면을 표시합니다. 다른 점은 기존 파티션 테이블을 마운트 위치 없이 표시한다는 점입니다. 이 절의 나머지 부분에서는 파티션 테이블을 수동으로 만드는 방법과, 이 파티션을 새 데비안 시스템에서 어떻게 사용할 지에 대해 다룹니다.

파티션도 없고 빈 공간도 없는 새 디스크라면, 새로운 파티션 테이블을 만들지 여부를 물어봅니다. (그래야 새 파티션을 만들 수 있습니다.) 그 다음에 “빈 공간”이라는 줄이 해당 디스크 이름 아래에 나타납니다.

빈 공간을 선택하면, 새 파티션을 만들 지 물어봅니다. 크기, 종류 (주 파티션 아니면 논리 파티션), 위치에 (빈 공간에서 처음 아니면 끝) 대해 답해야 합니다. 그러면 새 파티션에 대한 자세한 정보가 나타납니다. 주로 설정할 사항은 용도:으로, 파티션을 파일시스템으로 사용할지, 아니면 스왑, 소프트웨어 RAID, LVM, 암호화한 파일시스템으로 사용할지, 아니면 아예 사용하지 않을 지 설정합니다. 기타 설정은 마운트 위치, 마운트 옵션, 부팅 가능 플래그, 용도 따위의 옵션이 있는데, 이 옵션은 앞에서 설정한 파티션 용도에 따라 달라집니다. 기본값이 마음에 들지 않는다면, 원하는 대로 바꾸십시오. 예를 들어 용도: 옵션을 선택해서 이 파티션의 파일시스템을 선택할 수 있고, 스왑 파티션, 소프트웨어 RAID, LVM, 아니면 아예 사용하지 않는 것까지도 선택할 수 있습니다. 또 다른 멋진 기능은 기존 파티션의 데이터를 이 파티션으로 복사하는 기능입니다. 새 파티션이 마음에 들면 파티션 준비를 마쳤습니다를 선택하고 partman의 주 화면으로 돌아갑니다.

파티션에서 뭔가 바꾸려고 한다면, 해당 파티션을 선택하십시오. 그러면 파티션 설정 메뉴가 나타납니다. 새 파티션을 만들 때와 같은 화면이기 때문에, 여기서도 마찬가지의 같은 옵션들을 설정합니다. 첫 눈에 잘 이해가 되지 않을 수도 있는 부분은, 파티션의 크기 항목을 이용해서 파티션의 크기를 바꿀 수 있다는 점입니다. 이 기능이 동작하는 파티션은 fat16, fat32, ext2, ext3, 및 스왑입니다. 이 메뉴에서 파티션을 지워 버릴 수도 있습니다.

최소한 파티션을 두 개 만들도록 하십시오. 한 개는 루트 파일시스템이고 (/에 마운트합니다), 다른 하나는 스왑입니다. 루트 파일 시스템을 마운트하지 않으면, 그 문제를 바로잡기 전에는 다음으로 진행하지 없습니다.

partman의 기능은 설치 프로그램 모듈에 따라 확장되지만, 시스템의 아키텍처에 따라 다릅니다. 모든 기능들을 볼 수 없다면, 필요한 모듈을 모두 읽어들였는지 확인하십시오. (예를 들어, partman-ext3, partman-xfs, 아니면 partman-lvm)

파티션이 마음이 들면, 파티션 메뉴에서 파티션 나누기를 마치고 바뀐 사항을 디스크에 쓰기를 선택하십시오. 디스크에 바뀐 점에 대한 요약이 나타나고 이대로 파일 시스템을 만들지 확인합니다.

6.3.2.2. 멀티디스크 장치 설정하기 (소프트웨어 RAID)

컴퓨터에 하드 드라이브가 여러 개 있는 경우[6], mdcfg 명령으로 드라이브의 성능을 향상시키거나, 데이터 안정성을 높일 수 있습니다. 이렇게 하는 걸 멀티디스크 장치라고 합니다. (더 자주 쓰이는 다른 말로 RAID라고 합니다.)

기본적으로 멀티디스크는 여러 디스크에 있는 여러 개의 파티션으로 하나의 논리 장치를 만드는 걸 말합니다. 그러면 이 논리 장치는 일반 파티션처럼 사용할 수 있습니다. (예를 들어 partman에서 포맷하고 마운트 위치를 지정하고 따위를 할 수 있습니다.)

어떤 종류의 멀티디스크 장치를 만드냐에 따라 어떤 이점이 있는지 달라집니다. 현재 지원하는 종류는:

RAID0

주로 성능 향상이 목적입니다. RAID0는 들어오는 데이터를 스트라이프(stripe)로 나눠서 배열의 각 디스크에 똑같이 분산시킵니다. 이렇게 하면 읽기/쓰기 작업의 속도가 빨라집니다. 하지만 디스크중에 하나라도 망가지면, 모든 데이터를 잃게 됩니다. (망가지지 않은 디스크에 일부 데이터가 남아 있겠지만, 또 다른 부분이 망가진 디스크에 있었기 때문입니다.)

RAID0은 비디오를 편집하는 파티션에 많이 사용합니다.

RAID1

안정성을 최우선으로 할 때 적합합니다. RAID1은 여러 개의 (보통 두개) 같은 크기의 파티션으로 구성되어 있고, 여기서 각 파티션은 정확히 같은 데이터를 담고 있습니다. 이게 근본적으로 3가지 의미가 있습니다. 첫째로, 하나의 디스크가 망가지더라도, 나머지 디스에 데이터가 미러되어 있습니다. 둘째로, 디스크의 전체 용량보다 작은 용량만 사용할 수 있습니다. (좀더 정확히 말해, RAID에서 가장 작은 파티션입니다.) 세번째로, 파일 읽기는 로드 밸런싱으로 서버의 성능을 향상시켜, 파일서버와 같이 디스크 읽기가 쓰기보다 많은 경우 부담이 줄어듭니다.

RAID5

속도, 안정성, 데이터 중첩을 적당히 조화시킨 것입니다. RAID5는 들어오는 모든 데이터를 스트라이프로 나누고 각각을 하나의 디스크가 아니라 (즉 RAID0와는 달리) 모두에게 분배합니다. RAID0와는 다르게 RAID5는 디스크에 쓸 정보의 패리티 정보를 계산합니다. 패리티 디스크는 고정되어 있지 않고 (고정되어 있으면 RAID4라고 합니다) 정기적으로 바뀝니다. 디스크중에 하나가 망가지면, 없어진 부분을 나머지 데이터와 패리티를 이용해서 계산해 냅니다. RAID5는 최소한 3개의 파티션이 있어야 합니다. 배열에 디스크를 하나 더 사용해서 망가진 디스크를 대체하도록 만들 수도 있습니다.

이렇게 RAID5는 RAID1과 비슷한 정도의 안정성을 가지면서, 데이터를 덜 중복합니다. 한편 패리티 계산때문에 RAID0보다는 쓰는 속도가 느립니다.

요약하면:

종류 장치 최소 개수 예비 장치 디스크가 망가져도 버티는지? 사용 가능 공간
RAID0 2 아니오 아니오 RAID에서 가장 작은 파티션의 크기 x 장치 개수
RAID1 2 옵션 RAID에서 가장 작은 파티션의 크기
RAID5 3 옵션 가장 작은 파티션의 크기 x (RAID의 장치 개수 빼기 1)

소프트웨어 RAID의 좀 더 알고 싶으시면, Software RAID HOWTO를 읽어 보십시오.

멀티디스크 장치를 만드려면, 구성할 파티션을 RAID에 사용한다고 표시해야 합니다. (파티션 설정 메뉴의 partman에서 용도:->RAID의 물리적 볼륨을 선택하십시오.

주의

설치 프로그램에서 멀티디스크 지원은 비교적 최근에 추가되었습니다. 어떤 특정 RAID 레벨을 특정 부트로더와 함께 루트 (/) 파일 시스템으로 멀티디스크를 사용한 경우에 문제가 발생할 수도 있습니다. 경험 많은 사용자들의 경우, 쉘에서 수동으로 설정하거나 수동으로 설치하는 방법으로 이러한 문제를 피해갈 수 있습니다.

그 다음 partman 메뉴에서 소프트웨어 RAID 설정을 선택합니다. (최소한 한 파티션을 RAID의 물리적 볼륨으로 표시해야만 메뉴가 나타납니다.) mdcfg의 첫 번째 화면에서 멀티디스크 장치 만들기를 선택하기만 하면 지원하는 멀티디스크 장치의 종류 목록이 나옵니다. 거기에서 하나를 (예를 들어 RAID1) 고르십시오. 그 다음은 여기서 어떤 종류의 멀티디스크를 선택했냐에 따라 달라집니다.

  • RAID0는 간단합니다. RAID 파티션의 목록이 나타나고 거기에서 멀티디스크를 구성할 파티션을 선택하기만 하면 됩니다.

  • RAID1은 약간 더 까다롭습니다. 먼저 멀티디스크를 구성할 활성 장치의 개수 및 예비 장치의 개수를 입력합니다. 그리고 RAID 파티션 목록에서 무엇을 활성 파티션과 예비 파티션으로 할 지 결정합니다. 여기서 선택한 파티션 개수는 맨 처음에 입력한 개수와 일치해야 합니다. 걱정할 필요는 없습니다. 실수로 파티션 개수가 틀렸다고 해도, 개수가 맞을 때까지는 debian-installer가 다음으로 진행하지 않습니다.

  • RAID5는 RAID1과 비슷한 설정을 하지만, 최소한 3개의 활성 파티션을 사용해야 한다는 점이 다릅니다.

여러가지 종류의 멀티디스크를 동시에 사용하는 것도 물론 가능합니다. 예를 들어 3개의 200 GB 하드 드라이브를 멀티디스크에 사용할 때, 각 디스크에 100 GB 파티션이 두개씩 있다고 할 때, 각 3개 디스크의 첫번째 파티션들을 RAID0로 묶고 (빠른 300GB 비디오 편집 파티션) 나머지 3개 파티션을 (2개 활성, 1개 예비) RAID1으로 (/home에 사용할 안정성 높은 100GB 파티션) 사용할 수 있습니다.

원하는 대로 멀티디스크 장치를 만든 다음에, mdcfg에서 마치기를 선택하고 partman으로 돌아가 새로 만든 멀티디스크 장치에 파티션을 만들고 마찬가지로 마운트 위치와 같은 속성을 부여할 수 있습니다.

6.3.2.3. 논리 볼륨 관리자 (LVM) 설정하기

시스템 관리자나 “고급” 사용자 입장에서 컴퓨터를 사용한다면, 어떤 디스크 파티션이 (보통 가장 중요한 파티션) 공간이 부족하고 다른 파티션은 공간이 남아서 데이터를 옮기고 심볼릭 링크를 걸고 하는 등의 작업으로 상황을 해결해야 했던 경험이 있을 것입니다.

이러한 상황을 피하려면, 논리 볼륨 관리자(LVM, Logical Volume Manager)를 사용할 수 있습니다. 간단히 말해 LVM을 사용하면 여러 파티션들을 (물리 볼륨) 하나의 가상 디스크로 (볼륨 그룹) 합칠 수 있고, 그걸 다시 가상 파티션으로 (논리 볼륨) 나눌 수 있습니다. 중요한 점은 논리 볼륨이 (그리고 그 밑에 있는 볼륨 그룹이) 여러 개의 물리 파티션에 걸쳐 있을 수 있다는 점입니다.

기존의 160GB /home 파티션에 용량이 더 필요하다면, 300GB 디스크를 컴퓨터에 붙이고, 이 디스크를 현재 볼륨 그룹에 포함시키고, /home이 들어 있는 논리 볼륨 크기를 늘리면 됩니다. 그러면 파티션은 460GB가 되어 남는 공간이 더 생깁니다. 물론 이 예는 너무 간단하게 설명한 것입니다. 아직 읽지 않으셨다면 LVM HOWTO를 참고하십시오.

-"debian-installer의 LVM 설정은 아주 간단하고 partman 안에서 지원합니다. 먼저 LVM의 물리 볼륨으로 사용할 파티션을 표시합니다. 이 작업은 파티션 설정 메뉴에서 용도: LVM의 물리 볼륨을 선택합니다.

partman 주화면으로 돌아간 다음, 논리 볼륨 관리자 (LVM) 설정이라는 옵션이 새로 나타납니다. 이 옵션을 선택하면, 파티션 테이블에 변경 사항들을 (있으면) 확인하고, 그 다음에 LVM 설정 메뉴가 나타납니다. 그 메뉴 위에 LVM 설정의 요약이 나타납니다. 메뉴는 상황에 따라 사용할 수 있는 동작만 표시합니다. 가능한 동작은:

  • 설정 내역 보기: LVM 장치 구조, 이름, 논리 볼륨의 크기 등을 표시합니다

  • 볼륨 그룹 만들기

  • 논리 볼륨 만들기

  • 볼륨 그룹 지우기

  • 논리 볼륨 지우기

  • 볼륨 그룹 늘이기

  • 볼륨 그룹 줄이기

  • 마치기: partman 주화면으로 돌아갑니다

메뉴에서 이 옵션을 이용해 볼륨 그룹을 만들고 그 안에 논리 볼륨을 만드십시오.

partman 주화면으로 돌아간 다음, 보통 파티션과 마찬가지로 방금 만든 논리 볼륨이 나타납니다. (또 보통 파티션과 마찬가지 방법으로 이용하면 됩니다.)

6.3.2.4. 암호화 볼륨 설정하기

debian-installer에서 암호화 파티션을 설정할 수 있습니다. 암호화된 파티션에 파일을 쓰면 즉시 암호화된 형태로 장치에 저장됩니다. 암호화된 데이터에 접근하려면 파티션을 처음에 만들 때 사용한 열쇠글을 입력해야 합니다. 이 기능은 노트북이나 하드 드라이브를 도난 당했을 때 비밀 데이터를 보호하기 위해 사용합니다. 훔친 사람은 하드 드라이브에 물리적으로는 접근할 수 있지만, 올바른 열쇠글을 모르면 하드 드라이브의 데이터는 임의의 문자로 보입니다.

암호화해야 할 가장 중요한 두 파티션은 데이터가 들어 있는 홈 파티션과, 동작중에 비밀 데이터가 저장될 수도 있는 스왑 파티션입니다. 물론, 그 외에 하고 싶은 파티션을 암호화할 수 있습니다. 예를 들어 메일 서버나 인쇄 서버가 데이터를 저장하는 /var라던지, 여러가지 임시 파일을 저장해 둘 수도 있는 /tmp를 암호화할 수 있습니다. 어떤 사람들은 전체 시스템을 암호화하기도 합니다. 암호화하지 말아야 하는 한 가지 예외는 /boot 파티션으로, 암호화한 파티션에서 커널을 읽어들이는 건 현재 불가능합니다.

참고

암호화한 파티션은 암호화하지 않은 경우보다 성능이 떨어집니다. 매번 읽고 쓸 때마다 암호화하고 암호화를 해제해야 하기 때문입니다. 성능 저하 정도는 CPU 속도, 암호화 방법 및 키 길이에 달려 있습니다.

암호화를 사용하려면, 파티션 메뉴에서 빈 공간을 선택해서 새 파티션을 만들어야 합니다. 다른 방법은 기존 파티션을 (예를 들어, 일반 파티션이나 LVM 논리 볼륨이나 RAID 볼륨) 선택하는 것입니다. 파티션 설정에서, 용도: 옵션에서 암호화할 물리 볼륨 메뉴를 선택해야 합니다. 그러면 메뉴가 해당 파티션에 대한 몇 가지 암호화 옵션이 나오도록 바뀝니다.

debian-installer는 몇 가지 암호화 방법을 지원합니다. 기본 방법은 dm-crypt이고 (최근의 리눅스 커널에 포함되어 있고 LVM 물리 볼륨을 사용할 수 있습니다), 다른 방법은 loop-AES입니다 (오래된 방법으로, 리눅스 커널 트리와 별도로 관리됩니다). 다르게 할 특별한 이유가 없다면, 기본값을 사용하길 권합니다.

먼저 암호화 방법으로 디바이스 매퍼 (dm-crypt)를 선택했을 때 옵션을 봅니다. 마찬가지로 무언가 의심스러우면 기본값을 사용하십시오. 기본값은 이미 보안을 염두에 두고 결정되어 있습니다.

암호화: aes

이 옵션은에서는 암호화 알고리즘을 (싸이퍼 (cipher)) 선택할 수 있습니다. 이 알고리즘은 파티션의 데이터를 암호화하는 데 사용합니다. debian-installer는 현재 다음 블록 싸이퍼를 지원합니다: aes, blowfish, serpent, 그리고 twofish입니다. 각 알고리즘이 얼마나 좋은지 설명하는 건 이 문서의 범위를 벗어난 것이지만, 어느 것을 결정할 지 도움이 되는 조언을 하면, 2000년에 미국 표준 기술 연구소에서 21세기에 비밀 정보를 보호할 알고리즘으로 AES를 선택했습니다.

키 크기: 256

여기서는 암호화 키의 길이를 지정합니다. 키의 크기가 크면, 보통 그 암호화의 강력함이 더 증가합니다. 반면에 키의 길이를 늘리면, 성능에 안 좋은 영향을 줍니다. 사용할 수 있는 키의 크기는 싸이퍼에 따라 다릅니다.

IV 알고리즘: cbc-essiv:sha256

초기화 벡터 (Initialization Vector) 혹은 IV 알고리즘은 암호화 기법에서 같은 키의 일반 텍스트 (clear text)이 항상 유일한 암호화된 텍스트 (cipher text)를 만들도록 합니다. 이렇게 하면 공격하는 사람이 암호화된 데이터에 반복된 패턴을 통해 정보를 알아내지 못하게 됩니다.

사용할 수 있는 여러 가지 방법 중에서, 기본값인 cbc-essiv:sha256이 알려진 공격 방법에서 현재 가장 위험이 적은 방법입니다. 다른 방법은 예전에 설치한 (새 알고리즘을 사용할 수 없는) 시스템과의 호환성을 유지할 때만 사용하십시오.

암호화 키: 열쇠글

여기서 이 파티션의 암호화 키 종류를 선택합니다.

열쇠글

나중에 입력하게 되는 열쇠글을 기준으로 암호화 키를 계산합니다[7]

랜덤한 키

암호화한 파티션을 불러올 때마다 임의의 데이터를 만들어서 새 암호화 키를 만듭니다. 다시 말해: 컴퓨터를 끌 때마다 키가 메모리에서 지워지면서 파티션에 들어 있는 데이터를 잃어버립니다. (물론 가능한 키를 모두 입력해서 추측해 낼 수 있지만, 해당 싸이퍼 알고리즘에 무언가 알려지지 않은 약점이 있지 않는한 그렇게 무작정 추측하는 건 평생 해도 다 못 합니다.)

랜덤한 키는 스왑 파티션에 주로 사용합니다. 열쇠글을 기억할 필요도 없고 컴퓨터를 끌 때 스왑 파티션에 들어 있는 비밀 정보를 지울 필요가 없기 때문입니다. 하지만, 이렇게 하면 최근의 리눅스 커널에 들어 있는 “디스크에 저장하는 절전” 기능을 사용하지 못하게 됩니다. 나중에 부팅할 때 스왑 파티션에 저장된 데이터를 복구할 방법이 없기 때문입니다.

데이터 지우기:

파티션에 암호화를 설정하기 전에 임의의 데이터로 채워 넣을 지 결정합니다. 이렇게 하지 않으면 공격자가 파티션의 어느 부분을 사용하고 있고, 어느 부분을 사용하지 않는지 알아챌 수 있기 때문에 이렇게 하기를 권장합니다. 또 예전에 설치한 데이터를 복구하기 어렵게 만듭니다[8].

암호화 방식: 루프백 (loop-AES)를 선택하면, 메뉴가 다음 옵션이 나오도록 바뀝니다:

암호화: AES256

loop-AES는 dm-crypt와 다르게 싸이퍼와 키 크기 옵션이 같이 들어 있습니다. 그러므로 둘을 동시에 설정합니다. 싸이퍼와 키 크기에 대한 자세한 설명의 위 부분을 참고하십시오.

암호화 키: 키파일 (GnuPG)

여기서 이 파티션의 암호화 키 종류를 선택할 수 있습니다.

암호화키 파일 (GnuPG)

암호화 키는 설치할 때 임의의 데이터에서 만들어 냅니다. 또 이 키를 GnuPG로 암호화합니다. 그러므로 키를 사용하려면 올바른 열쇠글을 입력해야 합니다. (이 과정의 뒤부분에서 열쇠글을 물어봅니다.)

랜덤한 키

위의 랜덤한 키에 대한 부분을 참고하십시오.

데이터 지우기:

위의 데이터 지우기에 대한 부분을 참고하십시오.

암호화 파티션에 원하는 파라미터를 선택했으면, 주 파티션 메뉴로 돌아갑니다. 이제 암호화된 볼륨을 설정라는 새 메뉴 항목이 생깁니다. 이 항목을 선택하면, 데이터 지우기로 표시한 파티션을 지울 지 및 기타 동작에 대한 (파티션 테이블을 쓰기 등) 확인 질문을 합니다. 파티션의 크기가 크면 시간이 좀 걸릴 수 있습니다.

그 다음에 열쇠글을 사용한다고 표시한 파티션에 대해 열쇠글을 입력합니다. 좋은 열쇠글은 8글자보다 길고, 영문자와 숫자와 기타 문자가 섞여 있고, 사전에 들어 있는 일반적인 단어가 들어 있으면 안 되고, 본인의 개인 정보에서 쉽게 유추할 수 있으면 (생일, 취미, 애완동물 이름, 가족이나 친척 이름 등) 안 됩니다.

주의

열쇠글을 입력하기 전에, 키보드를 올바르게 설정해서 원하는 문자가 입력되도록 해야 합니다. 잘 모르겠으면, 두 번째 가상 콘솔로 바꿔서 프롬프트에서 미리 글자를 타이프해 보면 알 수 있습니다. 그래야 나중에 설치할 때 AZERTY 키보드 배치로 입력했던 열쇠글이 QWERTY 키보드 배치에서 맞지 않는다든지 하는 일이 없습니다. 이런 상황은 여러가지 원인때문에 일어날 수 있습니다. 설치할 때 키보드 배치를 바꾸었거나, 루트 파일시스템의 열쇠글을 입력할 때 아직 예전에 사용했던 키보드 배치를 설정하지 못한 상태일 경우입니다.

암호화 키를 만드는 데 열쇠글 외의 방법을 사용한다면, 그 암호화 키를 이제 만들게 됩니다. 현재 설치 상태에서는 충분한 양의 엔트로피를 얻지 못했을 수도 있기 때문에, 키를 만드는 데 오래 걸릴 수 있습니다. 엔트로피를 만들어 내면 이 과정을 좀 더 빠르게 할 수 있습니다. 예를 들어서 키를 마구 누른다든지, 두 번째 가상 콘솔로 가서 쉘로 바꾼 다음에 네트워크와 디스크를 사용한다던지 (파일 내려받기, 큰 파일을 /dev/null로 보낸다든지 등) 하면 됩니다. 이 과정을 암호화할 모든 파티션에 대해서 반복합니다.

주 파티션 메뉴로 돌아오면, 암호화한 파티션이 일반 파티션과 똑같이 설정할 수 있게 보입니다. 다음의 예제는 두 개의 볼륨입니다. 첫 번째는 dm-crypt로 암호화되었고, 두 번째는 loop-AES로 암호화되었습니다.

암호화한 볼륨 (sda2_crypt) - 115.1 GB 리눅스 device-mapper
     #1 115.1 GB  F ext3

루프백 (loop0) - 515.2 MB AES256 keyfile
     #1 515.2 MB  F ext3

이제 해당 볼륨을 가리킬 마운트 위치를 지정하고 (기본값이 마음에 들지 않으면) 파일 시스템 종류를 설정하십시오.

한가지 메모해야 할 사항이 있습니다. 괄호 안에 들어 있는 ID와 (이 경우 sda_crypt0loop0) 각 암호화 볼륨에 지정한 마운트 위치입니다. 나중에 새 시스템으로 부팅할 때 이 정보가 필요합니다. 일반 부팅 과정과 암호화를 사용하는 부팅 과정의 다른 점은 뒤의 7.2절. “암호화 볼륨 마운트하기”에서 설명합니다.

파티션 방법이 마음에 들면, 설치를 계속하십시오.

6.3.3. 시스템 준비하기

파티션 작업이 끝난 후 설치 프로그램은 시스템을 설정할 때 필요한 정보를 얻기 위해 질문은 몇 가지 더 할 것입니다.

6.3.3.1. 시간대 설정

설치를 시작할 때 선택한 지역에 따라 그 지역에 해당하는 시간대의 목록을 볼 수도 있습니다. 해당하는 시간대가 하나 뿐이라면 시스템은 그 시간대를 자동으로 선택합니다.

6.3.3.2. 시계 설정하기

설치 프로그램에서 컴퓨터의 시계가 UTC로 설정되어 있는 지를 물어보기도 합니다.설치 프로그램은 다른 운영체제가 설치되어 있는 지 등을 확인해서 UTC로 설정되어있는 지를 알아 봅니다. 이 경우 이 질문을 하지 않을 수도 있기 때문입니다.

전문가 모드에서는 항상 UTC로 설정되어 있는 지를 선택할 수 있습니다.

참고로 설치 프로그램은 컴퓨터 시계의 시간을 직접 변경하지 못합니다. 시계의 시간이 잘못 설정되었거나 UTC가 아니었을 경우 설치를 모두 마친 후에 변경할 수 있습니다.

6.3.3.3. 사용자 및 열쇠글 설정

6.3.3.3.1. root 열쇠글 설정

root 계정은 또한 super-user라고도 불리웁니다. 이 계정은 시스템의 모든 보안상 보호들을 통과할 수 있습니다. root 계정은 시스템 관리를 수행하기 위해서만 사용되어야 하며, 가능한한 짧은 시간 동안만 사용되어야 합니다.

만드는 어떤 암호라도 적어도 6자이상 이고, 대문자와 소문자 특수 문자 등이 포함되는 것이 좋습니다. root 열쇠글을 설정할 때는 계정 권한이 막강하기 때문에 좀 더 주의를 기울여 주십시오. 사전에 나와있는 단어나 추측할 수 있는 개인 정보의 사용은 피하시길 바랍니다.

어떤 사람이 root 열쇠글을 말해 달라고 한다면, 극히 조심하시길 바랍니다. 하나의 시스템의 관리자가 여러 명인 경우가 아니라면, 보통의 경우에 root 열쇠글을 알려주어서는 안됩니다.

6.3.3.3.2. 일반 사용자 만들기

시스템은 이 시점에서 일반 사용자 계정을 만들 것인지를 물어볼 것입니다. 이 계정은 주로 사용하는 개인 로그인 계정입니다. 일상적인 사용이나 개인 로그인에서 root 계정을 사용하면 안됩니다.

root 권한의 사용을 피하는 이유 중 하나는 root로는 복구하기 힘든 손상을 주기가 매우 쉽기 때문입니다. 다른 이유로는 수퍼유저의 권한을 이용해 숨어서 시스템의 보안을 침해할 수 있는 프로그램인 트로이목마 프로그램을 실행하도록 속을 수 있기 때문입니다. 유닉스 시스템 관리에 대한 좋은 책들은 이 주제에 대해 좀 더 자세하게 다룰 것입니다. 만일 처음 접하는 것이라면 이에 대한 책을 한 권 정도 읽어 보십시오.

먼저 전체 이름을 입력하고, 사용자 계정으로 사용할 이름을 입력합니다. 사용자 계정으로 일반적으로 성이나 이와 유사한 어떤 것을 사용하면 충분하고, 실제로 성이 기본 값이 될 것 입니다. 마지막으로 이 계정에 대한 열쇠글을 입력하십시오.

설치 후 어느 때에 다른 계정을 만들기를 원한다면, adduser 명령을 사용하십시오.

6.3.4. 베이스 시스템 설치하기

이 단계는 문제가 발생할 가능성이 가장 낮은 단계이지만, 설치할 때 베이스 시스템 전체를 내려받고 확인한 다음, 압축을 풀어야 하기 때문에 가장 많은 시간을 소모하는단계이기도 합니다. 컴퓨터가 느리거나 네트워크 연결이 느리다면 시간이 좀 걸릴 수 있습니다.

베이스 시스템 설치 중에 꾸러미를 풀고 설정하면서 나오는 메세지는 tty4에서 표시합니다. 이 터미널은 왼쪽 Alt-F4을 누르면 이용할 수 있습니다. 설치 프로그램 화면으로 돌아가려면 왼쪽 Alt-F1을 누르십시오.

베이스 시스템을 설치할 때 압축을 풀고/설정하는 메세지는 /var/log/syslog 파일에 저장합니다. 시리얼 콘솔을 통해서 설치하는 경우에는 이 파일을 확인해 보면 됩니다.

설치 과정의 하나로 리눅스 커널을 설치합니다. 기본 우선순위로에서는 하드웨어에 가장 맞는 커널을 하나 선택합니다. 우선순위가 낮은 모드에서는, 사용 가능한 여러가지 커널 중에서 하나를 선택할 수 있습니다.

6.3.5. 추가적인 소프트웨어를 설치하기

베이스 시스템이 모두 설치되었으면 시스템을 사용할 수는 있지만 아직 사용하는데 부족할 것입니다. 사용자들은 대부분 시스템에 소프트웨어를 설치하여 기호나 필요에 따라 시스템을 조작하고자 하며, 설치 프로그램에서도 이 기능을 지원하고 있습니다. 컴퓨터나 네트워크가 느릴 경우 베이스 시스템을 설치하는 것보다 오래 걸릴 수 있습니다.

6.3.5.1. apt 설정하기

Debian GNU/Linux에서 꾸러미를 설치할 때 쓰는 프로그램의 하나는 apt 꾸러미에 있는 apt-get입니다. [9] aptitudesynaptic 등의 꾸러미 관리 프로그램도 사용하는 사람이 많으며 이 프로그램들은 apt-get에 의존합니다. 처음 사용자들은 뒤에 언급한 프로그램을 사용하길 권장합니다. 꾸러미 찾기 기능이나 상태 확인 등의 기능을 사용자 인터페이스에 내장하고 있기 때문입니다. 실제로 aptitude를 꾸러미 관리에 사용하길 권장합니다.

apt는 꾸러미를 가져올 위치를 알고 있어야 합니다. 설치 프로그램은 사용하는 설치 미디어에 따라 꾸러미 위치를 대부분 자동으로 설점해줍니다. 설정 결과는 /etc/apt/sources.list에 기록되며 설치 과정이끝난 후 이 파일의 내용을 살펴보고 수정할 수 있습니다.

6.3.5.2. 소프트웨어를 선택하고 설치하기

설치 과정 도중 소프트웨어를 추가로 설치할 수 있는 기회가 있습니다. 이 단계는 17550 개의 꾸러미 중에서 꾸러미를 일일이 선택하기보다 미리 정해진 소프트웨어의 묶음을 선택하고 설치하는 것에 초점을 두고 있습니다. 컴퓨터의 설치를 최대한 빨리 마쳐서 다양한 용도로 사용할 수 있도록 하기 위해서 입니다.

따라서 먼저 태스크를 선택하고, 개별 꾸러미는 나중에 추가하는 순서를 밟습니다. 태스크는 “데스크탑 환경”라든지 “웹서버”, “프린트 서버[10] 등 컴퓨터로 할 수 있는 작업을 어느 정도 나타냅니다. D.2절. “태스크마다 필요한 디스크 공간”에서 각 태스크마다 필요한 공간을 볼 수 있습니다.

참고로 설치하고 있는 컴퓨터의 특성에 따라 미리 선택된 태스크가 있는 경우도 있습니다. 이 선택 내역을 변경하고자 하면 태스크의 선택을 해제할 수 있습니다. 이시점에서 태스크를 하나도 선택하지 않을 수도 있습니다.

참고

데스크탑 환경” 작업은 그놈 데스크탑 환경을 설치합니다. 설치 프로그램에 있는 옵션으로는 KDE같은 다른 데스크탑 환경을 선택할 수 없습니다.

미리 설정을 사용하거나 (B.4.11절. “꾸러미 선택” 참고), 부팅 프롬프트에 tasks="standard, kde-desktop"이라고 추가하면 설치 프로그램에서 KDE를 설치할 수 있습니다. 하지만 이렇게 하더라도 KDE에 필요한 꾸러미가 실제로 있는 경우에만 동작합니다. 전체 CD 이미지를 사용해서 설치하는 경우에는, KDE 꾸러미는 첫 번째 CD에 없기 때문에 KDE 꾸러미는 미러 사이트에서 내려 받습니다. DVD 및 기타 설치 미디어를 사용하는 경우에는 이 방법이 잘 동작합니다.

여러가지 서버 태스크는 대략 다음과 같은 소프트웨어를 설치합니다. DNS 서버: bind9; 파일 서버: samba, nfs; 메일 서버: exim4, spamassassin, uw-imap; 인쇄 서버: cups; SQL 데이터베이스: postgresql; 웹 서버: apache.

태스크들을 선택했다면, 확인을 선택하십시오. 그러면 aptitude는 해당 태스크에 들어 있는 꾸러미를 설치할 것입니다.

참고

설치 프로그램의 표준 사용자 인터페이스에서 스페이스바를 이용하여 태스크를 선택하고 선택을 해제할 수 있습니다.

특히 데스크탑 태스크는 매우 크므로 주의해야 합니다. 일반 CD-ROM과 함께 CD-ROM에 없는 꾸러미가 들어 있는 미러를 같이 쓰는 경우에는, 네트워크에서 수많은 꾸러미를 받아와야 할 수도 있습니다. 인터넷 연결이 느린 경우에는 받아오는 데 오랜 시간이 걸릴 수도 있습니다. 꾸러미 설치가 일단 시작되면 취소하는 방법은 없습니다.

꾸러미가 CD-ROM 안에 들어 있는 경우에도, CD-ROM에 들어 있는 것보다 미러에 있는 꾸러미의 버전이 최신일 경우에는 미러에 있는 꾸러미를 받아 옵니다. 안정 버전 배포판을 설치하는 경우에는 주로 포인트 릴리스를 (안정 버전 릴리스 업데이트) 한 다음에 이런 일이 발생합니다. 테스팅 배포판을 설치하는 경우에는 오래된 CD 이미지를 사용한 경우 이런 일이 발생합니다.

tasksel로 선택한 꾸러미는 모두 apt-getdpkg에서 차례로 내려받고 압축을 풀고 설치를 합니다. 사용자에게서 필요한 정보가 있을 경우 도중에 사용자에게 질문하기도 합니다.

6.3.6. 시스템을 부팅 가능하게 만들기

디스크 없는 워크스테이션에 설치하는 경우에는, 로컬 디스크에서 부팅하는 건 물론 전혀 가능한 방법이 아니므로 이 단계는 건너 뜁니다.

6.3.6.1. 다른 운영 체제 찾기

설치 프로그램은 부트로더를 설치하기 전에 컴퓨터에 설치되어 있는 다른 운영체제가 있는 지 찾아봅니다. 부트로더가 지원하는 운영 체제가 있으면 부트로더를 설치하는 단계에서 알려 주고, 데비안 부팅 외에 추가로 이 다른 운영체제를 부팅할 수 있도록 설정할 것입니다.

한 컴퓨터에서 여러 개의 운영 체제를 부팅하는 건 아직도 매우 복잡한 기술입니다. 다른 운영체제를 자동으로 찾아내고 부트로더를 설정하는 건 아키텍처마다 다르고, 서브 아키텍처마다도 다릅니다. 동작하지 않으면 부트로더의 문서에서 더 자세한 사항을 찾아보십시오.

6.3.6.2. 부트로더 없이 계속

이 옵션은 부트로더를 설치하지 않았지만 설치를 마칠 때 사용할 수 있습니다. 이렇게 하는 경우는 아마도 해당 아키텍처나 서브 아키텍처에 부트로더가 없거나, 부트로더가 필요없는 경우일 (예를 들어 기존 부트로더를 사용) 것입니다.

부트로더를 수동으로 설정하려면, /target/boot에 설치한 커널의 이름을 확인해야 합니다. 또 이 디렉토리에 initrd가 있는 지 확인하고, 있으면 아마도 부트로더가 그 initrd를 사용하도록 해야 할 것입니다. 그 외에 필요한 정보는 / 파일 시스템으로 사용하려는 디스크 및 파티션을 알아야 하고, /boot가 별도 파티션이면 /boot 파일시스템의 디스크 및 파티션도 알아야 합니다.

6.3.7. 설치 마치기

다음은 새 데비안 시스템을 다시 시작하기 전에 할 마지막 작업입니다. 대부분은 debian-installer를 정리하는 작업들입니다.

6.3.7.1. 설치 마치기 및 다시 시작하기

데비안 설치 과정의 첫번째에서 제일 마지막 단계입니다. 설치 프로그램을 부팅할 때 사용했던 부팅 미디어를 (CD, 플로피 등) 빼라는 말이 나옵니다. 여기서 남은 작업을 다 마친 다음에, 새로 설치한 데비안 시스템으로 다시 시작합니다.

6.3.8. 기타

여기에 목록이 나와 있는 구성 요소는 일반적인 설치 과정과는 상관이 없습니다. 하지만 백그라운드에서 기다리면서 잘못된 부분이 있을 때 도움이 됩니다.

6.3.8.1. 설치 로그 저장

설치가 성공적이었으면, 설치할 때 만든 로그 파일은 새 데비안 시스템의 /var/log/installer/ 파일에 자동으로 저장합니다.

주 메뉴에서 디버깅용 기록 저장을 선택하면 로그 파일을 플로피 디스크나 네트워크, 하드디스크 등등의 미디어에 저장할 수 있습니다. 설치 도중 심각한 문제가 발생했을 경우 다른 시스템에서 로그를 분석하거나, 로그를 설치 보고서에 첨부할 때 유용합니다.

6.3.8.2. 쉘 사용하기 및 로그 보기

설치하는 도중에 쉘을 실행하려면 여러가지 방법이 있습니다. 대부분의 시스템에서 시리얼 콘솔로 설치하는 게 아니라면, 가장 쉬운 방법은 왼쪽 Alt-F2를 눌러[11] (맥 키보드에서는 Option-F2) 두 번째 가상 콘솔로 전환하는 것입니다. 왼쪽 Alt-F1을 누르면 설치 프로그램으로 다시 돌아올 수 있습니다.

콘솔을 전환할 수 없다면, 주 메뉴의 쉘 실행 항목을 이용해도 쉘을 시작할 수 있습니다. 설치 프로그램으로 돌아오려면 exit를 입력해서 쉘을 닫으십시오.

이 시점에서는 램디스크에서 부팅했기때문에, 제한적인 유닉스 유틸리티만 사용할 수 있습니다. 어떤 프로그램이 있는지는 ls /bin /sbin /usr/bin /usr/sbin 명령 및 help를 입력해서 알 수 있습니다. 쉘은 ash이라고 하는 본 쉘 호환 쉘이고 자동완성이나 히스토리같은 훌륭한 기능도 일부 들어 있습니다.

파일을 편집하거나 파일을 보려면, nano 텍스트 편집기를 사용하십시오. 설치 시스템의 로그 파일은 /var/log 디렉토리 안에 들어 있습니다.

참고

쉘에서는 사용할 수 있는 명령어로 무엇이든 할 수 있는 게 사실이지만, 쉘을 사용하는 옵션은 사실 뭔가 잘못된 경우에 대비해서 혹은 디버깅용으로 만들어 놓은 것입니다.

쉘에서 수동으로 무언가를 할 경우에 설치 과정이 방해를 받아서 오류가 발생하거나 설치를 끝마치지 못할 수도 있습니다. 특히 스왑 파티션을 활성화하는 기능은 설치 프로그램에서 알아서 하도록 놔두고 쉘에서 직접 하지 않도록 하십시오.

6.3.8.3. 네트워크를 통해 설치

재미있는 구성 요소 중의 하나로 network-console이 있습니다. 설치 작업의 많은 부분을 네트워크 SSH을 통해 수행하게 되어 있습니다. 네트워크를 사용해야 하기 때문에 최소한 네트워크 설정하기까지의 맨 처음 설치 작업은 콘솔에서 해야 합니다. (이 부분은 4.4절. “자동 설치”에 따라 자동화할 수 있습니다.)

이 구성 요소는 주 설치 메뉴에는 기본으로 읽어들이지 않기 때문에, 이 구성 요소를 읽어들이라고 지정해야 합니다. CD에서 설치하는 경우에는 중간 우선 순위로 설치하거나 주 설치 메뉴가 나타나면 CD에서 설치 프로그램 구성 요소를 읽어들이기을 선택하고 network-console: SSH을 사용해 원격에서 설치하기 추가 구성 요소를 선택합니다. 성공적으로 읽어들이면 SSH을 사용해 원격에서 설치하기 메뉴 항목이 새로 생깁니다.

새로 생긴 이 항목을 선택한 다음에, 설치 시스템에 연결하는데 사용할 새 열쇠글을 입력하게 됩니다. 여기까지 하면 installer 사용자로 방금 입력한 열쇠글을 이용해 원격에서 로그인할 수 있는 방법을 알려주는 화면을 표시합니다. 이 화면의 또 다른 중요한 정보는 시스템의 핑거프린트입니다. 이 핑거프린트를 “시스템을 원격에서 설치할 사람에게” 안전하게 전달해야 합니다.

로컬에서 설정을 계속하려고 마음을 바꾸었다면, 언제든지 Enter를 눌러서 주 메뉴로 돌아갈 수 있습니다. 주 메뉴에서 다른 구성 요소를 선택하면 됩니다.

이제 네트워크의 다른 한 편으로 가서 할 일입니다. 먼저 필요한 일은, 터미널을 UTF-8 인코딩을 쓰도록 설정하는 일입니다. UTF-8 인코딩이 설치 시스템에서 사용하는 인코딩입니다. UTF-8으로 설정하지 않아도 원격 설치가 가능하지만 창의 테두리라던지, 읽을 수 없는 ASCII가 아닌 문자처럼 표시가 깨질 수도 있습니다. 설치 시스템에 연결하려면 간단히 다음과 같은 명령을 사용하면 됩니다:

$ ssh -l installer install_host

여기서 install_host는 설치할 컴퓨터의 이름이나 IP 주소입니다. 실제로 로그인하기 전에 원격 시스템의 핑거프린트가 표시될 것이고, 이 핑거프린트가 올바른 지 확인해야 합니다.

참고

여러 컴퓨터를 모두 설치하는 경우에 IP 주소 혹은 호스트 이름이 같은 경우, 그런 호스트는 ssh에서 연결을 거부합니다. 그 이유는 핑거프린트가 다르기 때문이고, 핑거프린트가 다르다는 건 스푸핑 공격의 징조입니다. 스푸핑이 아니라고 확신하는 경우, ~/.ssh/known_hosts에서 해당 줄을 지우고 다시 연결하면 됩니다.

로그인한 다음에 최초 화면이 나오면 거기에서 메뉴 시작쉘 시작 중의 하나를 선택할 수 있습니다. 전자의 경우는 설치 프로그램의 주 메뉴로 가게 되고, 거기에서 로컬에서와 마찬가지로 설치 작업을 계속할 수 있습니다. 후자는 쉘을 실행해서 원격 시스템을 살펴보고 문제점을 수정할 수 있습니다. 설치 메뉴는 한 개의 SSH 세션만 열어야 합니다. 하지만 쉘의 경우에는 여러 개를 열어도 됩니다.

주의

SSH을 통해 원격으로 설치를 시작하면, 다시 로컬 콘솔로 돌아가서 설치를 하면 안 됩니다. 그렇게 하면 새로 설치할 시스템에 있는 설정들을 망가뜨릴 수 있습니다. 설정들이 망가지면 설치가 실패하거나 새로 설치한 시스템에 여러가지 문제가 발생할 수 있습니다.

또 SSH 세션을 X 터미널에서 실행하는 경우 연결이 끊어질 수도 있으므로 창 크기를 바꾸지 말아야 합니다.



[4] 기술적인 용어로: 해당 언어에 대해 여러 개 국가 코드가 붙어 있는 로케일이 존재하는 경우.

[5] 설치 프로그램에서 LVM 볼륨 그룹을 256비트 AES 키를 이용해 암호화하고 커널의 “dm-crypt” 기능을 사용합니다.

[6] 물론 물리적으로 한 개의 드라이브에 있는 여러개의 파티션에서 멀티디스크 장치를 만들 수도 있겠지만, 그렇게 해 봤자 좋은 점이 전혀 없습니다.

[7] 열쇠글을 키로 사용한다는 건 현재는 파티션을 LUKS로 설정한다는 뜻입니다.

[8] 하지만 몇몇 3글자로 된 기관들의 사람들은 광자기 미디어를 몇번쯤 다시 쓴다고 해도 데이터를 복구할 수 있다고 믿고 있습니다.

[9] 참고로 꾸러미를 실제로 설치하는 프로그램은 dpkg입니다. 하지만 이 프로그램은 저수준 도구에 가깝습니다. apt-get은 고수준 도구로, 필요할 때 dpkg를 스스로 실행합니다. apt-get은 꾸러미를 CD, 네트워크 등 어디에서 가져올 지 판단합니다. 또 설치하려는 꾸러미가 제대로 동작하기 위해 필요한 다른 꾸러미들까지 자동으로 설치합니다.

[10] 설치 프로그램은 이 목록을 출력할 때 tasksel를 사용하는 것 뿐이라는 것을 아시기 바랍니다. tasksel는 시스템 설치를 끝낸 다음에도 언제든지 실행하여 꾸러미를 설치하고 제거할 수 있습니다. tasksel 외에도 aptitude처럼 더 세세히 설치/제거를 하는 프로그램을 사용할 수도 있습니다. 설치를 모두 마친 후 특정 꾸러미를 찾고자 한다면 aptitude install 꾸러미을 입력하시면 됩니다. 이 때 꾸러미란 찾고자 하는 꾸러미의 이름을 뜻합니다.

[11] 스페이스 바 왼쪽에 있는 Alt 키와 펑션 키의 F2를 동시에 누르는 걸 말합니다.