본문 바로가기

Foundation/- Linux

Partition & mount란 ??

Partition & mount ??

 

파티션 (Partition)

- 하나의 물리적인 디스크를 여러개의 논리적 디스크로
  나누는 것이다.
 

리눅스의 파티션 이름
- 윈도우의 경우에는  ex) 1번 Disk -> C:\
                                 2번 Disk -> D:\이지만,          
- 리눅스는 ex) 1번 Disk -> /dev/sda   2번 Disk -> /dev/sdb
                   3번 Disk -> /dev/sdc ... 이런 식으로 끝이 abc..순이다.

    첫 번째 파티션 -> /dev/sda1
   두 번째 파티션 -> /dev/sda2

    두 번째 파티션 -> /dev/sda3 파티션을 나누면 끝에 1,2,3 순으로 번호가 붙는다.
       
    ex) /dev/sdb3
    -> 2번째 Disk, 세 번째 파티션


리눅스 파티션의 종류
 - 주(Parimary)   파티션
 - 확장(Extended) 파티션
 - 논리(Logical)  파티션
 
 - 리눅스는 주파티션을 4개까지만 생성이 가능하다
 - 그 이상 파티션이 필요할 경우 확장 파티션을 생성해야한다
 - 확장 파티션을 다시 논리 파티션으로 나누어 지며
   주, 확장, 논리를 포함하여 총 12개까지 파티션 을 생성할 수 있다.

 

 

실습 ! -- 가상의 Disk를 추가하고 파티션을 나누어 보겠다.

  주파티션 2개를 만들어보겠습니다.

 

 Disk 추가
 - 1GB Disk * 1EA 추가 (재부팅)
 
  fdisk - 디스크의 파티션 설정과 정보를 확인하는 명령어
 
  #fdisk -l    // 현재 시스템에 모든 디스크와 파티션 정보를 확인

   -밑의 사진을 보면 기존에 하드 /dev/sda밑에 /dev/sdb로 새로운 1기가 하드가 생

    긴 것을 확인할 수 있다.

 

  #fdisk -l [장치명]    // 해당 장치의 파티션 설정을 확인
 
  파티션 설정 명령어
  #fdisk [장치명]
  ex) fdisk /dev/sdb
       fdisk /dev/sdc

   -다음과 같이 명령을 기다리는 커맨드가 나온다 . 명령어가 무엇이 있는지 보자.


  추가한 /dev/sdb 디스크에 파티션 설정 명령어
  #fdisk /dev/sdb

   d   delete a partition    // 파티션 삭제
   m   print this menu     // 도움말
   n   add a new partition    // 새로운 파티션 생성
   p   print the partition table  // 파티션 설정 확인
   q   quit without saving changes  // 저장하지 않고 종료
   t   change a partition's system id // 파티션 타입 변경 시 사용
   w   write table to disk and exit  // 저장 후 종료
  
  
   n   add a new partition


   Partition number (1-4): 1
   p  주파티션 -> 1 번 선택
  
   First cylinder (1-130, default 1): 1
   Last cylinder, +cylinders or +size{K,M,G} (1-130, default 130):
   +500M

   -어느 정도의 용량을 할당할 것인지 범위를 정해준다.

  

여기까지가 주파티션1을 만드는 것이 끝났고 다시 명령어를 입력하라고  뜬다.

위과정과 똑같이 단, 범위를 남은 끝까지 할당해준다.

 

#fdisk -l /dev/sdb를 통해 파티션이 잘이루어 졌는지 확인을 한다.


 파티션이 완료된 디스크에 파일 시스템을 생성해주어야 한다.


 파일 시스템 생성
 #mkfs -t [타입] [장치명+파티션번호]

 

파일시스템의 종류
ext        -초기 리눅스에서 사용하였던 종류, 현재는 사용하지 않음
ext2       -현재도 사용하며, 긴파일시스템 이름을 지원하는것이 특징
ext3       -저널링 파일시스템, ext2보다 파일시스템의 복수/보안기능을 크게 향상ext4       -16TB까지만 지원하던 ext3과 달리 더큰 용량을 지원하며,                                 삭제된 파일 복구 및 파일 시스템 속도가 훨씬 빨라진 파일시스템
iso9660  -DVD/CD-ROM을 위한 표준 파일시스템으로 읽기만 가능
nfs        -원격서버에서 파일시스템 마운트할때                                                       사용하는 시스템(Network File System)
swap      -스왑파일시스템, 스왑공간으로 사용되는 파일시스템
ufs        -Unix system에서 표준 파일시스템으로 사용(Unix File System)
vfat       -윈도우95/98등등 ntfs를 지원하기위한 파일시스템
msdos   -MS-DOS파티션을 사용하기위한 파일시스템
ntfs       -윈도우NT/2000의 nfts를 지원하기위한 파일시스템
hfs        -MAC컴퓨터의 hfs를 지원하기위한 파일시스템
hpfs       -hpfs를 지원하기위한 파일시스템
sysv       -Unix system v를 지원하기위한 파일시스템
ramdisk  -RAM을 지원하기위한 파일시스템
XFS       -64비트 고성능 저널링 파일 시스템.
 
 ex) #mkfs -t ext4 /dev/sdb1
      #mkfs -t ext4 /dev/sdb2


