Linux에서 디스크 파티션에 일일 쓰기 제한을 적용하는 방법은 무엇입니까?

Linux에서 디스크 파티션에 일일 쓰기 제한을 적용하는 방법은 무엇입니까?

내 디스크 파티션에 특정 쓰기 제한을 적용하고 싶습니다. 애플리케이션이 특정 디스크 파티션에 시간, 일 또는 주별로 쓸 수 있는 데이터 양을 제한하고 싶습니다.

Linux의 특정 디스크 파티션에 대해 시간별/일별/주별 쓰기 제한을 지정하는 표준 방법이 Linux에 있습니까? cgroupsV2는 특정 파티션에 대해 초당 IO 제한에 대한 옵션을 제공하는 것으로 보이지만 시간별/일별 제한에 대한 옵션은 표시되지 않습니다.

답변1

이 두 리소스를 사용하면 디스크 파티션에 시간 제한 쓰기 할당량을 설정할 수 있습니다. 첫 번째는 사전 설치된 xfs_quota 유틸리티이고 두 번째는 Git Hub를 통해 사용할 수 있는 "quotatool"입니다.

첫 번째 리소스: xfs_quota

xfs_quota는 대화식으로 또는 명령을 통해 사용할 수 있는 유틸리티입니다. 이를 사용하면 특정 사용자, 사용자 그룹 또는 프로젝트를 기반으로 특정 시간에 대한 쓰기 할당량을 설정할 수 있습니다.

관리 명령을 사용하려면 다음과 같이 대화형 유틸리티를 실행합니다. (명령의 일부로 구성을 설정하기 전에 f 스위치를 포함시켜 "경로: 외부 파일 시스템. 활성화하려면 -f를 호출하여 xfs_quota를 호출하세요."라는 오류를 방지했습니다.) :

#xfs_quotas -xf

xfs_quota> help

df [-bir] [-hN] [-f file] -- show free and used counts for blocks and inodes

disable [-gpu] [-v] -- disable quota enforcement

....

Use 'help commandname' for extended help.

Red Hat 명령 예, /target/path 파일 시스템의 그룹 계정에 대해 각각 소프트 블록 제한 1000m 및 하드 블록 제한 1200m를 설정하려면 다음 명령을 사용합니다.

xfs_quota -x -c 'limit -g bsoft=1000m bhard=1200m accounting' /target/path

여기에서 xfs_quota에 대한 자세한 내용을 읽을 수 있습니다.https://linux.die.net/man/8/xfs_quota

두 번째 리소스: quotatool

Linux, Mac OS X, FreeBSD, OpenBSD, NetBSD, Solaris 및 AIX의 파일 시스템 할당량을 위한 명령줄 유틸리티

시간 매개변수(t)는 선택적 "+" 또는 "-" 수정자, 숫자 및 "초", "분", "시간", "일", "주" 및 " 월".

귀하의 질문에 대한 답변의 예: /home에서 전역 차단 유예 기간을 1주일로 설정합니다.

quotatool -u -b -t "1 week" /home

여기에서 도구에 액세스할 수 있습니다.https://github.com/ekenberg/quotatool

관련 정보