학원

2023/06/15 디스크

맹진호 2023. 6. 15. 18:02

디스크

영구적으로 보관해야하는 데이터를 저장하고 있는 비휘발성 메모리

디스크의 종류는 SSD, HDD 등

 

서버 장비
서버 기본단위(1U,유닛,한칸 차지)
하드디스크를 저장할 수 있는 단위를 베이라고한다.

SATA는 가정용(저가형의 하드디스크이다.) 케이블로 직접 연결해서 사용
SCSI은 케이블이 없고 베이에 직접 연결한다. (하드디스크중 성능을 극대화한 것 비용이 비싸다. SSD보다 비쌈)

 


운영서버와 스토리지 서버를 연결하는 2가지 방법이 있다
1)NAS (Netwrk Area Storage)
-일반적인 네트워크 연결을 통해서 데이터 저장공간을 공유해준다.
-대표적인 NAS의 형태가 NFS이다.(운영체제에서 스토리지 영역의 저장공간을 사용)
-단점 클라이언트가 데이터 저장 시 NFS서버가 스트리지 서버로 전달할 때
트래픽이 많으면 네트워크 지연이 생기고 데이터 유실도 생길 수 있다.

2)SAM(Storage Area Network)
- NFS 서버(운영서버)와 스토리지 서버 사이에 스위치(SAN switch)를 둠
- NFS 서버에 FC 케이블을 꽂을 포트가 부족할 때 사용
- 추가설비 작업 필요, 비용이 높음

 


하드디스크 구조

 

 

속도의 기본단위가 RPM이다.
서버용 SCSI이 10000 ~ 12000 정도이다.
가정용인 SATA 6500 ~ 7500정도.

 



파티션

 

독립된 분리된 공간을 쓰고싶어서 파티션을 사용하는 것 운영체제에 문제가 생기면 포맷작업을 C드라이브로 하면 된다.
목적 : 데이터의 분리




 

- Meta : 파일에 관련한 정보
- Data : data의 내용
A File을 찾고싶을 때 하나하나 뒤져보면서 찾기엔 너무 오래걸리기 때문에 Meta Data로 10번 Cluster에 있구나 라는걸 아는 것이다.
찾는거 뿐만아니라 비어있는 공간도 Meta Dat로 쉽게 알 수 있다.

[ File System ] : 파일의 물리적 위치를 저장하여 Data에 빠른 Access가 가능하도록 도와 준다.

Format : 파일시스템을 재구성 하는 것을 말 한다.
( Format의 종류로는 high-level 과 low-level이 존재한다. )

( High-Level )
- Quick : meta 영역과 재 구성 ( 링크정보만 제거)
- Normal : Quick + 물리적 디스크 오류 검사 

( Low-Level )
- Factory Default ( 공장 초기화)




VMware에서 다시 초기설정으로 돌린 후 hard disk에 1GB 새로운 HD를 넣는다.

 

 

ls -l /dev/sd*을 쳐보면 이런식으로 나오게된다.
뒤에 오는 a 와 b가 하드디스크 이름이다. a는 처음실행할 때 만든 20GB, b는 방금만든 1GB이다.
1이랑2는 파티션이다.

 

 

 

 

이런식으로 확인하는 것 말고fdisk -l으로도 상세정보를 확인 가능함

 

 

 

 

전체의 상세정보 말고 내가 원하는 디스크 이름을 지정하면 fdisk /dev/sdb로 친다.

 

 

 

 

아래쪽에 m을 입력하면 이렇게 나오는데 내가 원하는 곳으로 들어가서 작업하면 된다.
d는 삭제 p는 파티션 정보 n은 새로운 걸 만드는 것이고 q는 저장하지않고 나가기 w가 저장하고 나가기다.

 

 

 

 

 

 


[ DOS Partition 종류 ]

1. Primary Partition ( 주 영역 )
- 실제 데이터를 저장, 운영체제 설치가 가능 한 Partition.
- Partition 생성 시 MBR Partition Table 16byte가 소모.
- 최소 1개부터 최대 4개까지 생성 가능.

2. Extended Partition (확장 영역 )
- 실제 데이터 저장 불가, 부족한 Partition Table 영역을 확장 시키는 용도로 사용.
- 논리 영역을 담는 바구니 역할.
- 1개만 생성 가능 하며, MBR Partition Table 16tyte가 소모.

3. Logical Partition ( 논리 영역 )
- 확장 영역이 갖는 범위 안에 생성 되는 Partition
- 실제 데이터 저장 가능, 운영체제 설치 불가능.
- 제한 없이 생성 할 수 있음 ( 확장 영역의 Disk 할당 용량 만큼 )

