Linux 에서 디스크 할당량 활성화 여부 확인 방법

LinuxBeginner
지금 연습하기

소개

이 랩에서는 Linux 시스템에서 디스크 할당량 (disk quota) 이 활성화되고 구성되었는지 확인하는 방법을 배우게 됩니다. 세 가지 주요 방법을 탐구할 것입니다: 현재 사용자 및 그룹 할당량 상태를 확인하기 위해 quota 명령어를 사용하고, 할당량과 관련된 파일 시스템 마운트 옵션을 확인하기 위해 /etc/fstab 파일을 검사하며, 특정 파일 시스템의 할당량 설정을 검사하기 위해 quotacheck 명령어를 활용합니다. 이 랩을 마치면 Linux 환경에서 디스크 할당량의 존재 여부와 구성을 효과적으로 확인할 수 있게 됩니다.

quota 명령어로 할당량 상태 확인

이 단계에서는 quota 명령어를 사용하여 사용자 및 그룹의 디스크 할당량 상태를 확인하는 방법을 배우게 됩니다. 디스크 할당량은 사용자 또는 그룹이 파일 시스템에서 사용할 수 있는 디스크 공간의 양 또는 파일 수를 제한하는 데 사용됩니다.

먼저, 현재 사용자의 할당량 상태를 확인해 보겠습니다. 아직 열려 있지 않다면 터미널을 엽니다. 데스크탑 왼쪽의 Xfce 터미널 아이콘을 클릭하여 터미널을 열 수 있습니다.

이제 다음 명령어를 입력하고 Enter 키를 누르세요:

quota

파일 시스템에서 할당량이 활성화되고 구성된 경우 다음과 유사한 출력을 볼 수 있습니다:

Disk quotas for user labex (uid 5000):
     Filesystem  blocks   soft   hard  inodes   soft   hard
      /dev/sda1       0      0      0       0      0      0

출력을 자세히 살펴보겠습니다:

  • Filesystem: 할당량이 적용된 파일 시스템 (예: /dev/sda1).
  • blocks: 현재 디스크 공간 사용량 (블록 단위, 일반적으로 1KB 블록).
  • soft: 디스크 공간에 대한 소프트 제한. 사용량이 이 제한을 초과하면 경고가 발생합니다.
  • hard: 디스크 공간에 대한 하드 제한. 사용량은 이 제한을 초과할 수 없습니다.
  • inodes: 현재 사용된 파일 수.
  • soft: 파일 수에 대한 소프트 제한.
  • hard: 파일 수에 대한 하드 제한.

이 경우, 출력은 모두 0 으로 표시되어 /dev/sda1에서 labex 사용자에 대해 특정 할당량이 설정되지 않았음을 나타냅니다.

사용자 이름을 인수로 제공하여 특정 사용자의 할당량 상태를 확인할 수도 있습니다. 예를 들어, root 사용자의 할당량을 확인하려면 다음과 같이 입력합니다:

quota root

root 사용자에 대해 할당량이 설정되지 않은 경우 출력도 0 으로 표시될 것입니다:

Disk quotas for user root (uid 0):
     Filesystem  blocks   soft   hard  inodes   soft   hard
      /dev/sda1       0      0      0       0      0      0

마찬가지로, -g 옵션과 그룹 이름을 사용하여 그룹의 할당량 상태를 확인할 수 있습니다. 예를 들어, labex 그룹의 할당량을 확인하려면:

quota -g labex

그룹 할당량이 설정되지 않은 경우에도 다음과 유사한 출력을 볼 수 있습니다:

Disk quotas for group labex (gid 5000):
     Filesystem  blocks   soft   hard  inodes   soft   hard
      /dev/sda1       0      0      0       0      0      0

quota 명령어는 할당량이 활성화된 경우 현재 사용량과 제한을 빠르게 확인할 수 있는 방법입니다. 다음 단계에서는 파일 시스템에서 할당량이 활성화되었는지 확인하는 방법을 살펴보겠습니다.

다음 단계로 진행하려면 **계속 (Continue)**을 클릭하세요.

/etc/fstab 에서 할당량 확인

