Michael
Michael

Reputation: 595

What does "write failed: No space left on device" mean?

I am getting these errors on my site, yet i haven't changed any code or anything, so I don't why this is happening.

Warning: Unknown(): write failed: No space left on device (28) in Unknown on line 0

Warning: Unknown(): Failed to write session data (files). 
Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0

Upvotes: 31

Views: 143027

Answers (6)

Amana Bam
Amana Bam

Reputation: 1

HTTP request returned status code 500: { "message": "fwrite(): write of 1913 bytes failed with errno=28 No space left on device", "exception": "ErrorEx (truncated...) goverment payment problem

Upvotes: 0

Guilherme Martins
Guilherme Martins

Reputation: 1

try use this command on console:

php bin/console cache:clear

Upvotes: 0

javier_domenech
javier_domenech

Reputation: 6263

If you have partitions (df -h) and the one you're hosting the mysql is full.

Move the folders that are more size consuming to the new partition, in my case mv /var/mail /home, and create a symink sudo ln -s /home/mail mail. You can move mysql itself.

Upvotes: 1

Angelinux
Angelinux

Reputation: 173

df -h

to look /tmp space left.

If /tmp is over 100%

cd /tmp

rm -r ./* -f

And you can save sessions again.

Upvotes: 4

Fernando
Fernando

Reputation: 1124

In a shared hosting, change the location where sessions are saved.

Create the directory: /public_htm/tmp, give the permissions (777) <- then you have to tune it (for security).

Create a file .htaccess in the directory /public_htm/tmp with:

order deny, allow
deny from all
allow from 127.0.0.1

And in your PHP script, on top (in your front controller):

session_save_path(dirname($_SERVER['DOCUMENT_ROOT']).'/public_html/tmp');

Important: You must be added before session_start()

Check this with a script:

<?php
session_save_path(dirname($_SERVER['DOCUMENT_ROOT']).'/public_html/tmp');
session_start();
$_SESSION['Text'] = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed quis nunc eu ut elit eget adipiscing facilisis turpis."
phpinfo();
?>

Check if changed the directive "session.save_path"

Upvotes: 7

nicolaas
nicolaas

Reputation: 1881

I'm assuming you're hosting your site on a shared hosting provider Basicly the error means that the server has run out of disk space, so it can't complete the sql commands

Just call/email the hosting company and they should fix it for you

Upvotes: 19

Related Questions