티스토리 뷰

Study/Linux

[Linux] Partitioning

생각많은 소심남 2016. 5. 17. 00:28



System을 구성하는 Disk는 Partition으로 구성되어 있다. Partition이 뭔가 하면 물리적 디스크 내에서 sector나 cylinder 단위로 구분지어 놓은 연속적 집합의 형태라고 보면 되겠다. 일반적으로 disk당 4개의 primary partition을 가질 수 있다.

 SATA (Serial Advanced Technology Attachment) 규격은 보통 디스크당 15개의 partition을 가질 수 있는데, 방금전에 소개했다시피 4개의 partition은 primary 혹은 extended partition으로 구성할 수 있고, 이후의 partition은 logical partition으로 생성된다. 사실 이런 규약이 상관이 없는게 하나의 primary partition은 여러개의 logical partition으로 또 나눌 수 있다. 그래서 그냥 partition을 15개까지 만들 수 있다는 것만 알고 있으면 될거 같다.

 리눅스에서 Partitioning을 하면서 얻을 수 있는 이점이 어떤게 있을까?

 - Separation (분리)

 : 보통 윈도우 쓰는 일반 사람들도 C 드라이브와 D 드라이브로 나눠 C에는 주로 프로그램, D에는 개인 자료를 넣곤한다. 이는 시스템의 변화와 상관없이 user-specific한 자료를 계속 유지하고자 하는 목적이 있는 것이다. 가령 운영체제가 잘못되어서 다시 설치해야 할 경우, 사용자 자료가 그 안에 들어있으면 같이 포멧되면서 없어지게 된다. 이같은 경우를 방지하기 위해 user data와 application data를 분리하는 목적에서 partitioning이 필요하다.

- Sharing (공유)

: 앞의 단어와 상반되는 내용일 수도 있겠지만 partitioning을 통해서 공유를 손쉽게 할 수 있다. 가령 앞의 방법을 사용해서 사용자 정보를 따로 분리했다면 이를 일종의 NFS(Network File System)으로 생성해 같은 네트워크내의 어느 컴퓨터에서든 접근 가능하게 만들수도 있다. 또는 multi boot를 활용하는 system에서도 /home 을 공유폴더로 활용할 경우, 개인 정보를 유지하면서 Linux version을 다르게 가져갈 수 있다.

- Security (보안)

: 물론 위의 목적과 더불어 데이터를 분리할 수 있기 때문에 일종의 보안효과도 누릴 수 있다. 예를 들어 sandbox의 형식처럼 생각해봐도 좋을 거 같다.

- Size (크기)

:일반적으로 application들은 주요 업데이트가 이뤄지지 않는 한 크기가 거의 일정하다. 하지만 user specific한 정보는 그 크기가 유동적으로 변할 수 있다.(물론 아닐 수도 있지만...) 이같은 경우 효율성을 발휘해 크기를 조절할 수 있다. 예를 들어 partition의 크기가 한정적인 경우, 다른 partition으로 필요한 만큼 파일을 이동시켜 크기를 조절할 수 있다.

- Performance (성능)

몇년전부터 보편화되면서 사용되어 온 ssd의 경우, Flash memory에 data가 저장되고 불러올 수 있기 때문에 일반적인 HDD 방식보다 성능이 좋다. 이때문에 자주 쓰고 빠르게 읽어 올 자료가 있는 경우 SSD에 저장하고 안정성을 추구하는 자료는 HDD에 저장하는 식으로 성능을 효율적으로 배분할 수 있다.

- Swap 

이건 한글로 번역하기 그런데 데이터가 CPU에 의해서 처리되기 위해서는 memory에 올라가 있어야 한다. 하지만 memory의 크기가 한정적이기 때문에, 자주 안쓰여지는 자료는 일종의 data type으로 변환되어 HDD에 저장된다. 이러다가 쓸 필요가 있는 경우, 다시 memory로 불러오게 되는데 이를 swap이라고 한다. 이때 partition이 사용될 수 있는데, 만약 성능이 좋은 HDD, SDD 같은 곳에 swap space를 만들고 swap을 유발시킬 경우, HDD보다 더 좋은 성능을 불러올 수 있다. 또한 hibernation과 같이 전력관리차원에서 사용되는 기능도 이런 swap을 사용하게 되는데, 데이터를 저장하는 영역 역시 성능이 빠른 partition에 저장할 경우 더 높은 성능을 얻을 수 있다.

댓글