강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

리눅스서버 구축관리방법에 관한 연구

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스서버 구축관리방법에 관한 연구




본 연구과제는 리눅스 서버설치시에 필요한 기반지식들을 습득하고, 리눅스서버운영관리에 필요한 기초지식들을 습득하는 것을 목적으로하는 연구과제이다.









제작자 : 리눅스포털 수퍼유저(www.linux.co.kr) 박성수




----- 목차 ------

단계 1 : 리눅스 부팅디스크를 넣은 후에 시스템전원을 넣는다.
단계 2 : Red Hat Linux 설치 환영화면
단계 3 : Language Selection
단계 4 : Keyboard Selection
단계 5 : Mouse Selection
단계 6 : Installation Type
단계 7 : Disk Partition Setup
단계 8 : Boot Loader Configuration
단계 9 : Network Configuration
단계 10 : Hostname Configuration
단계 11 : Firewall Configuration(방화벽 설정)
단계 12 : Language Support (지원언어 설정)
단계13 : Default Language (기본사용언어 설정)
단계 14 : Time Zone Selection
단계 15 : Root Password
단계 16 : Add User
단계 17 : User Account Setup
단계 18 : Authentication Configuration
단계 19 : Package Group Selection
단계 20 : Individual Package Selection(개별패키지 선택)
단계 21 : Installation to begin
단계 22 : Formatting Partition
단계 23 : Package Installation
단계 24 : Bootdisk          ** 리눅스 설치디스켓과 부팅디스켓 **
단계 25 : Compelete
단계 26 : System Rebooting




















단계 1 : 리눅스 부팅디스크를 넣은 후에 시스템전원을 넣는다.




리눅스 부팅디스크를 넣은 후에 시스템을 부팅합니다. 만약, 부팅디스켓이 없다면 리눅스 CD-ROM으로 부팅하기 위해 시스템의 ROM-BIOS(SETUP모드)에서 CD-ROM부팅을 선택한 후에 시스템을 부팅하셔도 됩니다.

PIC171.gif

참고로 부팅디스켓을 만드는 방법에 대해서는 뒤에서 자세히 설명됩니다. 다음은 리눅스 설치 초기화면입니다. 리눅스를 설치하는 방법에는 여러가지가 있습니다. 리눅스 설치CD없이 네트웍을 통해서 설치를 할 수도 있으며 NFS를 이용하여 설치를 할 수도 있습니다.  FTP를 이용한 네트웍설치는 이장의 뒷편에 설명하겠습니다.

우선 여기서는 CD설치 방법에 대해서 설명을 드릴 것입니다. 그럼 일반적인 설치모드로 설치하기 위해서 아래 화면과 같이 "text"라는 문자를 입력합니다.

PIC172.gif

Text : 가장 일반적인 설치모드. 텍스트기반의 설치모드, PNP의 기능이 지원됨.

lowres : 낮은 해상도의 설치모드.

nofb : 프레임버퍼모드(FrameBuffer Mode)를 사용하지않는 모드.

Expert : H/W를 자동인식하지 않으며, 사용자가 직접 선택하게되므로, 완전한 전문가나 H/W의 전문가가 사용하는 설치모드

Linux rescue : 리눅스 복구시에 사용함, 리눅스 boot디스크와 rescue디스크가 필요함.

Linux dd : 특정 H/W에 요구되는 드라이브를 지정하여 설치할 경우 사용.

"아나콘다(Anaconda)"란 무엇인가요?

리눅스 설치화면초기에 설치모드를 선택한 후에 "anaconda"단어가 뜨면서 한참을 대기하고 있는 것을 보셨을 것입니다. "Anaconda"란 남미산의 큰 구렁이를 뜻하는 말이며 보아뱀의 일종이기도 합니다. "아나콘다"라는 영화도 나왔었지요.

그러나 여기서 의미하는 "Anaconda"라는것은 리눅스설치를 그래픽환경에서 가능하도록 지원하기위한 그래픽설치환경을 의미한다고 보시면 됩니다. 즉, GUI환경으로 리눅스를 설치하는 것이라고 간단히 표현할 수 있습니다.  즉, 그래픽 설치환경의 이름으로 "Anaconda"를 사용하고 있는 것이지요.

