5

Ubuntu 10 で単純な gcc コマンドを使用して C コードを作成しようとしていますが、何らかの理由でエラーが発生し続けます。

Cannot create temporary file in /tmp/: No space left on device

ただし、ディスクには十分なスペースがあります。df -h の出力は次のとおりです。

Filesystem            Size  Used Avail Use% Mounted on
/                     3.7G  2.4G  1.1G  70% /
devtmpfs              312M  112K  312M   1% /dev
none                  312M   24K  312M   1% /dev/shm
none                  312M   80K  312M   1% /var/run
none                  312M     0  312M   0% /var/lock
none                  312M     0  312M   0% /lib/init/rw

inode について疑問がある場合は、df -i を実行します。

Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/                     240960  195198   45762   82% /
devtmpfs               79775     609   79166    1% /dev
none                   79798       3   79795    1% /dev/shm
none                   79798      41   79757    1% /var/run
none                   79798       2   79796    1% /var/lock
none                   79798       1   79797    1% /lib/init/rw

私もtouch /tmp/test成功できたので、ドライブにスペースがあることがわかりました。なぜgccが突然発作を起こすことにしたのかについてのアイデアはありますか? (以前は動いていました)よろしくお願いします。

4

2 に答える 2

9

あなたの /tmp ディレクトリは実際にはマウントされているように見えますがdevtmpfs、私の記憶が正しければ実際にはあなたのコンピュータの RAM です。

いつでも再起動して、それが役立つかどうかを確認したり、仮想メモリ パーティションを増やしたり、実行中のプログラムを閉じて、それが役立つかどうかを確認したりできます。さらに、/tmp から不要なファイルを削除することもできます。これらのファイルは、少なくともセッションの存続期間中は揮発性があるためです。

于 2013-02-05T03:26:40.700 に答える
5

中間ファイルは大きすぎるため/tmp、別の一時ディレクトリ(TMPDIR=/var/tmp g++ ...)を使用すると役立つ場合があります。

于 2013-02-05T03:58:41.083 に答える