IOError: [Errno 28] Aucun espace disponible sur le périphérique

by renewing my certificate, I have an error:

IOError: [Errno 28]

I followed the recommendations:

the error persists.
This is happening on raspberry pi 2
Raspbian latest version
Letsencrypt version lastest: 0.10.2-1
Certbot version lastest: 0.10.2-1

what should I do?

above the traces

stop nginx
renew letsencrypt Start
Upgrading certbot-auto 0.19.0 to 0.20.0…
Replacing certbot-auto…
Creating virtual environment…
Installing Python packages…
Had a problem while installing Python packages.

pip prints the following errors:

Collecting argparse==1.4.0 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 11))
Downloading argparse-1.4.0-py2.py3-none-any.whl
Collecting pycparser==2.14 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 17))
Downloading pycparser-2.14.tar.gz (223kB) Collecting asn1crypto==0.22.0 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 21))
Downloading asn1crypto-0.22.0-py2.py3-none-any.whl (97kB) Collecting cffi==1.10.0 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 24))
Downloading cffi-1.10.0.tar.gz (418kB) Collecting ConfigArgParse==0.12.0 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 61))
Downloading ConfigArgParse-0.12.0.tar.gz (41kB) Collecting configobj==5.0.6 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 63))
Downloading configobj-5.0.6.tar.gz
Collecting cryptography==2.0.2 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 65))
Downloading cryptography-2.0.2.tar.gz (427kB) Collecting enum34==1.1.2 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 96))
Downloading enum34-1.1.2.tar.gz (46kB) Collecting funcsigs==1.0.2 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 99))
Downloading funcsigs-1.0.2-py2.py3-none-any.whl
Collecting idna==2.5 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 102))
Downloading idna-2.5-py2.py3-none-any.whl (55kB) Collecting ipaddress==1.0.16 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 105))
Downloading ipaddress-1.0.16-py27-none-any.whl
Collecting linecache2==1.0.0 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 108))
Downloading linecache2-1.0.0-py2.py3-none-any.whl
Collecting ordereddict==1.1 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 111))
Downloading ordereddict-1.1.tar.gz
Collecting packaging==16.8 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 113))
Downloading packaging-16.8-py2.py3-none-any.whl
Collecting parsedatetime==2.1 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 116))
Downloading parsedatetime-2.1-py2-none-any.whl
Collecting pbr==1.8.1 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 119))
Downloading pbr-1.8.1-py2.py3-none-any.whl (89kB) Collecting pyOpenSSL==16.2.0 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 122))
Downloading pyOpenSSL-16.2.0-py2.py3-none-any.whl (43kB) Collecting pyparsing==2.1.8 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 125))
Downloading pyparsing-2.1.8-py2.py3-none-any.whl (54kB) Collecting pyRFC3339==1.0 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 134))
Downloading pyRFC3339-1.0-py2.py3-none-any.whl
Collecting python-augeas==0.5.0 (from -r /tmp/tmp.IqZfsEpwrB/letsencrypt-auto-requirements.txt (line 137))
Downloading python-augeas-0.5.0.tar.gz (90kB)
Traceback (most recent call last):
File “/opt/”, line 215, in main
status =, args)
File “/opt/”, line 342, in run
File “/opt/”, line 380, in prepare_files
File “/opt/”, line 620, in _prepare_file
session=self.session, hashes=hashes)
File “/opt/”, line 821, in unpack_url
File “/opt/”, line 663, in unpack_http_url
unpack_file(from_path, location, content_type, link)
File “/opt/”, line 623, in unpack_file
untar_file(filename, location)
File “/opt/”, line 596, in untar_file
shutil.copyfileobj(fp, destfp)
IOError: [Errno 28] Aucun espace disponible sur le périphérique =====================================================

Certbot has problem setting up the virtual environment.

We were not be able to guess the right solution from your pip output.

for possible solutions.
You may also find some support resources at .
renew letsencrypt Start
restart nginx
restart fait

Thanks for your help.

1 Like

You don’t have enough disk space left on your filesystem to install/upgrade Certbot.


df -h
1 Like

i’ll allready do that
it tell me

certbot is allready the newest version (0.10.2-1)

df -h

Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
/dev/root 15G 5,7G 8,1G 42% /
devtmpfs 460M 0 460M 0% /dev
tmpfs 464M 0 464M 0% /dev/shm
tmpfs 464M 6,4M 458M 2% /run
tmpfs 5,0M 4,0K 5,0M 1% /run/lock
tmpfs 464M 0 464M 0% /sys/fs/cgroup
tmpfs 10M 500K 9,6M 5% /tmp
tmpfs 10M 0 10M 0% /var/tmp
/dev/mmcblk0p1 56M 21M 35M 38% /boot
log2ram 40M 3,8M 37M 10% /var/log
tmpfs 93M 4,0K 93M 1% /run/user/1000
tmpfs 93M 0 93M 0% /run/user/0

You have two different Certbot installs:

  • A certbot Raspbian or Debian package, at version 0.10.2, which may be the latest version available in the repository.
  • certbot-auto, currently version 0.19.0, which automatically updates itself to the latest release of Certbot, and is trying to update to version 0.20.0.

I would guess that /tmp is filling up as certbot-auto tries to download and build its dependencies.

You should make /tmp bigger; there are also other options.


You original output indicates that certbot-auto is the package being upgraded, not certbot.

Your /tmp mount is suspiciously small - only 10 megabytes.

I think this is not enough for pip to successfully run.

When I limit my /tmp to only 10mb, I get the same error as you:

IOError: [Errno 28] No space left on device

Certbot has problem setting up the virtual environment.

We were not be able to guess the right solution from your pip

Increase your /tmp mount to a sane amount and try again.


I increase /tmp in /ect/fstab from 10 to 100
then reboot
try to renew the certificat it’s good

thank you very much to all

i’ll try before that it suggested

this for me it’s no so good that increase /tmp directly

Thanks again

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.