Linux / / 2024. 7. 3. 11:45

하드디스크

1) 파티션
2) LVM
3) RAID
4) Disk Quota

 


하드디스크 타입
1) HDD
 -> 구형 PC 장착, 최대 4개
2) SATA
 -> 최근 PC 장착, 최대 6개
3) SCSI
 -> 서버 전용,      최대 15개 (Hot Swap 포함

                                      전원이 켜진 상태로 하드디스크를 교체하는 기능)

 

하드디스크 장착 확인

1) lsblk

2) fdisk

fdisk -l /dev/sda

 

하드디스크 표기법

/dev/sda1     /dev/hdb3

 

/dev : 하드웨어 정보를 갖고 있는 디렉터리

h -> hdd 타입을 의미 (병렬타입)

s -> SATA 또는 SCSI타입을 의미 (직렬타입 -> Serial)

d -> disk drive

a -> 서버(PC)에 연결된 물리적번호를 의미

       a = 첫번째 연결된 장치

       d = 네번째 연결된 장치

1 -> 하드디스크에 생성된 파티션 번호

        1 = 첫번째 파티션

       3 = 세번째 파티션

 

/dev/sda1 -> 시리얼타입의 첫번째로 물리적 연결된 하드의

                                    첫번째 파티션

/dev/hdb3 -> 병렬타입 세번째로 물리적 연결된 하드의

                               세번째 파티션

 

/dev/sda1 -> 윈도우의 경우 => C드라이브

/dev/sda2 -> 윈도우의 경우 => D드라이브

/dev/sda3 -> 윈도우의 경우 => E드라이브

 

 

파티션 생성 : 운영체제에게 사용할 하드디스크 공간을 선언

                  파티션에는 주파티션, 확장파티션, 논리드라이브가 있습니다.

포맷          : 하드디스크에 데이터를 읽기, 쓰기

 

리눅스에서 하드디스크 장착하여 사용하기

 

파티션 생성하기

# 우선 lsblk로 보유한 하드디스크와 파티션을 확인해 준 후,

# 파티션 작업을 하고싶은 하드디스크를 선택합니다.

 

lsblk

 

fdisk /dev/sdb

 

# sdb 드라이브의 파티션을 나누고 싶을 경우

 

명령어

p : 현재 파티션 상황 보기

n : 새 파티션 만들기

d : 파티션 지우기

w : 저장하고 나가기

q : 저장하지 않고 나가기

 

Command (m for help): n

# 새 파티션을 만들기 위해 n 명령어를 입력합니다.


Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p

# 주 파티션을 만들것인지 확장 파티션을 만들 것인지 선택합니다.


Partition number (1-4, default 1): 1

# 새로 만들 파티션의 번호를 입력합니다.


First sector (2048-2097151, default 2048): 

# 파티션의 첫번째 섹터를 입력합니다.


Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-2097151, default 2097151): 

# 파티션의 마지막 섹터를 입력합니다.

# 파티션을 하나만 만들 거라면 기본값으로 리턴하면 되고

# 여러 파티션을 만들 것이라면 값을 입력해 줍니다.

# 섹터값 대신 +숫자K, +숫자M, +숫자G 등을 주어서

# 용량으로 값을 정할수도 있습니다.


Created a new partition 1 of type 'Linux' and of size 1023 MiB.

# 예제에선 기본값으로 생성하여 1G의 하드 디스크를 전부 사용하는

# 1G의 파티션이 만들어졌습니다.

 

이제 p를 입력해 나누어진 파티션이 출력됩니다.

 

 

w를 입력해 저장한 후

lsblk를 입력해 전체 하드디스크를 확인해 봅시다.

 

 

 

5개 이상의 파티션 생성하기

주 파티션은 4개밖에 만들수 없습니다.

그러므로 파티션을 5개 이상 만들려면

확장 파티션을 하나 만들어 그 확장 파티션에

논리 파티션을 여러개 넣어주면 파티션을 더 만들수 있습니다.

 

 

먼저 주 파티션을 3개 만든 후 확장 파티션을 하나 만듭니다.

 

 

이제 파티션을 더 추가하려고 하면 자동으로 논리 파티션을 만듭니다.

 

 

해당 방식으로 파티션을 여러개 만들 수 있습니다.

 

 

확장 파티션은 사용가능한 용량을 선언하는 것으로

실제 사용할 수 있는 파티션이 아닌 상징성을 갖습니다.

 

확장 파티션을 통해서만 논리드라이브를 생성할 수 있습니다.

 

 

 

각 파티션의 가장 앞 섹터: MBR, 해당 하드디스크 몇번섹터에

                                           OS가 있는지 확인하는 역할