마운트 (Mount)
 - 특정 디렉토리에 파일시스템을 탑재 하는 것
 - 리눅스 파일 단위로 모든 장치를 관리하기때문에 새롭게
   만든 파일 시스템 사용하기위해서는 디스크 장치를
   임의의 디렉토리에 마운트 시켜 사용해야한다.
 
 마운트 포인트 ( Mount Point )
 - 디스크 장치와 디렉토리가 연결이되어야 하는데 이때
   연결되는 디렉토리
 
 마운트 하는 방법
 #mount [장치명] [마운트 포인트]
 
 마운트 해제
 #unmount [마운트 포인트명]
 
 마운트 포인트 생성
 #mkdir /DIR-1  
 #mkdir /DIR-2   
 
 마운트
 #mount /dev/sdb1 /DIR-1
 #mount /dev/sdb2 /DIR-2

 df (Disk Free) - 파일 시스템 및 파티션별 자세한 용량 확인
 -a 모든 파일 시스템 출력
 -i inode 사용 정보 출력
 -h 용량을 읽기 쉽게 출력
 
 마운트 확인 하는 명령어
 #df -h
 #mount  
 -마운트 포인트 생성과 마운트가 잘되었다면 다음과 같이 확인을 할 수 있다.


 #reboot  // 시스템 재부팅

 -여기서 재부팅을하면 기껏 마운트한 디스크가 없어진 것을 볼 수있다.

  이는 /etc/fstab에 기록이 되어있지 않아서 그렇다.

 /etc/fstab
 - 부팅 시 마운트할 파일시스템의 위치 및 설정 정보가 정의된 파일
 - /etc/fstab 파일에 기록되어있는 순서대로 마운트되어 디렉토리
   구조가 만들어 진다.
  
 /etc/fstab 필드
 (1) 파일시스템 장치명
 (2) 마운트 포인트
 (3) 파일 시스템 종류
 (4) 마운트 옵션
  default (rw, suid, dev, exec, auto, nouser, async)
 (5) 덤프(백업) 생성 유무
   0 - 덤프 생성 안함
   1 - 덤프 생성
  - 해당 디스크에 문제가 생겼을때 어느부분에 문제가 있는지
    알 수 있는 정보가 담겨 있는 파일
 (6) 파일시스템 무결성 검사 유무
  0 - 무결성 검사 사용 안함
  1 - 우선 순위 1순위  ( / 최상위 디렉토리에 주로 설정함 )
  2 - 우선 순위 2순위 
  

           (1)           (2)    (3)       (4)   (5) (6)
/dev/sdb1       /DIR-1  ext4 defaults  0   0
/dev/sdb2       /DIR-2  ext4 defaults  0   0

 #vi /etc/fstab vi로 다음과 같이 추가해주면 된다.

  여기서 파일시스템 장치명은 UUID로 대체해주는데 이유는 이렇다.  

  -UUID로 마운트를 하게되면 디스크 추가나, 삭제작업으로 인해 디스크
  장치명이 종종바뀌어 시스템 부팅이되지않거나, 마운트가되지 않는
  일을 방지 할 수 있다.
 


 UUID ( Universial Unique IDentifier ) 범용 고유 식별자

 - 물리적인 장치와 논리적인 장치에 전부 생성 할 수 있으며
   특정 이름대신에 사용할 수 있는 고유한 이름

 - 디스크에서는 파일 시스템 생성시 생성되는
   해당 디스크의 특정 파티션을 지칭하는 고유한 값
  
 #blkid     (UUID 확인)
 - 현재 시스템에 설정된 파일 시스템의 UUID를 확인 할 수 있다.


UUID를 이용하여 fstab 설정

 

이렇게 디스크 증설을 할 수 있고 재부팅해도 남아있는 것을 확인 가능하다.


 du (Disk Usage) - 특정 디렉토리나 파일의 용량 확인
 -h 용량 읽기 쉽게 출력
 -s 요약
    
 #du /var  // 해당 디렉토리에 하위 디렉토리 및 파일의 용량을 확인
 #du -h /var  // 용량 단위 붙여 출력
 #du -sh /var // /var 디렉토리의 총 용량 확인
 
 
 디스크 증설 작업 과정
 1. 디스크 추가
 2. 파티션 생성
 3. 파일 시스템 생성
 4. 마운트 포인트 생성
 5. 마운트
 6. UUID 확인
 7. /etc/fstab 설정 정보 등록

'Foundation > - Linux' 카테고리의 다른 글

LVM  (0) 2017.05.02
쿼터란?  (0) 2017.05.02
Swap 메모리  (0) 2017.04.27
아카이브(ARCHIVE)  (0) 2017.04.27
압축(gzip, bzip2, xz )  (0) 2017.04.27