디스크의 종류
- IDE : 가장 오래된 규격으로 포트는 40개의 핀으로 구성된 직사각형이다. 현재는 대부분 사용하지 않고 있다.
- SATA : 최근에 나온 인터페이스로 하드디스크 드라이브의 속도와 연결 방식 등을 개선하기 위해 나왔다. SATA 1 규격에서는 초당 150MB, SATA 2는 초당 300MB의 전송 속도를 지원한다. 또한 SATA 2에서는 USB처럼 허브를 이용해 하나의 포트에 여러 개의 하드디스크를 연결할 수 있고 PC를 끄지 않고 장치를 연결하는 핫플러그 등의 기능이 추가되었다. 현재 가장 일반적으로 많이 사용된다.
- SCSI : 서버나 워크스테이션 등에 쓰이는 고속 인터페이스로 무엇보다 안정성이 높은 것이 최대의 장점이지만 가격이 매우 비싸다. 최신 규격인 울트라 320은 최대 320MB/초의 속도를 낸다. 최근 이를 대체하는 SAS인터페이스가 등장하면서 조금씩 사용이 줄고 있는 추세이다.
디스크의 구조 및 관리
- 물리적인 구조
- 헤드 : 데이터를 읽어주는 역할을 함
- 액츄에이터 암 : 헤드를 데이터가 있는 위치로 움직여주는 역할을 함
- 플래터 : 실제로 데이터가 저장되는 곳
- 스핀들 모터 : 플래터를 돌려주는 역할
- 논리적인 구조
- 섹터 : 하드디스크의 물리적인 최소단위
- 트랙 : 섹터 단위의 모음
- 실린더 : 트랙들의 집합
즉) 섹터 + 섹터 + ..... = 트랙
트랙 + 트랙 + ...... = 실린더
실린더 + 실런더 + .... = 실린더 그룹 (= 파티션)
디스트 관리 명령어
- fdisk
옵션 | 의미 |
-l | 파티션 정보를 출력 |
-s | 특정 파티션의 크기를 출력(512byte단위) |
-t | 지정된 파티션 테이블 유형만 인식 |
-v | fdisk 버전을 출력 |
- 디스크 이름의 /dev/sda1의 sd 다음의 알파벳은 디스크 순서
ex) 첫 번째 디스크 : sda 두 번째 디스크 : sdb 세 번째 디스크 : sdc
- 디스크 이름의 dev/sda의 sda다음의 숫자는 파티션 순서
ex) 첫 번째 파티션 : sda1 두 번째 파티션 : sda2 세 번째 파티션 : sda3
※ CentOS, Ubuntu에서 SCSI, SATA인 경우
디스크를 추가하는 과정
1) 물리적으로 디스크 추가
2) 부팅 또는 장치 인식 (※핫 플러깅이 지원되는 장치는 자동으로 인식이 되지만 생기지 않을 경우 수동으로 스캔)
"echo "- - -" > /sys/class/scsi_host/host0/scan"을 host 순서로 터미널에 입력해도 되지만 아래 쉘스크립트를 등록해서 사용하면 더 편하다.
for HOST in `ls /sys/class/scsi_host/`
do
echo ' - - -' > /sys/class/scsi_host/$HOST/scan
echo " $Host rescan "
done
3) 파티셔닝
fidisk [장치] ex) fdisk /dev/sdb
주로 상요하는 옵션 | |
n | 새로운 파티션 추가 |
d | 파티션 삭제 |
l | 파티션 타입 리스트 조회 |
w | 설정한 파티셔닝 저장 |
q | 저장없이 파티셔닝 종료 |
p | 현 파티셔닝 상황 조회 |
주파티션은 4개까지 만들 수 있으며, 4개 이상 만들고 싶은 경우는 3개까지만 파티션을 만들고 4번째 파티션은 확장 파티션으로 만들어야 된다. (※ 확장 파티션은 MBR에 저장되는 게 아니라 디스크의 다른 공간에 저장)
4) 파일 시스템 설치
- 파일시스템 종류
- ex4의 구조
- Super Block : 가장 중요함, 테이블의 모든 정보를 가지고 있으며, 중요도가 높아 파일시스템 생성 시 자동으로 백업이 된다.
- Inode Table : Data Block 또는 Inode의 주소를 저장
- Data Blocks : 실제 데이터 저장된 곳
- 파일시스템 생성 명령어
mkfs [장치] ex) mkfs /dev/sdb1 (기본적은 ext파일시스템으로 만들어짐)
5) mount 사용
mount [옵션] [장치] [마운트 포인트] ex) mount /dev/sdb1 monut_pointer
마운트 해체는 umount [장치] /[마운트 포인트] ex) umount /dev/sdb1
마운트는 쉽게 말해 만들어 놓은 파일 시스템을 특정 디렉토리와 연결을 시키는 작업
※상기 과정으로 마운트를 할 경우 재부팅을 하게 되면 언마운트가 되므로 부팅 시 자동으로 mount가 되도록 /etc/fstab에 등록을 해줘야 된다. 아래 사진은 vi /etc/fstab의 예시이다.