05. 디스크 관리 및 파일 시스템 - 디스크의 구조와 디스크 추가 과정 이론

prana·2023년 3월 6일
0

Linux

목록 보기
18/28

출처 : 유튜브 따라하면서 배우는 it- 리눅스 고급 과정

디스크 관리 및 파일 시스템

  • 하나의 디스크를 추가해서, 사용하기까지의 과정 전체

  • 엔지니어의 가장 기본적인 업무이기도 함.

  • 디스크가 어떤 종류가 있는지.

  • 서버에서 어떤 걸 많이 사용하는지.

  • 어떻게 생겨먹었는지...

  • 시스템이 어떻게 이해하고 있는가.


🎈목차

  1. 디스크의 종류
    • IDE, SATA, SCSI
  2. 디스크 구조 및 관리
    • 물리적인 구조, 논리적인 구조, 디스크 관리
  3. 디스크를 추가하는 과정
    • 디스크 추가부터 사용하기까지
  4. 리눅스의 파일시스템
    • 파일 시스템 종류, 구조, 관리
  5. 마운트 및 언마운트
    • 마운트란? 자동 마운트 설정 파일
  6. 따라학IT
    • 디스크 추가해보기 / 마운트 해보기

디스크의 종류

IDE

이제는 대부분 사라진 IDE

  • 케이블 두 군데 꼽는 곳 두개
  • 요즘에는 이런 케이블 사용하지 않음

SATA

일반적으로 많이 쓰이는 SATA (집에서)


  • 속도 빨라짐, 안정적
  • 5만원 정도.

SCSI

서버 시스템에 많이 쓰이는 SCSI

  • 서버: 안정성 가장 중요. 언젠가는 마모, 고장나니까 좀 더 오래 안정적으로 쓸 수 있도록 만들어진 구조.
  • 다나와에서 보면 조금 비쌈

  • VMWare에서 설치할 때
  • NVMe : SSD같은 것

디스크의 구조 및 관리 - 물리적인 구조

하드 디스크 - 물리적인 구조

  • 디스크 뚜껑을 열게 되면..

  • 여러 개의 디스크 판 같은 곳에 데이터가 저장.
  • 스핀들 모터: 뱅글뱅글 돌아가면서. 플래터를 돌리게 됨.

  • 그늘져있음. 띄워져 있음.

  • 정확히 붙어져있지 않음. 전기적 신호를 쏴서 데이터를 읽거나 쓰게 함

  • 닿으면 기스가 팍 남!!!

  • 암이 좌우 왔다갔다 하고, 플래터가 뱅글뱅글 돌면 디스크 전체를 읽거나 씀

  • 물리적인 구조가 있기 때문에, 발전 속도가 그렇게 빠르지는 않는다.

  • cpu, memory는 발전함. 갭 차이가 벌어지게 됨.

  • 하드디스크 메모리 사이에 메꿔주려는 것들이 생김. (캐시 메모리, ssd 등)

  • 하드디스크는 느린 편에 속한다.


디스크의 구조 및 관리 - 논리적인 구조

데이터 저장 공간의 논리적인 구조

  • 리눅스 상에서 관리를. 리눅스가 얘를 어떻게 인식을 하는가.
  • 논리적으로 어떻게 컴퓨터가 디스크를 이해를 하고 있는가.

  • 작은 논리적 단위 : 섹터 (하나의 점이라고 생각하면 편함. )

    • 512 byte. 섹터 단위로 구분,
  • 모이면 하나의 원이 만들어짐. -> 트랙

  • 플래터가 여러 개 겹겹이 쌓여있음. 맨 위쪽 트랙, 밑에 트랙, ...

  • 원통 모양 : 실린더

  • 한 겹, 두 겹 모이면, 어느정도 두꺼운 원통 모양.

  • 실린더들이 모이면 그룹, -> 쉽게 이야기하면 파티션.

  • 유닉스: 실린더, 리눅스: 파티션이라는 개념

  • 나눠놨을 때의 장점 : 만약 부팅을 할 때, 부팅을 해야하는 파일들.
    부팅할 때만 한 번만 읽는 것이라고 가정, 저장을 해둘때, 여러군데 뿔뿔이 흩어 저장이라 하면
    헤더도 엄청 이동하면 부팅하는데 속도가 느림.

  • 만약 부팅과 관련된 파일을 바깥쪽에 저장한다면?
    -> 헤드가 바깥쪽 부팅할 때 다 읽어들인 후에, 물리적인 거리가 줄어들 것이다.

  • 컴퓨터가 동작하는 데 좀 빠를 수 있다.

  • 그래서, 바깥쪽부터 실린더의 그룹을 나눠 부팅 관련/ 사용자 사용하는 데이터/ 프로그램 등으로 설치하도록 그룹 단위로 관리.

  • 부팅 관련된 것 따로, 데이터 저장되는것 따로, 장치 관리하는 것 따로.

  • 기본 설치 시 파티션이 자동으로 나뉘어짐.