하드디스크의 마지막 섹터: 하드디스크 데이터들의 정보를 암호화해 저장

 

 

파일시스템 만들기 (포맷)

파일시스템
OS DOS 98/XP 7/10 11
윈도우 FAT FAT16 FAT32 NTFS ReFS
리눅스 EXT EXT2 EXT3 EXT4 XFS
리눅스 저널링   저널링 없음 저널링 지원

저널링이란?

 -> 파일 시스템이 깨져도 복구를 지원하는 기능

 

윈도우 파일시스템 (보안)

 - FAT : 보안이 없음, 단일파일 크기 3.99GB

 - NTFS : 파일 단위로 보안설정

            단일 파티션 1.99TB까지 지원

 

윈도우 서버는 FAT를 지원하지 않음

 

외장하드, USB의 기본 파일시스템은 FAT타입

(보안이 없으므로 속도가 빠름)

 

FAT -> NFTS는 데이터 손실없이 변환가능

NFTS -> FAT는 변환불가능 -> 포맷을 해야 함

 

 

윈도우 포맷 명령

convert f: /fs:ntfs

 

# F 드라이브의 파일시스템을 NFTS로 변환하는 윈도우 CMD 명령

 

 

리눅스 포맷 명령

mkfs.ext4 /dev/sdc1

# mkfs -t ext4 /dev/sdc1

 

# make file system의 약자

# 하드 디스크의 이름이 아닌 파티션의 이름을 주어야 하는것에 유의!

 

 

마운트 (mount)

마운트 포인트 생성

리눅스에서는 하드디스크를 직접 사용할 수 없으므로

리눅스에서 사용하는 폴더와 하드디스크를 연결하는 행위.

리눅스 폴더를 통해서 하드디스크를 사용할 수 있습니다.

 

 

 

/dev/sdb1 파티션과 연결할 /MUSIC 폴더

 

/dev/sdc1 파티션과 연결할 /MOVIE 폴더

 

 

마운트 설정

# mount -t 파일시스템타입 장치명 마운트포인트(폴더명)

mount -t ext4 /dev/sdb1 /MUSIC

mount -t ext4 /dev/sdc1 /MOVIE

 

마운트 하면 기존의 파일들이 보이지 않고

마운트한 파티션의 내용이 보입니다.

마운트를 해제다면 다시 원래 /MUSIC 폴더의 파일이 보입니다.

 

 

 

 

마운트 확인하기

 

 

 

lsblk

 

 

 

mount | grep /dev/sd

 

 

df -h

 

마운트 해제

# umount 장치명

# umount 마운트포인트 (둘중 하나)

umount /dev/sdb1

 

#  마운트된 폴더가 사용중이면 마운트 해제가 안됩니다.

 

 

 

한번에 마운트 해제

unmount /dev/sd[b-e]1

 

# sdb1 ~ sde1까지 한번에 해제됩니다.

 

 

 

자동 마운트 설정

/etc/fstab 파일에 등록하기 (재부팅시에도 마운트 연결)

 

 

gedit /etc/fstab

# /etc/fstab 파일의 마지막에 밑의 항목을 추가

/dev/sdb1 /MUSIC ext4 defaults 0 0
/dev/sdc1 /MOVIE ext4 defaults 0 0
/dev/sdd1 /ENG ext4 defaults 0 0
/dev/sde1 /KOR ext4 defaults 0 0

 

장치명    마운트포인트    파일시스템타입    옵션    Dump    Fsck

 

 

 

마운트 에러로 부팅실패시 해결하기

 

마운트가 잘못되어 부팅이 되지 않는것이

리눅스 부팅오류의 90%를 차지합니다.

 

 

긴급 모드에서는 루트 비밀번호를 입력하면 읽기 모드로 진입되며

수정을 위해서는 쓰기모드로 재마운트 후 /etc/fstab 파일을 수정해야 합니다.

 

mount –o remount,rw /

 

# 읽기 모드로 진입된걸 쓰기 모드로 재마운트

 

vi /etc/fstab

 

# vi로 /etd/fstab파일을 열어 잘못된곳을 수정해줍니다.

 

vi 저장한후 재부팅하면 완료

 

 

 

 

 

 

유닉스 -> 톰켄슨, 데니스리치(c언어)    1970년

윈도우 -> 마이크로소프트                 1981년

리눅스 -> 리누즈토발즈                    1991년

 

멀티부팅

 -> 1개의 하드디스크에 여러개의 os를 설치

 -> 하위 OS부터 설치해야 합니다.

     (윈도우 -> 리눅스 -> 유닉스)

  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유