본문 바로가기
Linux

[Linux] 파티션 관리

by oncerun 2020. 11. 18.
반응형

파티션이란 저장 장치에서 고정된 크기의 일부 영역이다. 하나의 물리적 저장 장치에 여러 개의 파티션을 만들 수 있으며, 각 파티션은 자신만의 디바이스 파일을 가고 있다. (예를 들면 /dev/sda....) 

따라서 하나의 파티션을 마치 독립적인 저장 장치처럼 사용할 수 있다.

그렇기에 하나의 물리적인 디스크를 논리적으로 나눈 구역을 파티션이라하며 분할된 파티션을 하나의 독립적인 저장 장치로 사용할 수 있다.

 

하나의 물리적 디스크에서 특정 파티션 영역을 읽기 위해선 운영체제는 먼저 파티션의 위치나 크기에 관한 정보를 알아야 하는데, 이러한 정보는 파티션 테이블에 저장되어 있다.

윈도는 하나의 디스크를 파티션으로 구분하면 C드라이브, D드라이브와 같은 드라이브 이름을 사용한다. 리눅스는 윈도 운영체제와 달리 파티션을 표현할 때 디스크 전체를 표시하는 블록 디바이스 파일의 이름 뒤에 숫자를 붙여 표현한다.

 

예를 들어 SCSI 디스크를 표현하는 이름인 /dev/sda의 뒤에 숫자를 붙여 /dev/sda1 ,/dev/sda2처럼 첫 번째 파티션과 두 번째 파티션을 표현한다.

 

 파티션을 사용하게 될 때 장점은 다음과 같다.

  • 하나의 디스크에서 리눅스와 윈도 운영체제를 별도의 파티션에 설치할 수 있다. 멀티 부팅이 가능하며 필요에 따라 운영체제를 선택하여 부팅할 수 있다.
  • 특정 파티션이 손상되더라도 다른 파티션의 데이터는 보존될 수 있다.
  • 파티션별로 종류가 다른 파일 시스템을 만들 수 있으며 보안, 백업, 파일 시스템 점검 등에서 파티션 별로 다른 정책 설정이 가능하다. 저장되는 파일의 크기를 고려하여 파티션 별로 블록의 크기를 정할 수 있어 공간 효율성이나, 성능을 높일 수 있다.
  • /boot 영역을 별도의 파티션으로 분리하고 특정 파티션만 점검하도록 하면 부팅이 빨라질 수 있다.
  • 시스템 로그나 메일 등이 많이 쌓이는 /var 영역을 별도의 파티션으로 분리하면 루트 파티션의 가용공간이 부족해지는 문제를 방지할 수 있다. 루트 영역의 가용 공간이 줄어들면 프로세스가 중단되거나 새로운 프로세스를 실행할 수 없는 문제가 생길 수 있다.

리눅스에서는 운영체제 및 프로그램과 데이터를 저장하는 마운트 지점이 루트인 표준 리눅스 파티션 외에 추가로 swap 파티션이 필수로 필요하게 된다.

리눅스가 서버로 사용되면 접속하는 클라이언트의 수가 증가하면서 프로세스의 생성이 필요하고 순간적으로 메모리의 사용량이 증가할 수 있는데, 스왑 파티션은 프로그램 실행 시 메모리의 용량 부족을 하드디스크로 대신하기 위한 디스크 공간, 즉 가상 메모리로 사용되는 영역을 말한다.

프로그램은 보조기억장치에 저장되어 있어도 데이터 통신을 위해선 주 기억장치로 이동해 데이터를 사용하는데 가상 메모리는 보조 기억장치를 주 기억장치처럼 사용할 수 있는 방법이다. 

 

파티션 관리 도구

 

이러한 점을 보완하고자 요즘엔 GPT를 지원한다.

리눅스에서 사용되는 파티션 관리 도구로는 다음과 같은 것이 있다.

 

1) parted : MBR과 GPT를 모두 지원하는 텍스트 기반의 대화식 도구

2) gparted : parted의 그래픽 버전

3) fdisk : 리눅스에서 사용되던 텍스트 기반의 전통적 파티션 관리 도구로 GPT는 지원하지않음

4) gdisk : fdisk와 유사하나 GPT를 지원하는 버전

 

보통 fdisk에 익숙해 있지만 parted를 사용하는 것도 고려해볼 만하다.

parted를 사용하여 파일 시스템을 생성하거나 크기를 변경시키는 등의 파일 시스템 관리 작업도 할 수 있지만 파티션과 파일 시스템은 큰 차이가 있기에 혼란을 피하기 위해 파일 시스템은 다른 도구를 사용하는 것이 좋다.

 

현재 파티션 테이블을 확인하기 위해선 parted -l , fdisk -l 명령을 실행한다.

반응형

'Linux' 카테고리의 다른 글

[Linux] 프로세스의 상태  (0) 2020.11.21
[Linux] 프로세스  (0) 2020.11.21
[Linux] 마운트와 언마운트  (0) 2020.11.18
[Linux] 파일 찾기와 문자열 검색 명령어  (0) 2020.11.17
vi 명령어  (0) 2020.11.17

댓글