"디스크 할당량 초과" 오류가 발생하지만 파티션이 가득 차지 않고 사용자의 할당량이 무제한입니다. 무엇이 잘못되었으며 어떻게 해결합니까?
xxx@mc:/tmp$ pyenv install 3.7.6
/home/xxx/.pyenv/plugins/python-build/bin/python-build: line 2048: cannot create temp file for here-document: Disk quota exceeded
mkdir: cannot create directory ‘/tmp/python-build.20220629235336.143991’: Disk quota exceeded
BUILD FAILED (Ubuntu 20.04 using python-build 20180424)
Inspect or clean up the working tree at /tmp/python-build.20220629235336.143991
xxx@mc:/tmp$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 445M 0 445M 0% /dev
tmpfs 98M 1016K 97M 2% /run
/dev/sda 19G 11G 7.5G 58% /
tmpfs 489M 0 489M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sdc 4.8G 20M 4.7G 1% /baks
tmpfs 98M 0 98M 0% /run/user/0
xxx@mc:/tmp$ quota -u
Disk quotas for user xxx (uid 1000): none
답변1
할당량의 목적은 디스크 공간 부족을 방지하는 것이므로 디스크 사용량을 제한하는 것이 좋습니다.앞으로디스크가 꽉 찼습니다.
할당량은 사용자에 대해 설정할 수 있지만 사용자 그룹이 사용하는 집단 저장 공간을 제한하는 데에도 사용할 수 있습니다.
귀하의 경우 유효한 사용자 할당량이 없음을 나타냅니다.
및를 사용하여 그룹 할당량을 봅니다 quota -g
.댓글에 따르면, 이로 인해 문제가 발생한 것 같습니다. 또한 조금 이상한 점은 디렉토리가 /tmp
연결된 시스템의 자체 파일 시스템이 아니라는 것입니다.tmpfs
답변2
같은 문제가 발생했습니다. 'quota -su;'는 /tmp의 사용자 할당량에 도달했지만 꽉 차지 않았음을 확인하지만 'find /tmp -user $USER'는 비어 있는 것으로 나타나고 'quota -sg | 관련된 그룹 할당량은 없습니다. 그래서 시스템에서 내 tmp 할당량이 초과되었다고 말하는 이유를 모르겠습니다.
해결 방법을 찾았습니다. bash 임시 파일의 위치를 변경하세요.
$ mkdir -p ~/tmp
$ export TMPDIR=~/tmp
$ echo "export TMPDIR=~/tmp" >> ~/.bashrc