vLent.nl

Practicing software development

IOError: [Errno 28] No space left on device

| Filed under:

For the second time in the one month, I ran into this problem. Here's how I solved it. (As a reminder for myself the next time I need it...)

During a migration of the Plone site of one of our customers, I ran out of space on /tmp. Frustrating, especially if you've been waiting for quite some time already. If you've ran into this problem or expect that you will not have enough space in the tmp directory, start the instance like this:

$ TMPDIR=/path/to/alternative/tmp/dir bin/instance start

Now the temporary stuff will be written to /path/to/alternative/tmp/dir instead of /tmp.

Update (2009-05-30):

After the comment by Wouter, I tried to include the alternative tmp directory in the buildout configuration. I'm under the impression that just adding the lines in the [instance] section doesn't work directly: the <buildout>/var/tmp directory doesn't seem to be generated when running "bin/buildout" and thus Zope doesn't use it. I solved this by using the ore.recipe.fs package:

[parts]
...
tmp

[tmp]
recipe = ore.recipe.fs:mkdir
path = ${buildout:directory}/var/tmp

[instance]
...
environment-vars =
TMP ${tmp:path}

If anyone knows a better way (Wouter?) please leave a comment...

Comments

I put it in my buildouts:
[instance]
environment-vars =
TMP ${buildout:directory}/var/tmp
...


--
WouterVH
By Anonymous User on
Nice! Thanks for the hint!

Mark
By Mark van Lent on
Thank you for this.. I've been struggling for hours with a zeo cluster where one or more clients would fail.. I had to tweak your idea to work with multiple front ends and that did solve my problem!! For each client I specified:

environment-vars =
TMP ${buildout:directory}/parts/client1/var/tmp

(where client1 is the respective instance name)
and to make sure they exist I added one line for each client like:

[chown]
...
command =
mkdir ${buildout:directory}/parts/client1/var/tmp -p --mode=777

Admittedly the 777 mode is probably overkill but I wanted to be sure it worked. Perhaps someone can clarify the correct setting required.

Anyway, thanks to you folks I got mine running and I'm gloriously indebted.
Ian F. Hood
By Anonymous User on
Thanks for the feedback. Glad to be of help. :)

Regarding the mode: I haven't used this for more complex buildouts yet. That is: the user running the buildout is the same user that runs zope.
By Mark van Lent on
Thanks, I made the temp tmp directory, used your command and bin/buildout -n worked!

Thanks,
David G
By Anonymous User on
I am trying to install UBUNTU allongwith win xp as dual boot from USB pen drive (16 GB) but during in the middle of instalation following error occur ie.
IOError: [Errno 28] No space left on device.
can u explain what is this error?
By shahid on
Sorry Shahid, I never tried to install Ubuntu on a pen drive. So I can only ask the most obvious question: are you sure there's enough space left to install Ubuntu?

You might want to post your question on the Ubuntu forums at http://ubuntuforums.org/ since there's more Ubuntu specific knowledge available there.