리눅스 가상콘솔(Linux Virtual Console)

리눅스 가상콘솔의 용도는 설치시의 용도와 설치가 된 리눅스 서버에서의 의미는 조금 다릅니다. 설치시의 가상콘솔 5개는 각각 그 역할이 다음과 같이 정해져 있습니다.

Alt+F1 : 실제 진행되는 설치화면을 보여줌.

Alt+F2 : 쉘프롬프트를 보여주며 필요한경우 명령어입력이 가능함.

Alt+F3 : 설치진행중인 로그를 보여줌.

Alt+F4 : 커널로그(Kernel Log)를 보여줌

Alt+F5 : 기타 메시지


즉 설치를 하는동안 설치화면을 보여주는 역할(Alt+F1)을 하는 가상콘솔이 첫번째이며, 두번째(ALT+F2) 가상콘솔은 설치하는 중간에도 쉘프롬프트를 보여주면서 명령어 사용이 가능합니다.  세번째(ALT+F3) 가상콘솔은 설치하고 있는 리눅스서버의 설치로그를 보여줍니다. 네번째(ALT+F4) 가상콘솔은 Kernel로그를 보여주며, 다섯번째((ALT+F5) 가상콘솔은 기타 다른 메세지를 보여주는 역할을 합니다.

설치가 되어 있는 리눅스서버에서의 가상콘솔은 터미널역할을 해주는 것이 목적입니다. 즉, 동시에 어떤 작업을 진행해야 할 경우에 ALT+F1, ALT+F2, ALT+F3....이런 방법으로 여러개의 콘솔을 다른 목적으로 사용이 가능합니다.  리눅스 서버가 설치되어 있다면 ALT+F1을 누르고, 또 ALT+F2를 눌러서 여러개의 가상콘솔을 직접 사용해 보십시요.

리눅스를 부팅시켜서 처음 나오는 login창의 콘솔화면이 가상콘솔 1번이며 리눅스는 기본적으로 6개까지의 가상콘솔을 제공하고 있습니다.

단계 2 : Red Hat Linux 설치 환영화면

다음은 레드햇리눅스 설치를 시작한다는 환영화면입니다.

PIC173.gif


단계 3 : Language Selection

설치과정에서 사용할 언어를 선택합니다. 한국어지원을 원하는 리눅스를 사용하기를 원하신다면 레드햇리눅스 한글버전을 사용해 보시기 바랍니다. 여기서는 가장 일반적인 언어인 "English"를 선택합니다. 아시겠지만 리눅스설치완료 후에 사용할 언어가 아닌 설치시에 설치화면에서 사용할 언어를 선택하는 것입니다.

PIC174.gif

참고로, 레드햇 설치프로그램에서는 각 항목들간의 이동은 "TAB"키로 이동할 수 있습니다. "English"를 선택한 후에 "TAB"키를 누르면 "OK"로 이동하게 됩니다. 이후부터의 항목들간 이동은 "TAB"키를 이용하시면 됩니다. 그리고 항목내에서의 이동은 화살표키를 이용하시면 됩니다.

단계 4 : Keyboard Selection

설치할 시스템에 장착된 키보드모드를 선택합니다. "us"를 선택한 후에 "TAB"키로 "OK"로 이동한 후에 엔터키를 치면 다음으로 넘어갑니다.

PIC175.gif

키보드의 선택은 설치완료 후에 "kbdconfig"라는 명령어로 재선택이 가능합니다.

단계 5 : Mouse Selection

설치완료 후에 "mouseconfig"라는 명령어를 실행하여  재설정이 가능합니다.

PIC176.gif

사용할 마우스의 타입을 선택할 수 있는 단계입니다.  "Emulate 3 Buttons?"라는 선택옵션의 의미는 일반적인 서버의 마우스에는 보통 3개의 선택버튼이 있지만 두개의 버튼을 가진 마우스를 사용할 경우에 3버튼마우스의 효과를 내기위하여  2버튼마우스의 버튼두개를 동시에 누르는 결과와 동일하게 사용하도록 지원하는 옵션입니다.


단계 6 : Installation Type

설치할 모드를 선택합니다. 설치할 모드의 선택은 상황에 맞게 정확히 선택을 해주셔야합니다. 아래의 5가지 설치모드에 대한 설명을 드리겠습니다. 단지 여기서는 가장 자세한 설치모드인 아래 화면과 같이 "Custom"을 선택하도록 합니다. 이 설치모드를 선택하시면 대부분의 설정을 직접 해주셔야합니다.

PIC177.gif

Workstation (워크스테이션)개인용 워크스테이션으로 PC용도로 사용할 경우에 선택합니다. 이 모드를 선택하면 GNOME이나 KDE등과 같은 X윈도우를 설치하게되며  기존에 사용중인 리눅스관련 파티션을 찾아낸 후 삭제해 버립니다. 그런 다음 가장 알맞은 파티션으로 재조정하게 됩니다. 하지만 리눅스와 관련되지 않은 파티션(ex, FAT, NTFS등)은 손대지 않습니다.

Server (서버)서버용도로 사용할 경우에 선택하는 모드입니다. 이 모드를 선택하면 기존의 모든 파티션(윈도우파티션포함)을 찾아서 삭제한 후에 서버용도에 맞게 파티션을 새로 생성합니다. 리눅스를 가장쉽게 서버용도로 설치할 수 있는 모드입니다.

Laptop(랩탑)

노트북등의 휴대용 컴퓨터에 설치할 경우에 선택하십시오.

Custom (커스텀)가장많이 사용하는 모드로 설치에 필요한 리눅스 파티션과 필요한 모든 설정을 사용자가 직접해 주어야합니다. 가능한 이 모드로 설치하기를 권해드리며, H/W나 Linux의 이해도를 높이는 방법이기도 합니다. 이 모드에서는 SCSI어뎁터를 검색하여 찾아주게됩니다. 우리는 서버용도로 설치를 할 것이며 설치모드 또한 이 모드로 설치를 할 것입니다. 따라서 "Install Custom System"을 선택해 주십시오.

Upgrade Existing System(업그레이드)현재 사용중인 리눅스를 새로운 버전으로 업그레이드 할 경우에 선택하십시오.


단계 7 : Disk Partition Setup

이 화면은 하드디스크 파티션을 설정하는 단계입니다. 디스크 파티션을 설정하는 방법은 Autopartition, DISK Druid, FDISK를 이용하는 방법이 있습니다. Autopartition은 현재 설정에 맞는 파티션을 자동으로 설정하는 것입니다. 그리고 DISK Druid는 파티션 설정을 쉽게하기 위해 전화면모드로 설정가능하도록 제공하는 것으로 가장많이 사용되는 파티션 설정 툴입니다. 또한 FDISK는 파티션설정을 fdisk 명령어입력으로 직접하게되므로 다소 까다롭기는 하지만 파티션설정을 가장 자세히 할 수 있다는 점이 특징입니다.

여기서는 "Disk Druid"에 의한 파티션 설정을 설명할 것입니다.

PIC178.gif

Disk Druid를 선택하시면 다음과 같은 파티션 설정화면으로 넘어가게 됩니다.  그리고 아래와 같은 경고(Warning)화면의 의미는 현재 파티션을 새로 설정하게 되면 기존의 데이터가 모두 삭제되므로 파티션 설정의 초기화에 대한 경고를 하고 있는 것입니다. 참고로 만약 현재 여러분께서 설치하고 계신 디스크가 기존에 사용하셨던 디스크이고 중요한 데이터를 사용하고 계셨던 디스크라면 설치를 종료하고 백업부터 받아두시기 바랍니다.

여기서 fdisk를 선택하시면 fdisk로 파티션을 설정할 수 있는 FDISK모드로 들어가게 됩니다.

*참고 : fdisk에 대한 설명은 뒤에서 하게됩니다.

PIC179.gif

아래는 Disk Druid를 이용한 파티션설정 초기화면입니다. 새로운 파티션을 생성하려면 아래 탭들 중 "New"라는 탭을 선택하십시오.


PIC17A.gif

boot파티션 생성

리눅스에 필요한 파티션을 생성할 것입니다. 다음의 파티션들은 굳이 순서를 따질 필요는 없으나 반드시 생성해야하는 파티션은 지금 생성하는 boot파티션과 Swap파티션, 그리고 /(root)파티션입니다. 아래와 같이 boot파티션을 생성하십시오. Boot파티션은 부팅에 관련된 정보를 저장하는 파티션입니다. 즉 booting시에 사용이 되며 너무 크지않게 128MB이하로 설정하시면 됩니다.

PIC17B.gif

boot파티션의 파일시스템을 ext3로 설정했으며 용량은 64MB로 설정하였습니다. 다음은 아래는boot파티션을 생성한 후의 파티션 설정화면입니다.

PIC17C.gif


Swap 파티션 생성

이번에는 Swap 파티션을 생성합니다. 이파티션의 용도는 가상메모리입니다. PC를 포함하여 모든 컴퓨터에는 Swap파티션(가상메모리)이 존재하게 됩니다. 여러 가지 프로그램들을 동시에 실행시키면 물리적인 메모리(RAM)가 부족하게 되며 이런 경우에 가상메모리를 사용하게 됩니다.

일반적인 Swap파티션의 크기는 실제메모리의 2배크기로 잡아주시면 됩니다. 예를 들어 실제메모리(RAM)가 256MB이라면 Swap파티션은 512MB로 설정해 주시고, 실제메모리가 512MB라면 Swap은 1024MB로 잡아주시면 됩니다. 그리고, 파일시스템Type은 반드시 Swap으로 해주셔야 합니다. 참고로 Swap은 꼭 하나의 파티션으로 존재하란 법은 없습니다. 예를 들어 실제메모리(RAM)가 256MB라면 Swap을 256MB 두개로 잡아줄 수도 있으며, 또한 실제메모리(RAM)가 512MB라면 Swap을 512MB두개, 혹은 256MB 4개로 잡아 줄 수도 있습니다. 단, Swap 파티션은 최대 16개까지만 생성이 가능합니다.


PIC17D.gif

/var 파티션생성

이번에는 var 파티션을 생성합니다. 이 파티션의 가장 대표적인 용도는 리눅스서버의 로그파일(messages, secure, maillog, xferlog등) 저장 및 메일의 큐디렉토리 (/var/spool/mqueue, /var/spool/mail등)등 입니다. 물론 보안이나 파티션 용량등의 이유로 이 위치를 다른 곳으로 변경할 수도 있습니다.var파티션은 가능한 넉넉하게 설정하여 주십시오. 대부분 Filesystem Full로 인하여 시스템이 다운되는 경우에는 var파티션에서 발생하는 경우가 대부분입니다. 계속적으로 쌓이는 로그파일들 때문이겠지요. 필자의 경험으로는 Filesystem Full로 인하여 서버장애를 겪었던 가장 흔한 원인은 var 파티션에 저장되는 access_log(RPM으로 설치한 Apache사용의 경우)파일 이였습니다. 따라서 var파티션은 공간확보도 중요하지만 주기적인 점검과 로그파일관리(logrotate등을 이용, 뒤에서 설명됨)를 체계적으로 하는 것이 매우 중요합니다.

PIC17E.gif

PIC17F.gif

/usr 파티션설정

이번에는 usr 파티션을 생성합니다. 이 파티션은 관리자나 일반사용자들의 명령어가 저장되는 곳이며 또한 응용 프로그램들이 설치되는 파티션입니다. 예를 들어 Apache나 Mysql등을 컴파일하여 설치할 경우에는 대부분 /usr/local파티션에 하게 됩니다. 물론 /usr과 /usr/local파티션을 따로 설정할 수도 있습니다.

Usr 파티션 또한 가능한 넉넉하게 설정해 주시는 것이 좋습니다. 선택을 모두 하셨다면 "OK"를 선택합니다. 그러면 다음화면과 같이 usr 파티션이 생성된 것을 보실 수 있습니다.

PIC180.gif

PIC181.gif

/ (root) 파티션 생성

이번에는 /(root) 파티션입니다. 이 파티션의 용도는 시스템에서 사용되는 모든 시스템관련 파일들이 저장되는 곳입니다. 파티션의 크기는 지금껏 지정한 용량외에 남은 모든 사이즈를 사용하게될 것입니다.

Mount Point : /root파티션은 다음 화면과 같이 "/"과 같이 표시해 주시면 됩니다.

PIC182.gif

PIC183.gif

/home 파티션생성

이번에 생성되는 파티션은 home파티션입니다. 이 파티션의 용도는 일반사용자나 가입자의 홈디렉토리입니다. 웹호스팅에서 가입자들이 사용하게 될 파티션이라면 이 파티션의 크기를 심각히 고려하셔야 합니다. 사용자들의 홈디렉토리에는 일반 사용자의 데이터가 저장이 되는 곳이므로 가입자의 유치량에 따라서 그 크기를 고려하셔야 한다는 의미입니다.

(*) Fill all available space여기에 "*" 표시를 하게되면 남은 용량을 모두 지정한 파티션으로 사용하게 됩니다.

PIC184.gif

파티션생성 확인

다음 화면을 보시는 바와같이 설정된 모든 파일시스템들을 나타내고 있습니다. 파티션 설정작업이 끝났으므로 이제 아래의 다섯번째 탭인 "OK"를 선택하고 다음으로 넘어가십시오. "OK"를 선택하시면 지금껏 지정한 파티션을 파티션테이블(Partition table)에 저장할 것인가를 묻습니다. 당연히 "Yes"를 하시면 됩니다. 파티션설정을 저장한다는 의미는 기존의 생성되어 있던 파티션은 모두 삭제되고 여기서 새로 설정한 파티션정보만이 들어가게 됩니다. 또한 기존에 저장되어 있던 데이터들은 모두 날아가(?) 버리게 됩니다.

PIC185.gif

단계 8 : Boot Loader Configuration

리눅스를 부팅시켜주는 리눅스 부트로드를 선택합니다. GRUB과 LILO는 리눅스를 부팅시켜주는 일종의 P/G으로 부트로드(Boot Loader)라는 것입니다. 오래전부터 사용해 왔던 전통적인 부트로드는 LILO이며 윈도우와 기타 다른 운영체제에서도 함께 사용할 수 있는 GRUB은 레드햇7.2부터 리눅스에서도사용가능하게 되어 리눅스 설치시에 둘 중 하나를 부트로드로 선택해야 합니다. 참고로 LILO와 GRUB에 대해서는 이책의 맨 뒷편에 파일시스템 복구와 함께 자세한 설명이 되어 있습니다. 자세한 설명은 그부분을 참조하시기 바랍니다.

PIC186.gif

GRUB을 선택하든 LILO를 선택하든 선택된 부트로드는 MBR(Master Boot Record)이나 First Boot Sector(대부분 root 파티션)에 설치를 할 수 있습니다. MBR은 BIOS에 의해 MEMORY로 자동적재되며 리눅스부팅을 위해 OS를 불러오는 역할을 합니다. MBR을 사용하는 OS는 LINUX, NT, Win2000등이며 WIN95/98에서는 사용하지 않습니다. 따라서 LINUX와 Windows95/98등을 한대의 컴퓨터에 같이 설치할 경우에는 부트로드를 MBR에 설치해야 합니다.

만약 MBR을 사용하는 OS, 즉 NT와 같은 운영체제를 LINUX와 같은 컴퓨터에 설치할 경우에는 부트로드를 First Boot Sector에 설치하십시오. 필자의 견해로 본다면 어차피 리눅스의 부트로드도 윈도우등과 마찬가지로 LILO보다는 GRUB으로 가게 될 것 같아서 필자는 여기서 LILO보다는 GRUB을 선택하도록 하겠습니다.

Boot Loader를 어디에 설치할 것인가를 선택하는 창입니다. "Master Boot Record(MBR)을 선택하시기 바랍니다.

PIC187.gif

PIC188.gif

그리고 Boot Loader가 설치되는 파티션(/dev/hda2)을 기억해 두시기 바랍니다. 아래에서 Edit를 선택하시면 기본부트라벨(Default Boot Label)을 변경할 수 있습니다. 즉 부팅시에 사용할 부팅라벨의 이름을 "RedHat Linux"가 아닌 다른 이름으로 선택가능하다는의미입니다.

PIC189.gif

만약 Boot Loader로 GRUB이 아닌 LILO를 선택하셨다면 LILO의 설정파일은 /etc/lilo.conf 파일 입니다. 이 파일에 보시면 label이라는 항목이 있는데 이것은 리눅스 부팅시의 LILO단계에서 부팅할 커널이미지를 선택할 수 있는 이름입니다. 현재 이 단계의 "Default Boot label"은 기본 부팅레이블로 사용할 이름을 설정하는 것입니다. "linux"라는 기본적인 레이블이 설정이 되어 있지만 이 이름을 변경하고자 한다면 위 그림 가운데에 있는 "Edit"를 선택하시면 변경할 수 있습니다.

다음은 GRUB의 패스워드를 지정하는 것입니다. GRUB은 LILO와 함께서 리눅스에서 사용가능한 부트로드입니다. 이 책의 맨 뒷편에 보시면 "리눅스 서버응급복구"편에 "GRUB"에 대한 자세한 설명이 있습니다. 참고하시기 바랍니다. 여기서는 부트로드인 GRUB의 편집모드로 들어가기 위한 암호설정을 하는 단계입니다. 예전에 LILO에서는 서버 콘솔만 장악하면 누구든 single모드로 부팅하여 root패스워드를 변경하여 서버의 완벽한 조작이 가능했지만 여기서 패스워드를 입력하였다면 GRUB으로 부트로드를 편집할 때에 패스워드를 묻게 됩니다. 암호를 지정하지 않을 수도 있으나 보안상 암호설정을 하시는 것이 좋습니다.

PIC18A.gif


단계 9 : Network Configuration

PIC18B.gif

네트워크환경을 설정하는 곳입니다. 위의 그림에서 보이는 "Network Device : eth0:에서 알 수 있듯이 현재 설정하고 있는 NIC는 eth0가 됩니다.

Use bootp/dhcp : 선택하지 마십시요. ADSL이나 ppp 서비스를 위해 IP Address를 동적으로 할당하기 위한 용도로 사용되는 것입니다.
Activate on boot : 고정 IP를 사용할 경우에 선택하십시오.
IP Address : 이 시스템의 IP Address를 입력합니다.

Netmask : IP주소의 낭비를 최소화 하기위해 IP주소대를 몇 개의subnet으로 분할하여 사용하기 위해 사용됩니다. 목적지 IP주소와 여기서 입력하는 netmask bit값과의 AND연산을 통해 대상 데이터를 어디로 보낼것인가를 결정하게됩니다.

Default gateway (IP) : 다른 네트웍과 통신을 하기위한 Gateway의IP Address를 입력합니다.

Primary nameserver : 도메인 인식을 가능하도록 하기위해 네임서버의 IP Address를 입력합니다.

Secondary nameserver : 서버가 사용할 두번째 네임서버를 설정합니다.

Tertiary nameserver : 서버가 사용할 세번째 네임서버를 설정합니다.

위의 설정항목들과 관련있는 네트워크의 기본이론에 관한 설명은 4장에서 다루었습니다.


단계 10 : Hostname Configuration

설치하고 있는 리눅스서버가 사용할 호스트네임을 입력합니다. 호스트네임을 FQDN(Fully Qualified Domain Name)형식으로 입력합니다.

입력예1: 웹서버 설치시   => www.superuser.co.kr
입력예2: 메일서버 설치시 => mail.superuser.co.kr
입력예3: 네임서버 설치시 => ns.superuser.co.kr 또는 ns2.superuser.co.kr

여기서는 Hostname으로 su1004로 지정하여 "Hostname"항목에 "su1004.superuser.co.kr"을 입력하였습니다.

PIC18C.gif

여기서 입력된 Hostname은 리눅스가 설치되고 난 후에 /etc/HOSTNAME이나 /etc/sysconfig/network등의 파일에 입력되게 됩니다. 즉 설치 후에 서버에서 기본적인 HOSTNAME으로 사용할 이름을 설정하는 것입니다.


단계11 : Firewall Configuration(방화벽 설정)

리눅스서버의 자체방화벽 설정을 하는 단계입니다. 이 설정은 설치 후에 /usr/sbin/lokkit으로 재설정이 가능합니다. 자세한 설명은 "리눅스 서버관리 유틸리티"편에서 자세히 설명될 것이므로 여기서는 간단한 개념정리만 하도록 하겠습니다.

여기서는 보안레벨을 고려해야하는데, 3가지 보안레벨은 다음과 같습니다.

High

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,853 개
  • 현재 접속자 :  92 명