ディスククォータを超えましたが、まだスペースがあります

ディスククォータを超えましたが、まだスペースがあります

「ディスククォータを超える」エラーが発生しますが、パーティションがいっぱいにならず、ユーザーのクォータが無制限です。何が間違っていて、どのように解決しますか?

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

関連情報