[리눅스] 9장 정리

Jingu_Jeon·2024년 5월 19일

Linux 스터디

목록 보기
4/8

9장 디스크 관리 기본

학습목표

- 1. 가상머신 내부 디스크 장치의 구성을 이해한다.
- 2. 리눅스에 디스크 하나를 추가하는 방법을 익힌다.
- 3. 파일 시스템을 생성하고, 마운트하는 방법을 익힌다.
- 4. 쿼터의 개념과 설정 방법을 이해한다.

1-1 SATA 장치와 SCSI 장치 구성

  • 쿼터(Quota)

    • 사용자에게 공간을 할당하는 개념
  • 디스크 추가 로직

#장치구성

  • 메인보드의 SATA 0번 슬롯(메인보드에 케이블을 꽃을 수 있는 홈)에는 각각 30개의 SATA 장치를 장착
  • VMware는 SATA슬롯 4개를 지원하므로, SATA 장치를 120개까지 장착 가능
  • SATA 장치는 주로 SATA 0:0, SATA 0:1, SATA 0:2 ... 로 표기
  • VMware에는 기본적으로 SATA 0:1에 CD/DVD 장치가 장착됨
  • SATA 장치(주로 디스크) 추가는 비어 있는 나머지 119개의 장치에 장착

#구성

  • VMware의 경우 메인보드에 SCSI 슬롯이 4개
  • SCSI 0번 슬롯의 경우, SCSI 0:0~SCSI 0:15(SCSI 0:7 제외)의 15개 디스크 장착이 가능
  • SCSI 1, 2, 3번 슬롯도 각각 사용 가능하므로 총 60개(4x15)의 디스크 장착이 가능

2-1 디스크 하나 추가

#구성

  • 처음 장착된 SCSI 디스크를 /dev/sda, 추가로 장착된 디스크를 /dev/sdb, /dev/sdc, /dev/sdd, ...로 부름
  • /dev/sda 장치를 파티션으로 나누고, 이 파티션은 차례대로 1, 2, 3, 4를 붙여서 /dev/sda1, /dev/sda2, /dev/sda3, /dev/sda4라고 부름

  • 추가한 디스크의 이름은 /dev/sdb
  • 파티션의 논리적 이름은 /dev/sdb1
  • '/mydata'라는 디렉터리를 만들고, 이 디렉토리에 마운트

실습 9-1 디스크 하나 장착하고 사용하기

  • 명령어 정리
    • 파티션 테이블 관리 명령어
      • fdisk /dev/디스크명
        • fdisk /dev/sdb : SCSI 0:1 디스크 선택
    • command 명령어
      • Command: n : 새로운 파티션 분할
      • Select: p : primary 파티션 선택
      • Partition number: 1 - 파티션 1번 선택
      • First sector: enter : 첫번째 섹터 지정(엔터 : 기본값)
      • Last sector: enter : 마지막 섹터 지정(엔터: 기본값)
      • Command: p : 설정 내용 확인
      • Command: w : 설정 내용 저장
    • 파일 시스템 포맷 명령어
      • mkfs.[파일시스템][옵션] [디스크파티션] : [디스크파티션]에 파일시스템을 생성하는 명령어
      • mkfs -t [파일시스템][옵션] [디스크파티션]
        • mkfs.ext4 /dev/sdb1 : /dev/sdb1 파티션에 파일시스템 생성
    • mount 명령어
      • mount [옵션] <장치 또는 파일 시스템> <마운트 지점>
        • mount /dev/sdb1 /mydata: mydata 디렉토리를 /dev/sdb1에 마운트
    • 자동 마운트
      • /etc/fstab 파일 열기
      • /dev/sdb1 /mydata ext4 defaults 0 0 추가

3-1 공간 할당, 쿼터의 개념

  • 공간 할당
    • 디스크가 꽉 차면 시스템 전체가 가동되지 않는 치명적인 문제가 발생
    • 이러한 상황을 미연에 방지하려면 사용자 별로 할당된 공간만 사용하도록 용량을 제한
  • 쿼터(Quota)
    • 파일 시스템마다 각 사용자가 사용할 수 있는 파일의 용량과 개수를 제한하는 것
    • 쿼터 실습 진행 순서
      • etc/fstab 수정 -> 재부팅 또는 리마운팅 -> 쿼터 DB 생성 -> 개인별 쿼터 설정

실습 9-2 사용자에게 공간 할당하기

  • 명령어 정리

    • adduser --home /mydata/linux1 linux1: linux1 유저 생성
    • adduser --home /mydata/linux2 linux2: linux2 유저 생성
    • mount --options remount /mydata: 리마운트하는 명령어
    • quotaoff -avug: 쿼터 종료 명령어
      • quotaoff: 시스템에서 가동중인 쿼타를 중지하는 명령어
    • quotacheck -augmn: 파일 시스템의 쿼터 관련 체크 명령어
    • touch aquota.user aquota.group: 쿼터 관련 파일 생성 명령어
      • touch [파일명]: 옵션이 없을 경우 0바이트의 빈 파일을 생성
        • touch f1 f2 f3: 0바이트 인 f1, f2, f3 파일을 생성
    • chmod 600 aquta.*: 보안을 위해 소유자 외에는 접근 금지
      • chmod [파일명]: 파일이나 디렉터리의 권한을 변경하는 명령어
        • chmod 600 [파일명]
          • 첫 번째 자리(6): 파일 소유자의 권한
          • 두 번째 자리(0): 파일 소유 그룹의 권한
          • 세 번째 자리(0): 기타 사용자의 권한
            - 4: 읽기 권한(r)
            • 2: 쓰기 권한(w)
            • 1: 실행 권한(x)
    • quotaon -avug: 설정된 쿼터 시작 명령어
      • quotaon: 시스템에서 쿼타를 가동하는 명령어
    • edquota -u linux1: linux1 사용자의 쿼타를 설정하는 명령어
      • edquota: 각 사용자(그룹)의 디스크 쿼타를 설정하는 명령어
      • soft limit, hard limit 제한
    • edquota -p 기준사용자 대상사용자: 특정 사용자의 쿼터를 다른 사용자에게 동일한 설정으로 적용할 때 사용하는 옵션
    • requota /mydata: mydata파일 안의 사용자별 현자 사용량을 확인하는 명령어
      • requota [파일시스템]: 파일시스템의 디스크 사용량을 요약하여 표시, 사용자 할당량과 그룹 할당량 모두 표시
  • 용어 정리

    • Filesystem
      • 사용자별 쿼터를 할당하는 파일 시스템을 의미
      • 앞에서는 /etc/fstab 파일에 /dev/sdb1을 쿼터로 설정
    • blocks, soft, hard
      • 현재 사용자가 사용하는 블록(KB 단위)과 소프트 사용 한도, 하드 사용 한도를 의미
      • (soft:0, hard:0)의 의미 사용 한도가 0이라는 의믹 아니라 사용 한도를 제한하지 않는다는 뜻
    • inodes, soft, hard
      • blocks는 용량을 의미하고, inodes는 inode의 개수를 의미
      • soft(경고), hard(물리적제한)

#설명

  • linux1 사용자는 현재 28KB의 블록을 사용하고 있고, 사용한도를 soft는 15360KB로, hard는 20480KB로 설정하고 있다.
profile
Back-end Developer를 목표로 하고 있는 전진구입니다.

0개의 댓글