[리눅스]파티션 설계
Linux 학습, 기초 과정: 하드 디스크 레이아웃
하드 디스크 파티션 계획
Linux&(R) 시스템 상의 디스크에 대한 파티션 레이아웃 디자인 방법을 학습합니다. 본 기사의 자료를 활용하여 Linux 시스템 관리자 인증을 위한 LPI 기초 과정 시험에 대비한 공부를 하거나, 단순히 흥미로 배울 수도 있습니다.
개요
이 기사에서는 Linux 시스템을 위한 디스크 파티셔닝 레이아웃을 디자인하는 방법을 학습한다. 구체적인 내용은 다음과 같다.
- 파일 시스템을 할당하고 공간을 스왑하여 파티션이나 디스크 분리
- 시스템의 사용 목적에 따른 맞춤형 디자인
- 시스템을 부팅할 수 있는지 확인
이 기사는 Linux Professional Institute의 Junior Level Administration(LPIC-1) 시험 기초 과정의 Topic 102에서 Objective 102.1에 대비하는 데 도움이 된다. 이 목적의 가중치는 2이다.
주: 이 기사에서는 주로 레이아웃 계획에 대해 다룬다. 구현 절차는 Topic 104를 다룬 기사들을 참조한다(series roadmap에 설명되어 있음).
전제 조건
본 시리즈에 수록된 기사를 최대한 활용하려면 Linux에 대한 기본적인 지식과 이 기사에서 다루는 명령을 실습할 수 있는 Linux 시스템이 있어야 한다. 때때로 같은 프로그램이라도 버전이 다르면 출력 형식이 다르므로, 실습 결과가 이 기사에서 보여주는 Listing 및 그림과 항상 정확히 같지는 않을 수도 있다.
파일 시스템 개요
Linux 파일 시스템에는 디스크나 디렉토리에 있는 다른 블록 스토리지 장치에 배열된 파일이 들어 있다. 다른 많은 시스템과 마찬가지로, Linux 시스템 상의 디렉토리에는 서브디렉토리라는 다른 디렉토리가 포함될 수 있다. 다른 드라이브 문자(A:, C: 등)에 별개의 파일 시스템이 있는 개념으로 구성되는 Microsoft&(R) Windows&(R) 같은 시스템과는 달리, Linux 파일 시스템은 / 디렉토리를 루트 디렉토리로 가진 단일 트리이다.
파일 시스템이 단지 하나의 큰 트리라면 디스크 레이아웃이 뭐가 그리 중요한지 의아할 것이다. 실제로는 하드 드라이브 파티션, CD-ROM 또는 플로피 디스크와 같은 각각의 블록 장치에 파일 시스템이 있다. 마운트 지점이라는 트리 내의 한 지점에 있는 다른 장치들에 파일 시스템을 마운트하여 파일 시스템에 대한 단일 트리 뷰를 만든다.
일반적으로, 커널은 어떤 하드 드라이브 파티션에 파일 시스템을 /로 마운트함으로써 이 마운트 프로세스를 시작한다. 다른 하드 드라이브 파티션을 /boot, /tmp 또는 /home으로 마운트할 수도 있다. 예를 들어, 파일 시스템을 플로피 드라이브에는 /mnt/floppy로, CD-ROM에는 /media/cdrom1로 마운트할 수 있다. NFS와 같은 네트워크 파일 시스템을 사용하여 다른 시스템에서 파일을 마운트할 수도 있다. 다른 유형의 파일 마운트도 있지만, 이 유형으로 프로세스에 대한 개념은 파악할 수 있다. 마운트 프로세스에서는 실제로 어떤 장치에 파일 시스템을 마운트하지만 간단히 "장치를 마운트한다"고 말하는 것이 일반적이며, 이 말은 곧 "장치에 파일 시스템을 마운트한다"는 의미로 통한다.
이제, 방금 루트 파일 시스템(/)을 마운트했는데 마운트 지점 /media/cdrom에 CD-ROM인 /dev/sr0을 마운트하려는 경우를 생각해보자. 마운트 지점에 CD-ROM을 마운트하기에 앞서 우선 해당 마운트 지점이 존재해야 한다. CD-ROM을 마운트하면 CD-ROM 상의 파일과 서브디렉토리가 /media/cdrom과 그 이하의 경로에 있는 파일과 서브디렉토리가 된다. 이미 /media/cdrom에 있었던 모든 파일이나 서브디렉토리는 여전히 마운트 지점 /media/cdrom에 포함된 블록 장치에 있지만 더 이상 볼 수 없다. CD-ROM이 마운트 해제되면 원본 파일과 서브디렉토리를 다시 볼 수 있게 된다. 따라서 마운트 지점으로 사용할 목적으로 만든 디렉토리에 다른 파일을 넣지 않도록 주의하여 이런 문제가 생기지 않게 해야 한다.
표 1은 FHS(Filesystem Hierarchy Standard)에서 필수적인 디렉토리를 나타낸 것이다(FHS에 대한 자세한 내용은 참고자료 참조).
디렉토리 | 설명 |
bin | 필수 명령 2진 파일 |
boot | 부트 로더의 정적 파일 |
dev | 장치 파일 |
etc | 특정 호스트에 적합한 시스템 구성 |
lib | 필수 공유 라이브러리 및 커널 모듈 |
media | 이동식 매체용 마운트 지점 |
mnt | 파일 시스템을 임시로 마운트하기 위한 마운트 지점 |
opt | 추가 기능 애플리케이션 소프트웨어 패키지 |
sbin | 필수 시스템 2진 파일 |
srv | 이 시스템에서 제공하는 서비스를 위한 데이터 |
tmp | 임시 파일 |
usr | 보조 계층 구조 |
var | 변수 데이터 |
파티션
첫 번째 SCSI 드라이브는 보통 /dev/sda이다. 이전의 Linux 시스템에서 첫 번째 IDE 하드 드라이브는 /dev/hda이다. 직렬 연결된 (SATA) IDE 드라이브의 등장과 함께, PATA/SATA 혼합 시스템에서는 때때로 첫 번째 PATA 드라이브에 대해서는 /dev/hda, 첫 번째 SATA 드라이브에 대해서는 /devsda를 사용한다. 그 이후에 나온 신형 시스템에서는 모든 IDE 드라이브의 이름이 /dev/sda, /dev/sdb 등으로 지정되었다. IDE 드라이브의 이름 변경은 최초로 USB 드라이브를 지원한 핫플러그 시스템의 결과다. 핫플러그 덕분에 새 장치를 플러그인하는 즉시 사용할 수 있으며, 현재 핫플러그는 장치가 시스템에 내장되어 있든 USB 또는 Firewire(IEEE 1394)를 사용하여 작동 중인 시스템에 나중에 플러그인하든 다른 유형의 연결을 하든 상관없이 모든 장치에 사용된다.
일반적으로, 하드 드라이브는 512바이트 섹터로 포맷된다. 헤드를 움직이지 않고 읽을 수 있는 디스크 플래터 상의 모든 섹터가 트랙을 구성한다. 디스크에는 보통 둘 이상의 플래터가 있다. 헤드를 움직이지 않고 읽을 수 있는 다양한 플래터 상의 트랙 콜렉션을 실린더라고 한다. 하드 드라이브의 구조는 실린더 수, 실린더당 트랙(또는 헤드) 수, 트랙당 섹터 수로 표현된다. 이 기사를 쓰는 현재, 드라이브 제조업체들은 4K 섹터를 가진 디스크를 출시하기 시작하고 있다. 파일 시스템에서 여전히 512바이트 섹터로 받아들이는 경우, 파티션이 4K 경계에 있는 섹터에서 시작하지 않으면 성능이 저하될 수 있다.
PC 시스템에 있는 DOS 운영 체제에서 사용되는 실린더, 헤드 및 섹터에 대해 가능한 크기에 대한 제한으로 BIOS 변환 구조 값이 생겼고, 이로 인해 더 큰 하드 드라이브가 지원될 수 있다. 결국, 이런 방법들도 충분치 못했다. 보다 최근에 이루어진 디스크 드라이브 기술의 발전으로 논리적 블록 주소 지정(LBA)으로 이어졌고, 이에 따라 CHS 구조 측정의 중요성이 떨어지고 현대적 디스크의 구조는 실제의 물리적 섹터 레이아웃과 거의 또는 아무런 관계가 없을 수도 있다. 오늘날 사용 중인 대용량 디스크들은 섹터 번호를 위해 최대 48비트까지 예약해서 LBA48이라고 알려진 LBA로까지 확장되었다.
하드 드라이브 상의 공간은 파티션으로 분리된다(파티션된다). 파티션은 겹칠 수 없다. 파티션에 할당되지 않는 공간을 여유 공간이라고 한다. 파티션에는 /dev/hda1, /dev/hda2, /dev/hda3, /dev/sda1 등의 이름이 있다. IDE 드라이브는 IDE 드라이브를 위한 핫플러그 지원을 이용하지 않는 시스템에서는 파티션 수가 63개로 제한된다. 핫플러그가 지원되는 SCSI 드라이브, USB 드라이브 및 IDE 드라이브는 파티션 수가 15개로 제한된다. 파티션은 종종 실린더의 총 개수로 할당된다(실린더에 대한 부정확한 개념을 바탕으로 함).
서로 다른 두 파티셔닝 프로그램에서 명목 디스크 구조를 다르게 이해하는 경우, 한 파티셔닝 프로그램이 다른 파티셔닝 프로그램에서 만든 파티션에 오류가 있거나 문제 발생 가능성이 있는 것으로 보고할 수 있다. 특히 BIOS 기능이 서로 다른 두 시스템 간에 디스크를 이동하는 경우에도 이런 종류의 문제가 발생할 수 있다.
parted 또는 fdisk 도구를 사용하면 Linux 시스템에서 명목 구조를 볼 수 있다. 이전 버전의 Linux 시스템에서는 /proc 파일 시스템, /proc/ide/hda/geometry와 같은 파일, 최신 버전의 시스템에는 없을 수도 있는 파일에서 구조를 보고하기도 했다. Listing 1은 fdisk 명령을 사용하여 SATA가 연결된 IDE 하드 드라이브의 파티션과 구조를 표시하는 방법을 나타낸 것이다. fdisk의 -v 매개변수로 버전을 확인할 수 있다. 파티션 테이블을 표시하거나 조작하려면 여기에 나타낸 것처럼 루트 사용자이거나 sudo를 통해 루트 권한을 가지고 있어야 한다.
Listing 1. 하드 디스크 구조
ian@attic4:~$ fdisk -v
fdisk (util-linux-ng 2.16)
ian@attic4:~$ sudo fdisk /dev/sdb
[sudo] password for ian:
The number of cylinders for this disk is set to 30401.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): p
Disk /dev/sdb: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000404d6
Device Boot Start End Blocks Id System
/dev/sdb1 1 25 200781 83 Linux
/dev/sdb2 26 12965 103940550 83 Linux
/dev/sdb3 12966 30401 140054670 83 Linux
Command (m for help):
Listing 1에서 fdisk를 통해 실린더 1024의 끝을 나타내는 명목 위치에 대한 경고가 인쇄된다는 점을 유심히 살펴보자. 실린더 1024는 BIOS가 디스크의 첫 1024개의 실린더 내에 완전히 자리를 잡고 있는 파티션만 부팅할 수 있는 일부 이전 시스템에서 중요하다. LBA 지원 기능이 없는 BIOS나 일부 이전 부팅 매니저에서 이런 경고가 인쇄된다. 한계가 존재할 수 있다는 점은 인식해야겠지만, 이는 보통 현대식 시스템에서 나타나는 문제는 아니다.
fdisk와 -u 옵션을 사용하여 섹터 내 유닛을 표시하거나 대화식 모드에서 u 하위 명령을 사용하여 섹터와 실린더 간에 전환할 수 있다. parted 명령에서는 여러 가지 다른 유닛을 지원한다. Listing 2는 Listing 1에서 사용한 것과 같은 디스크에 대해 parted에서 다른 유닛을 사용하는 것을 나타낸 것이다.
Listing 2. parted에서 다른 유닛 사용
ian@attic4:~$ sudo parted /dev/sdb
[sudo] password for ian:
GNU Parted 1.8.8.1.159-1e0e
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) help u
unit UNIT set the default unit to UNIT
UNIT is one of: s, B, kB, MB, GB, TB, compact, cyl, chs, %, kiB, MiB,
GiB, TiB
(parted) p
Model: ATA HDT722525DLA380 (scsi)
Disk /dev/sdb: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 206MB 206MB primary ext3
2 206MB 107GB 106GB primary ext4
3 107GB 250GB 143GB primary ext3
(parted) u s
(parted) p
Model: ATA HDT722525DLA380 (scsi)
Disk /dev/sdb: 488397168s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 63s 401624s 401562s primary ext3
2 401625s 208282724s 207881100s primary ext4
3 208282725s 488392064s 280109340s primary ext3
(parted) u chs
(parted) p
Model: ATA HDT722525DLA380 (scsi)
Disk /dev/sdb: 30401,80,62
Sector size (logical/physical): 512B/512B
BIOS cylinder,head,sector geometry: 30401,255,63. Each cylinder is 8225kB.
Partition Table: msdos
Number Start End Type File system Flags
1 0,1,0 24,254,62 primary ext3
2 25,0,0 12964,254,62 primary ext4
3 12965,0,0 30400,254,62 primary ext3
(parted)
parted 및 fdisk 출력으로 표시되는 시작 실린더와 종료 실린더 사이의 명백한 차이점은 parted는 실린더 계수를 0부터 시작하지만 fdisk는 1부터 계수하기 시작한다는 사실로 인한 것이다. Listing 3은 fdisk의 시작 및 종료 섹터가 parted와 같음을 나타낸 것이다.
Listing 3. 시작 및 종료 섹터 번호 확인
ian@attic4:~$ sudo fdisk -ul /dev/sdb
Disk /dev/sdb: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x000404d6
Device Boot Start End Blocks Id System
/dev/sdb1 63 401624 200781 83 Linux
/dev/sdb2 401625 208282724 103940550 83 Linux
/dev/sdb3 208282725 488392064 140054670 83 Linux
ian@attic4:~$ echo $(( 208282725 / 255 / 63 ))
12965
파티션 유형
IDE 드라이브에는 기본, 논리 및 확장 파티션이라는 세 가지 유형의 파티션이 있다. 파티션 테이블은 디스크의 MBR(Master Boot Record)에 있다. MBR은 디스크 상의 첫 번째 섹터이므로, 파티션 테이블이 디스크의 매우 큰 부분을 차지하지는 않는다. 따라서 디스크에 있는 기본 파티션의 수는 4개로 제한된다. 그런 일이 자주 있겠지만, 5개 이상의 파티션이 필요할 때는 기본 파티션 중 하나가 대신 확장 파티션이 되어야 한다.
확장 파티션은 단순히 하나 또는 대개의 경우 그 이상의 논리 파티션을 위한 컨테이너일 뿐이다. 이런 파티셔닝 스킴은 원래는 MS DOS와 PC DOS에서 사용되었는데, 이를 통해 DOS, Windows 또는 Linux 시스템에서 PC 디스크를 사용할 수 있다. 한 디스크에는 확장 파티션이 하나만 포함될 수 있다. 데이터는 확장 파티션 내부의 논리 파티션에 저장된다. 우선 확장 파티션 내에 논리 파티션부터 만들어야 확장 파티션에 데이터를 저장할 수 있다.
Linux에서는 기본 또는 확장 파티션을 1에서 4까지 번호를 지정하므로, dev/sda에는 4개의 기본 파티션, 즉 /dev/sda1, /dev/sda2, /dev/sda3 및 /dev/sda4가 있을 수 있다. 또는 기본 파티션 /dev/sda1 하나와 확장 파티션 /dev/sda2가 있을 수도 있다. 논리 파티션이 정의되어 있는 경우 이 파티션은 5부터 시작해서 번호가 지정되므로, 디스크에 기본 파티션이 없고 확장 파티션(/dev/sda1)만 하나 있더라도 /dev/sda에서 첫 번째 논리 파티션은 /dev/sda5가 된다. 따라서 IDE 드라이브에 5개 이상의 파티션을 원하는 경우 파티션 번호 하나는 확장 파티션에 내주게 될 것이다. IDE 드라이브에서 이론적인 최대 파티션 수는 이제 핫플러그를 포함한 커널에 대해 15개로 제한되지만, 마지막 몇 개를 만들거나 만들지 못할 수 있다. 한 드라이브에서 12개를 넘는 파티션을 사용할 계획이라면 모든 것이 올바로 작동할 수 있는지 조심스럽게 확인한다.
앞서 제시한 예제들에 사용되는 디스크에는 3개의 기본 파티션이 있으며, 이들은 전부 Linux용으로 포맷되어 있다. 두 기본 파티션에서 ext3 파일 시스템을 사용하고, 나머지 한 기본 파티션에서는 ext4를 사용한다. Listing 4는 Ubuntu 9.10 시스템에 기본, 확장 및 논리 파티션이 있는 내부 드라이브와 Fedora 12 시스템에 연결된 USB 드라이브에 대해 parted 명령 p를 사용하여 얻은 출력 결과를 나타낸 것이다. 다른 파일 시스템 유형에 유의한다. 또한, 명령행에서 하나 이상의 parted 명령을 지정하면 대화식 모드를 피할 수 있다.
Listing 4. parted로 파티션 테이블 표시
ian@attic4:~$ sudo parted /dev/sda u s p
[sudo] password for ian:
Model: ATA WDC WD6401AALS-0 (scsi)
Disk /dev/sda: 1250263728s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 63s 2040254s 2040192s primary ext3
2 2040255s 22523129s 20482875s primary linux-swap(v1)
4 22523130s 1250258624s 1227735495s extended boot
5 22523193s 167397299s 144874107s logical ext3
6 167397363s 310761359s 143363997s logical ext3
7 310761423s 455442749s 144681327s logical ext3
8 455442813s 600092009s 144649197s logical ext3
[root@echidna ~]# parted /dev/sdc p
Model: WD My Book (scsi)
Disk /dev/sdc: 750GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 135GB 135GB primary fat32 lba
2 135GB 750GB 616GB extended
5 135GB 292GB 157GB logical ext3
6 292GB 479GB 187GB logical ext3
7 479GB 555GB 76.5GB logical ext3
8 555GB 750GB 195GB logical ext3
디스크 공간 할당
앞서 언급했듯이, Linux 파일 시스템은 /에 루트가 있는 단일 대형 트리이다. 플로피 디스크나 CD-ROM 상의 데이터를 마운트해야 하는 이유는 아주 명백하지만, 하드 드라이브에 저장된 데이터의 분리를 고려해야 하는 이유는 아마 덜 분명할 것이다. 파일 시스템을 분리해야 하는 몇 가지 합당한 이유는 다음과 같다.
&- 부트 파일. 부팅 시 BIOS 또는 부트 로더에서 일부 파일에 액세스할 수 있어야 한다.
&- 다중 하드 드라이브. 일반적으로 각각의 하드 드라이브는 하나 이상의 파티션으로 나뉘며, 각 파티션에는 파일 시스템 트리의 어느 지점에서는 마운트해야 하는 파일 시스템이 있다.
&- 공유 가능한 파일. 여러 시스템 이미지가 실행 가능 프로그램 파일과 같은 정적 파일을 공유할 수 있다. 사용자 홈 디렉토리나 메일 스풀 파일 같은 동적 파일도 공유될 수 있으므로, 사용자는 네트워크 상의 여러 시스템 중 어느 하나에 로그인하고 계속 같은 홈 디렉토리와 메일 시스템을 사용할 수 있다.
&- 오버플로우 가능성. 파일 시스템이 용량의 100%까지 가득 찰 수 있는 경우, 일반적으로 시스템을 실행하는 데 필요한 파일에서 이것을 분리하는 것이 좋은 방법이다.
&- 할당량. 할당량에 따라 사용자나 그룹이 파일 시스템에서 차지할 수 있는 공간의 양이 제한된다.
&- 읽기 전용 마운트. 저널링 파일 시스템이 등장하기 전에는 시스템 충돌 후 파일 시스템 복구에 오랜 시간이 걸렸었다. 따라서 (실행 가능 프로그램의 디렉토리와 같이) 거의 변경되지 않은 파일 시스템은 시스템 충돌 후 이를 확인하느라 시간을 낭비하지 않도록 읽기 전용으로 마운트할 수 있었다.
지금까지 다룬 파일 시스템의 용도 외에, 디스크 상의 할당 스왑 공간도 고려할 필요가 있다. Linux 시스템의 경우, 이 공간은 보통 하나의 전용 파티션이거나 여러 개의 전용 파티션일 수도 있다.
선택
최소한 하나 이상의 하드 드라이브가 있는 시스템을 설정하여 하드 드라이브에서 부팅하려는 경우를 생각해보자. (이 기사에서 LAN을 통해 부팅되는 디스크 없는 워크스테이션에 대한 설정이나 라이브 CD 또는 DVD Linux 시스템을 사용하기 위한 고려사항을 다루지는 않는다.) 이후에 파티션 크기를 변경하는 것도 가능하겠지만, 이를 위해서는 보통 약간의 작업이 필요하므로 미리 올바로 선택하는 것이 중요하다. 이제 시작해 보자.
첫 번째 고려사항은 시스템을 부팅할 수 있을 것인지 확인하는 것이다. 일부 이전 시스템의 경우, BIOS가 디스크의 첫 1024개의 실린더 내에 온전히 있는 파티션에서만 부팅할 수 있는 제한이 있다. 그런 시스템을 가지고 있다면 시스템 부팅에 필요한 키 파일을 보유하고 있을 /boot로 결국 마운트될 파티션을 반드시 만들어야 한다. 이들 파일이 로드된 후, Linux 시스템은 디스크의 작업을 인계받고 1024 실린더 한계가 시스템의 추가 작업에는 영향을 주지 않게 된다. /boot용 파티션을 만들어야 하는 경우에는 보통 약 100MB로 충분하다.
다음으로는 필요한 스왑 공간의 양을 고려해야 할 것이다. 현재의 메모리 가격을 고려할 때, 스왑 공간은 매우 느린 보조 메모리라 할 수 있다. 한 가지 일반적인 경험칙은 실제 RAM과 같은 용량의 스왑 공간을 만드는 것이었다. 지금은 워크스테이션에 알맞게 실제 RAM의 1배 또는 2배로 구성하기를 원할 수 있으므로, RAM 용량이 고갈되지 않고 여러 개의 큰 프로그램을 사용할 수 있다. 이들 프로그램 간의 전환 속도가 느리더라도, 아마 주어진 시간에 한두 개의 프로그램에서만 작업할 것이다.
또한, 메모리가 매우 작은 시스템에는 큰 스왑 공간을 사용하는 것이 좋다. 서버의 경우 다른 값을 권장하는 애플리케이션을 실행하는 것이 아니라면 RAM의 절반 정도에 해당하는 스왑 공간을 사용하면 된다. 어떤 경우든, 필요할 때 실제 RAM을 추가하거나 다른 서버에 워크로드를 분배할 수 있도록 서버 메모리 사용량을 모니터해야 한다. 지나치게 많은 스와핑이 서버에서 좋은 경우는 거의 없다. 스왑 파일을 사용할 수 있지만, 전용 파티션의 성능이 더 낫다.
이제 확산 지점에 이르렀다. 개인용 워크스테이션 사용이 서버 사용보다 예측 가능성이 훨씬 떨어지는 경향이 있다. 필자의 환경 설정, 특히 새 사용자에 대한 환경 설정은 대부분의 표준 디렉토리(/usr, /opt, /var 등)를 단일 대용량 파티션에 할당하는 것이다. 이것은 특히 무엇이 설치될 것인지 완전히 알지 못할 수도 있는 새 사용자에게 유용하다. 그래픽 데스크탑과 적당한 수의 개발 도구를 실행 중인 워크스테이션에는 5GB 이상의 디스크 공간과 사용자 요구에 맞는 공간이 필요할 것이다. 더 큰 몇몇 개발 도구에는 각각 수 기가바이트가 필요할 수 있다. 필자는 보통 운영 체제당 40GB-60GB 정도를 할당하고 디스크의 나머지 공간은 다른 애플리케이션을 로드할 수 있도록 남겨둔다.
서버 워크로드가 더 안정적일 것이며, 특정 파일 시스템의 공간이 부족해지면 더욱 치명적인 결과가 발생할 것이다. 따라서 이런 워크로드를 위해, 일반적으로 아마 하드웨어 또는 소프트웨어 RAID 또는 논리 볼륨 그룹을 사용하여 파티션을 여러 개 만들고 여러 디스크에 이들 파티션을 분산할 것이다.
특정 파일 시스템 상의 워크로드와 해당 파일 시스템을 여러 시스템 간에 공유할지, 아니면 한 시스템에서만 사용할지 여부도 고려하고 싶을 것이다. 경험, 용량 계획 도구 및 예상 성장률을 종합적으로 이용해 자신의 시스템에 최상의 할당량을 결정할 수 있다.
워크스테이션이나 서버의 구성 여부에 상관없이, 로컬 드라이브에 있는 각 시스템에 대해 고유한 파일을 가지고 있을 것이다. 일반적으로, 시스템 매개변수에 대한 /etc, 부팅 중 필요한 파일에 대한 /boot, 부팅 또는 시스템 복구에 필요한 파일에 대한 /sbin, 루트 사용자의 홈 디렉토리에 대한 /root, 잠금 파일에 대한 /var/lock, 실행 중인 시스템 정보에 대한 /var/run, 이 시스템의 로그 파일에 대한 /var/log가 포함된다. 사용자 홈 디렉토리에 대한 /home, /usr, /opt, /var/mail 또는 /var/spool/news 같은 다른 파일 시스템은 설치 요구와 환경 설정에 따라 별개의 파티션에 있거나 네트워크 마운트될 수 있다
'02.서버-Linux' 카테고리의 다른 글
[리눅스]시스템 정보 확인 (0) | 2012.12.19 |
---|---|
[리눅스]랜카드 속도와 전송모드 변경 (0) | 2012.12.19 |
[리눅스]패키지 업데이트 (0) | 2012.12.19 |
[리눅스]고급 커맨드 2 (0) | 2012.12.19 |
[리눅스]고급 커맨드 1 (0) | 2012.12.19 |