디스크의 구조 및 관리 - 디스크 관리

디스크 관리 명령어 fdisk

  • 파티션을 확인할 수 있다. 복잡하게 출력된다.
  • 새로운 디스크를 추가하는 것.
  • fdisk /dev/sdb: 순서
  • 디스크의 이름을 입력해주게 되면 파티션을 생성하는 작업을 수행함.
  • 리눅스의 버전, 종류마다 다름. centos, ubuntu는 간단해지는 추세이다.
  • 파티션 뒤에 순서가 붙는다. 첫 번째 하드디스크의 몇 번째인지.
  • abc는 디스크의 순서.

디스크를 추가하는 과정 - 디스크 추가부터 사용하기까지

디스크를 사용하기 위해 필요한 파티션, 파일 시스템

  1. 물리 디스크 추가 : 다나와 같은데서 구입, 본체에 추가
  2. 시스템 전원을 끄고 하는데, SCSI는 전원을 켠 상태에서도 추가 (hot plugin기능 추가)
  3. 장치 인식 시켜줌
  4. 파티션 작업들을 해주면 된다.
  5. 바로 저장장치로서 사용 x
  6. 파일 시스템 설치 (포맷)
  7. 사용 (mount 작업)

실습

  1. 디스크 관리 및 파일 시스템 - 디스크 추가 및 파티션 설정 실습
  • 새로운 디스크 추가하고 파티션 작업

  • SCSI 장치한테 직접적으로 직접적인 시그널을 보냄

  • echo "- - -" > /sys/class/scsi_host/host0(번호는 달라져서 확인필요)/scan : 특정 시그널을 특정 장치에게 보냄.

  • fdisk -l으로 다시 확인하면 뜨는 것을 알 수 있다.

  • fdisk /dev/sdb -> 대화 형식으로 명령어가 실행됨.

  • 단축키는 m 또는 help

-🌟 삭제 d, 새로운 파티션 n , 리스트 목록 l ,

  • 저장 w, q 종료 (저장 안하고 날라가니까 저장하고 종료!), p 지금까지 설정한 파티션 내용 보는 것

  • 새로 뜬 게 없음.
  • l에서 만들 수 있는 타입은 이렇게 볼 수 있다.

  • 파티션 새로 생성하기 : primary, extended

  • MBR : 부팅장치인지 아닌지 찾는 것 (64바이트 파티션 저장 공간 / 하나당 16바이트 )

  • 주 파티션은 총 4개만 만들 수 있음.

  • 파티션을 좀 더 만들고 싶다? -> 100GB씩 열개로 쪼개 쓰고 싶다. -> 확장 파티션을 하나만들고, 디스크의 다른 공간에 저장하게 해줌.

  • 4개 이상으로 하고 싶다. 주 파티션 3개, 확장 파티션 1개 -> 확장 파티션을 여러개로 나눠서 씀


  • p
  • 기본값은 1. (Enter치면 기본값 들어감)
  • 어디서부터 어디까지 쓸 것인지
  • 첫 번째 파티션이니까. 2048부터. 엔터

  • Last sector : 섹터 단위는(섹터 2개는 1MB * 100 = 100MB) 섹터 번호. : +100M

  • w 로 반드시 저장.

  • fdisk -l -> p로 확인했던 것처럼 정보 확인할 수 있다.

  • 남아있는 추가 파티션 더 만든다고 하면, 🌟fdisk /dev/sdb(장치 이름 주의)

  • 700MB 사용, 남아있는 300MB를 파티션으로 만들어서 사용하려고 하면..

  • 하나의 남아있는 주 파티션을 확장 파티션으로 하나 해라.

  • 네 번째 파티션을 지우고,

  • n해서 e(extended)

  • 250MB으로 생성하는 게 아니라, 전부다 확장파티션-> 바로 Enter

  • 그 다음, 새로운 파티션을 추가해서, 여기서 용량을 지정하게 됨

  • 남은 용량은 얼마든지 더 생성해서 쓸 수 있다.

  • 얘네들도 MBR의 64바이트에 저장되는 것이 아니라, 디스크의 다른 공간에 저장해서 파티션을 여러개 만들 수 있음.
  • w로 저장하고 나가기!

0개의 댓글