이전 단계에서는 quota 명령어를 사용하여 현재 할당량 상태를 확인했습니다. 그러나 quota 명령어는 파일 시스템에서 할당량이 이미 활성화된 경우에만 정보를 표시합니다. 파일 시스템이 할당량에 대해 구성되었는지 확인하려면 /etc/fstab 파일을 살펴봐야 합니다.

/etc/fstab 파일 (파일 시스템 테이블) 은 시스템의 모든 파일 시스템에 대한 정보를 포함하는 구성 파일입니다. 부팅 시 파일 시스템을 마운트하는 방법을 운영 체제에 알려줍니다. 할당량 옵션은 종종 이 파일에 지정됩니다.

cat 명령어를 사용하여 /etc/fstab의 내용을 볼 것입니다. /etc/fstab은 시스템 파일이므로, 접근하기 위해 sudo가 필요할 수 있지만, 읽기에는 일반적으로 cat이 필요하지 않습니다.

터미널에 다음 명령어를 입력하고 Enter 키를 누르세요:

cat /etc/fstab

다음과 유사한 출력을 볼 수 있으며, 파일 시스템과 해당 마운트 옵션이 나열됩니다:

## /etc/fstab: static file system information.
#
## Use 'blkid' to print the universally unique identifier for a
## device; this may be used with UUID= as a more robust way to name devices
## that works even if disks are added or removed. See fstab(5).
#
## <file system> <mount point>   <type>  <options>       <dump>  <pass>
/dev/sda1       /               ext4    errors=remount-ro 0       1
/dev/sda2       none            swap    sw              0       0

루트 파일 시스템 (/) 에 해당하는 줄을 찾으세요. 일반적으로 /dev/sda1이며 /에 마운트됩니다. 이 줄의 <options> 열에서 usrquota 또는 grpquota와 같은 옵션을 찾습니다.

  • usrquota: 이 파일 시스템에 대해 사용자 할당량이 활성화되었음을 나타냅니다.
  • grpquota: 이 파일 시스템에 대해 그룹 할당량이 활성화되었음을 나타냅니다.

위의 예제 출력에서 /dev/sda1에 대한 옵션은 errors=remount-ro입니다. 이는 이 구성에서 기본적으로 사용자 및 그룹 할당량이 활성화되지 않았음을 의미합니다.

할당량이 활성화된 경우, 해당 줄은 다음과 유사할 수 있습니다 (이것은 예시일 뿐이며, 현재 환경에서 이 내용을 볼 것으로 예상하지 마세요):

/dev/sda1       /               ext4    errors=remount-ro,usrquota,grpquota 0       1

/etc/fstab을 검사하여 파일 시스템이 마운트될 때 할당량을 지원하도록 구성되었는지 확인할 수 있습니다.

다음 단계로 이동하려면 **계속 (Continue)**을 클릭하세요. 다음 단계에서는 quotacheck 명령어를 살펴보겠습니다.

quotacheck 로 할당량 설정 검토

이 단계에서는 quotacheck 명령어를 사용합니다. quotacheck 명령어는 디스크 사용량을 위해 파일 시스템을 스캔하고, 할당량 파일을 생성, 확인 및 복구하는 데 사용됩니다. 할당량을 설정하거나 확인하는 데 중요한 단계입니다.

quotacheck를 실행하기 전에, 파일 시스템을 스캔해야 한다는 것을 이해하는 것이 중요합니다. 정확한 결과를 얻으려면 파일 시스템을 언마운트하거나 읽기 전용으로 마운트하는 것이 이상적입니다. 그러나 라이브 시스템에서는 루트 파일 시스템 (/) 에 대해 이것이 불가능한 경우가 많습니다. quotacheck는 마운트된 파일 시스템에서 실행될 수 있지만, 경고를 발생시킬 수 있습니다.

LabEx 환경에서 작업하고 있으며 루트 파일 시스템을 쉽게 언마운트할 수 없으므로, 마운트된 파일 시스템에서 quotacheck를 실행합니다.