새로 생성 할거라 n을 눌러주고 primary를 해야하기 때문에 p를 누르고 파티션 1번으로 만든다.
퍼스트 섹터는 비어있는 값중에 가장 앞에있는게 빠른값이기 때문에 그냥 2048을 고른다.
라스트 섹터는 섹터 갯수를 몇할껀지 아니면 사이즈로 할껀지를 정하면 된다. 사이즈로 할꺼면 +250M으로
그렇게 3개를 만들어준다. 숫자를 넣는 부분에선 2, 다음으론 3으로 지정하면 된다.

 

 

 

마지막은 n하고 p해서 그냥 생성해준다. 그럼 나머지 용량이 알아서 생성되게 된다.

 

 

 

 

p를 눌러서 내가 만든걸 확인할 수 있다.
Boot가 있는 곳이면 Boot플래그를 따로 지정해줘야한다 그쪽에 *이 있을 것이다.

 

 

 

 

d해주면서 뒤에 값부터 잡히기 때문에 삭제 해준다.

 

 

 

 

e를 만들 때 퍼스트 섹터 엔터 라스트 섹터를 엔터해서 만들어준다.

 

 

 

그리고 n을 만들면 자동으로 로지컬이 나머지 용량으로 만들어진다.

 

 

 

 

p를 눌러서 만들어진 파티션을 확인해본다.

 

 

 

 

w로 저장하고 나가준다.

 

 

 

 

애네들은 다 파일이기 때문에 파일 속에 파일을 못넣는다. 그렇기 때문에 저장은 못한다.
저장을 하기 위해선 디렉터리로 변환을 해줘야함.
원본을 건들지 않고 비어있는 디렉터리를 생성 후 그 파티션이랑 연결해준다.
그 연결해주는 것을 마운트(Mount)라고한다.

 

 

 

 

마운트를 정상적으로 하기 위해선 파티션에 파일시스템이 탑재(즉, 포맷작업)되어있어야 가능하다.
EXT4, XFS 두종류가 포맷작업을 하기위한 대표적인 시스템이다.
나머지 2번과 3번도 해준다. 단 4번은 어차피 확장파티션이라 할 필요가 없다. 건너띄어주고 5번과 6번을 해줌

 

 

 

 

blkid을 치면 UUID(장치식별ID)와 TYPE을 확인할 수 있다.

 

 

 

 

lsblk도 트리형식으로 확인할 수 있다.

 

 

 

 

마운트를 위해 내가 원하는대로 디렉터리를 만들어준다.

 

 

 

 

마운트 명령어는 mount라고 하고 앞쪽엔 연결할 파티션을 먼저 적는다. 그리고 뒤에 연결할 디렉터리를 적는다.

 

 

 

 

df -h를 쳐준다. 뒤쪽에 디렉터리랑 연결되어있는것과 쓰고있는 용량 남은용량도 확인이 가능하다.
위에있는것들은 리눅스 운영체제에 필요한 파티션들이다 이녀석들 구조를 알면 좋지만 굳이? 느낌

 

 

 

 

마운트를 해제할때는 umount이다. 위치 자체를 하는것과 파티션이름을 지정하는것으로 두가지 방법이 있어서 원하는걸로 해도 괜찮다.

 

 

 

 

df -h해보면 사라진걸 확인할 수 있다.
가끔 umount가 안풀릴 때가 있는데 그럴 때는 내가 그 디렉터리 안에 들어가 있기 때문에 삭제가 안되는것이다.
그러면 당황하지말고 그냥 디렉터리를 이동해서 삭제해주면 된다.
마운트를 설정했다가 init 6으로 재부팅을 하게되면 df -h를 하게 되면 사라져있는걸 확인할 수 있다.
이것을 자동으로 연결하게 해주는게 오토마운트이다.

 

 

 

 

우리가 만든것도 하게하려면 vi ./etc/fstab으로 들어와서 아래 작성해주면 된다.
여기서 파티션 이름을 잘못건들게 되면 부팅자체도 안되게 된다.
뒤에 defaults에 앞에 있는 숫자는 덤프부분, 뒤에있는 숫자가 파일시스템 체크부분이다.
이 부분은 0이 사용하지않음 1이 root파티션에 마운트한다라는 뜻이다.
EXT4 1 2 이런식으로 사용하고 XFS는 사용할 필요가 없기 때문에 0 0 으로 쓴다.
EXT4에 파일시스템에 0은 사용안하겠다 1은 root파일 시스템일 땐 1로 셋팅 그 외 다른시스템은 전부 2로 셋팅
XFS에는 자체에 있기때문에 스스로 기록도 남기고 스스로도 체크도 해준다. 그렇기 때문에 0 0 으로 설정해주는 것

 

 

 

 

저장하고 나가서 inif 6을 눌러서 재부팅 후 df -h를 눌러서 확인해보면 자동으로 연결이 되어있는걸 확인할 수 있다.