Ubuntu 18.04에서 ext4인 라이브 루트 폴더에 대한 프로젝트 할당량을 어떻게 설정합니까?
ext4 파일 시스템의 프로젝트 할당량과 관련된 문서는 기본적으로 존재하지 않으며 다음을 시도했습니다.
- 설치된 할당량
apt install quota -y
- 루트에 넣고 재부팅하면 파일 시스템이 읽기 전용으로 부팅되고 프로젝트 할당량은
prjquota
없습니다 (/etc/fstab
여기사용자 및 그룹 할당량 대신 prjquota만 사용) - 또한
find /lib/modules/`uname -r` -type f -name '*quota_v*.ko*'
실행되었으며 두 커널 모듈이 모두 발견되었습니다 (/lib/modules/4.15.0-96-generic/kernel/fs/quota/quota_v2.ko
에서/lib/modules/4.15.0-96-generic/kernel/fs/quota/quota_v1.ko
이것지도 시간) GRUB_CMDLINE_LINUX_DEFAULT="rootflags=prjquota"
에 넣고/etc/default/grub
실행update-grub
하고 재부팅하면 컴퓨터가 더 이상 나타나지 않습니다.- 실행
rootflags=quota
하고 다시 시작 하면 루트에서 표시 되고 활성화되지만 루트 플래그와 함께 작동하지 않거나 루트 플래그로 설정되지 않습니다.GRUB_CMDLINE_LINUX="... rootflags=quota"
update-grub
quota
usrquota
prjquota
pquota
project
DIR 저장소 백엔드에 이 정보가 필요합니다.LXD컨테이너 저장 크기를 제한할 수 있습니다. 또 무엇을 시도할 수 있나요?
답변1
tune2fs -O project -Q prjquota /dev/sdaX
장치에서 프로젝트 할당량을 활성화하려면 실행이 절대적으로 필요하다고 들었습니다 . 그래서 저는 전원을 끄거나 라이브 CD를 사용할 필요가 없는 솔루션을 찾았습니다. 이렇게 하려면 시간이 너무 많이 걸리고 VPS 제공업체에 대한 경험상 항상 잘 작동하지 않기 때문입니다. 그리고 지금까지 작동하지 않았던 단계를 스크립트로 바꿀 수 있기를 바랐습니다.
또 다른 질문 덕분에 Ubuntu 18.04에서 나에게 맞는 솔루션을 구성할 수 있었습니다. 당신은 ca가 필요합니다. 이를 수행하려면 4GB RAM이 필요합니다(물론 버전 4.4 이후의 커널도 마찬가지입니다).
출처:
- livecd를 부팅하지 않고 루트 파일 시스템을 축소하는 방법
- http://www.ivarch.com/blogs/oss/2007/01/resize-a-live-root-fs-a-howto.shtml
1. RAMdisk 파일 시스템 만들기
mkdir /tmp/tmproot
mount none /tmp/tmproot -t tmpfs -o rw
mkdir /tmp/tmproot/{proc,oldroot,sys}
cp -a /dev /tmp/tmproot/dev
cp -ax /{bin,etc,opt,run,usr,home,mnt,sbin,lib,lib64,var,root,srv} /tmp/tmproot/
2. 루트를 새로운 RAMdisk 파일 시스템으로 전환
cd /tmp/tmproot
unshare -m
pivot_root /tmp/tmproot/ /tmp/tmproot/oldroot
mount none /proc -t proc
mount none /sys -t sysfs
mount none /dev/pts -t devpts
3. 22번이 아닌 다른 포트에서 SSH를 다시 시작하고 다른 세션에 다시 연결하세요.
nano /etc/ssh/sshd_config
포트를 2211로 변경하세요
다음으로 SSH를 다시 시작하세요.
/usr/sbin/sshd -D &
2211에서 다시 연결
4. /oldroot 또는 /dev/sdaX를 사용하여 프로세스 종료
fuser -km /oldroot
fuser -km /dev/sdaX
5. /dev/sdaX 마운트 해제 및 프로젝트 할당량 기능 적용
umount -l /dev/sdaX
tune2fs -O project -Q prjquota /dev/sdaX
6. 프로젝트 할당량으로 마운트
mount /dev/sda2 -o prjquota /oldroot
7. 물건을 되돌려 놓기
pivot_root /oldroot /oldroot/tmp/tmproot
umount /tmp/tmproot/proc
mount none /proc -t proc
cp -ax /tmp/tmproot/dev/* /dev/
mount /dev/sda1 /boot ### This might be different for you
reboot -f
8. 재부팅 후 할당량 켜기
apt install quota -y
quotaon -Pv -F vfsv1 /
9. 루트에 할당량이 설정되어 있는지 확인하세요.
repquota -Ps /
10. 지속적으로 만들어라
prjquota
루트 옵션에 넣어주세요/etc/fstab
즐기다!