quotacheck의 기본 구문은 quotacheck [options] filesystem입니다. 다음 옵션을 사용합니다:

  • -c: 새 할당량 파일 (aquota.useraquota.group) 을 생성합니다.
  • -u: 사용자 할당량을 확인합니다.
  • -g: 그룹 할당량을 확인합니다.
  • -v: 자세한 출력 (verbose output) 을 표시하여 명령어가 수행하는 작업을 보여줍니다.
  • -M: 파일 시스템을 읽기 전용으로 다시 마운트하려고 시도하지 않습니다.

파일 시스템을 스캔하고 할당량 파일을 생성/수정하려면 루트 권한이 필요하므로 sudo와 함께 quotacheck를 실행해야 합니다.

터미널에 다음 명령어를 입력하고 Enter 키를 누르세요:

sudo quotacheck -cugvM /

quotacheck가 파일 시스템을 스캔하고 있음을 나타내는 출력을 볼 수 있습니다. 정확한 출력은 시스템 상태에 따라 다를 수 있지만, 다음과 유사할 것입니다:

quotacheck: Scanning /dev/sda1 [/] done
quotacheck: Checked 10 directories and 100 files

이 명령어는 루트 파일 시스템 (/) 을 스캔하고, 사용자 (-u) 및 그룹 (-g) 디스크 사용량을 확인하고, 존재하지 않는 경우 새 할당량 파일 (-c) 을 생성하고, 자세한 출력을 제공 (-v) 하며, 파일 시스템을 읽기 전용으로 다시 마운트하려는 시도를 피합니다 (-M).

quotacheck를 실행한 후, /etc/fstab에서 파일 시스템이 할당량에 대해 구성되어 있고 할당량 패키지가 설치된 경우, 일반적으로 파일 시스템의 루트에 할당량 파일 (aquota.useraquota.group) 을 생성하거나 업데이트합니다 (예: /aquota.user, /aquota.group).

ls 명령어를 사용하여 이러한 파일의 존재 여부를 확인할 수 있습니다:

ls -l /aquota.*

할당량 파일이 생성된 경우, 다음과 같은 출력을 볼 수 있습니다 (다시 말하지만, 이는 시스템 구성 및 할당량이 실제로 활성화되었는지 여부에 따라 다릅니다):

-rw------- 1 root root 6144 Feb 13 10:00 /aquota.group
-rw------- 1 root root 7168 Feb 13 10:00 /aquota.user

현재 LabEx 환경에서는 할당량이 완전히 구성되지 않았으므로, 이러한 파일이 생성되지 않거나 크기가 0 으로 표시될 수 있습니다. 핵심은 quotacheck가 실제 디스크 사용량을 기반으로 이러한 할당량 파일의 데이터를 생성하고 유지 관리하는 데 사용되는 도구라는 것을 이해하는 것입니다.

이 단계는 할당량 상태 및 구성 파일 확인에 대한 탐구를 마무리합니다. 현재 사용량을 확인하기 위해 quota를 사용하는 방법, 할당량 마운트 옵션을 확인하기 위해 cat /etc/fstab을 사용하는 방법, 파일 시스템을 스캔하고 할당량 데이터 파일을 관리하기 위해 quotacheck를 사용하는 방법을 배웠습니다.

랩을 완료하려면 **계속 (Continue)**을 클릭하세요.

요약

이 랩에서는 Linux 에서 디스크 할당량이 활성화되어 있는지 확인하는 방법을 배웠습니다. 먼저 quota 명령어를 사용하여 사용자 및 그룹의 디스크 할당량 상태를 확인하고, 파일 시스템, 블록, 블록 및 inode 에 대한 소프트 및 하드 제한과 같은 출력 필드를 이해했습니다. 현재 사용자 및 root와 같은 특정 사용자에 대한 할당량을 확인하는 연습을 했습니다.

또한 이 랩에서는 /etc/fstab 파일을 검사하여 마운트된 파일 시스템에 usrquota 또는 grpquota 옵션이 있는지 확인하여 할당량 구성을 확인하는 방법을 안내했습니다. 마지막으로, 디스크 사용량을 위해 파일 시스템을 스캔하고 할당량 파일을 업데이트하는 quotacheck 명령어를 사용하는 방법을 배웠습니다. 이는 할당량을 설정하거나 확인하는 데 중요한 단계입니다.