리눅스-디렉토리 당 할당량?


21

다음과 같은 시나리오가 있습니다.

디스크 공간이 많은 /로 마운트 된 단일 파티션.

다양한 디렉토리 (/ pg / tbs1, / pg / tbs2, / pg / tbs3 등)가 있으며이 디렉토리의 총 크기를 제한하고 싶습니다.

한 가지 옵션은 큰 파일을 만든 다음 mkfs로 만들고 루프백을 통해 마운트 한 다음 할당량을 설정하는 것입니다.

디렉토리 당 할당량을 작동시키는 다른 방법이 있습니까?

linux  quota 

루프백을 통해 파일을 마운트한다고해서 실제로 확장 문제가있는 것은 아닙니다. 기본 파일을 확장 한 다음 resize2fs파일 시스템을 확장하는 데 사용 합니다. LVM을 사용하는 것이 더 나은 솔루션이라고 생각하지만 제안한 솔루션에는 생각한 한계가 없습니다.
larsks

또한 btrfs 및 zfs
hanshenrik

답변:


17

ext3을 사용해야한다면 LVM을 사용하는 것이 최선의 해결책 일 것입니다. 프로젝트 당 새로운 파일 시스템을 만듭니다. 다음과 같이 보일 것입니다.

# Create a 10g filesystem for "project1" in volume group "vg0"
lvcreate -L 10g -n project1 vg0

# Create an ext3 filesystem.
mke2fs -j /dev/vg0/project1

# Mount it (obviously you would want this in /etc/fstab)
mount /dev/vg0/project1 /projects/project1

프로젝트 파일 시스템을 쉽게 확장 할 수 있습니다.

# Add 2GB to the volume.
lvextend -L +2g /dev/vg0/project1

# Grow the filesystem.
resize2fs /dev/vg0/project1

6

그룹 권한에 의존하지 않는 경우 각 "quota 디렉토리"에 대해 다른 UNIX 그룹을 사용한 다음 각 디렉토리에 sgid 비트를 설정할 수 있습니다 (따라서 작성된 파일 및 디렉토리는 기본 그룹 대신 디렉토리 그룹에 속함) 생성자 사용자)의 그룹 할당량을 사용합니다.


5

예. XFS 파일 시스템 및 프로젝트 할당량을보십시오. 다른 파일 시스템은이 기능을 제공하지 않습니다.


불행히도 나는 기본 fs를 변경할 수 없습니다. 그러나 XFS에이 기능이 있다는 것을 아는 것이 좋습니다.

5

실제로 모든 가상 메일 사용자에 대해 시스템 사용자를 만들 필요가 없기 때문에 실제로이 작업을 한 동안 원했습니다. 할당량을 가진 ZFS 파일 시스템은 훌륭 할 것이며 zfs-fuse는 매일 발전하지만, 내가 원했던 것은 매우 가벼운 솔루션이었습니다. 마지막으로 다른 파일 시스템에 레이어로 마운트 할 수있는 FUSE 파일 시스템을 작성하기로 결정했습니다 (기본 디렉토리는 실제로 작동합니다). 이 스크립트에는 쉽게 스크립팅 할 수있는 할당량 관리 유틸리티가 있으며 할당량 값은 디렉토리 나 파일에 xattrs로 저장되기 때문에 하나의 마운트 지점에서 임의의 수의 할당량을 지원할 수 있습니다.

나는 메일 서버에서 잠시 동안 테스트 해 왔으며 최근에 청소년기에 도달하여 야생으로 출시 할 준비가되었다고 결정했습니다. 궁금한 점이 있으면 http://code.google.com/p/fusequota/ 에서 확인할 수 있습니다 . 의견을 보내 주셔서 감사합니다.



힘내 거울은 나를 위해 작동하지 않았다. 오류는 없지만 할당량을 초과 할 수 있습니다 (ext4에서 마운트 옵션 rw, relatime, data = ordered)
timdiels

3

각 공유 폴더의 새 파일 시스템은 IMHO 오버 킬입니다. 각 공유 폴더에 대해 새 그룹을 만들고, 공유 폴더의 소유자 그룹을이 그룹으로 설정하고, 스티커 비트를 그룹으로 설정하여 (모든 새 파일 및 디렉토리에이 그룹이 소유자로 설정 됨) 파일 및 폴더에 대한 권한에 acl 목록을 사용하십시오. 그런 다음이 그룹에 할당량을 설정하십시오.


1

디렉토리 당 따옴표를 설정하는 방법을 알지 못합니다.

그러나 제한된 크기의 파일 시스템을 만들려는 아이디어와 함께. 이것은 lvm 이 좋은 솔루션 이 될 수있는 장소 일 수 있습니다 .

lvm을 백업 / 재설치 및 사용할 수 있으며 논리 볼륨에 필요한 최소 공간 만 할당합니다. lvm 논리 볼륨 을 확장하는 것은 매우 쉽습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.