FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Imported messages » comp.lang.php » Files getting clobbered when I run out of disk space
Show: Today's Messages :: Polls :: Message Navigator
Switch to threaded view of this topic Create a new topic Submit Reply
Files getting clobbered when I run out of disk space [message #180106] Mon, 07 January 2013 23:49 Go to next message
faraz is currently offline  faraz
Messages: 1
Registered: January 2013
Karma: 0
Junior Member
There was some disk space issues with my server. As a result any script
I had that opened a file for writing would clobber it i.e truncate it to
zero length . Since there was no space left on device, nothing would be
written to it.

Are there any workarounds to this? Here is some code I came up, but it is untested as I currently have disk space on my account:

/////////////////////////////

function check_disk_space() {

global $home_dir;

$fp = fopen( "$home_dir/cgi-bin/scripts/check_disk_space" , "w" );

fwrite ($fp, 'hello world' ) || die_sub ( 'Error checking for disk space' );

fclose ($fp) || die_sub ( 'Error checking for disk space' );

// unlink ( 'check_disk_space' );

} // end function
Re: Files getting clobbered when I run out of disk space [message #180107 is a reply to message #180106] Tue, 08 January 2013 01:07 Go to previous messageGo to next message
Adam Harvey is currently offline  Adam Harvey
Messages: 25
Registered: September 2010
Karma: 0
Junior Member
On Mon, 07 Jan 2013 15:49:30 -0800, faraz wrote:
> There was some disk space issues with my server. As a result any script
> I had that opened a file for writing would clobber it i.e truncate it to
> zero length . Since there was no space left on device, nothing would be
> written to it.
>
> Are there any workarounds to this?

Honestly, the right answer here is to set up a monitoring system that
will alert you if disk space becomes low — trying to deal with this after
the disk has already filled up is a bad idea, since at that point you've
already lost the ability to write files, logs, database files et cetera.

Trying to do this inline in a PHP script is the wrong tool for the job.

Adam
Re: Files getting clobbered when I run out of disk space [message #180108 is a reply to message #180106] Tue, 08 January 2013 03:47 Go to previous messageGo to next message
Peter H. Coffin is currently offline  Peter H. Coffin
Messages: 245
Registered: September 2010
Karma: 0
Senior Member
On Mon, 7 Jan 2013 15:49:30 -0800 (PST), faraz(at)squashclub(dot)org wrote:
> There was some disk space issues with my server. As a result any script
> I had that opened a file for writing would clobber it i.e truncate it to
> zero length . Since there was no space left on device, nothing would be
> written to it.
>
> Are there any workarounds to this? Here is some code I came up, but it is untested as I currently have disk space on my account:
>
> /////////////////////////////
>
> function check_disk_space() {
>
> global $home_dir;
>
> $fp = fopen( "$home_dir/cgi-bin/scripts/check_disk_space" , "w" );
>
> fwrite ($fp, 'hello world' ) || die_sub ( 'Error checking for disk space' );
>
> fclose ($fp) || die_sub ( 'Error checking for disk space' );
>
> // unlink ( 'check_disk_space' );
>
> } // end function

Freeing up some space on the device is out of the question?

--
"If Ace [Double] Books ever came out with an edition of The Bible, both
books would be edited down to 40,000 words, and they'd be renamed
"Master of Chaos" and "The Thing With Three Souls."
-- Terry Carr
Re: Files getting clobbered when I run out of disk space [message #180109 is a reply to message #180106] Tue, 08 January 2013 08:16 Go to previous messageGo to next message
Anders Wegge Keller is currently offline  Anders Wegge Keller
Messages: 30
Registered: May 2012
Karma: 0
Member
faraz(at)squashclub(dot)org writes:

> There was some disk space issues with my server. As a result any script
> I had that opened a file for writing would clobber it i.e truncate it to
> zero length . Since there was no space left on device, nothing would be
> written to it.
>
> Are there any workarounds to this? Here is some code I came up, but
> it is untested as I currently have disk space on my account:
>
> /////////////////////////////
>
> function check_disk_space() {
>
> global $home_dir;
>
> $fp = fopen( "$home_dir/cgi-bin/scripts/check_disk_space" , "w" );
>
> fwrite ($fp, 'hello world' ) || die_sub ( 'Error checking for disk space' );
>
> fclose ($fp) || die_sub ( 'Error checking for disk space' );
>
> // unlink ( 'check_disk_space' );
>
> } // end functio

Use the disk_free_space() function instead. That will give you a
warning in advance, that you use to have your script send you a mail
about the situation.

You should also note that your file could end up being clobbered,
even in situations where you could write this test file. If your
payload would grow the file by more than one disk block, and there was
only one free, the dummy file would be written, but the capacity would
still be exceeded, when you write your actual data.

And finally, as have already been said: It's not the best of times to
handle a full disk, when you have data to write. It's of course better
to avoid loss of already existing data, but you really need to find a
way of avoiding a full disk in the first place.

--
/Wegge

Leder efter redundant peering af dk.*,linux.debian.*
Re: Files getting clobbered when I run out of disk space [message #180110 is a reply to message #180106] Tue, 08 January 2013 15:26 Go to previous messageGo to next message
Jerry Stuckle is currently offline  Jerry Stuckle
Messages: 2598
Registered: September 2010
Karma: 0
Senior Member
On 1/7/2013 6:49 PM, faraz(at)squashclub(dot)org wrote:
> There was some disk space issues with my server. As a result any script
> I had that opened a file for writing would clobber it i.e truncate it to
> zero length . Since there was no space left on device, nothing would be
> written to it.
>
> Are there any workarounds to this? Here is some code I came up, but it is untested as I currently have disk space on my account:
>
<snip code>

I agree with Adam. When you're out of space is too late to detect it,
and PHP is the wrong place to try.

All of my servers monitor disk space (and other things) and send me an
email when anything gets too far out of whack, even if the web server
isn't running. It's all done with freely available tools at the OS level.

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex(at)attglobal(dot)net
==================
Re: Files getting clobbered when I run out of disk space [message #180111 is a reply to message #180106] Tue, 08 January 2013 18:01 Go to previous messageGo to next message
Twayne is currently offline  Twayne
Messages: 135
Registered: September 2010
Karma: 0
Senior Member
In news:89d3884a-015f-42a7-910f-7c1c77ba68d9(at)googlegroups(dot)com,
faraz(at)squashclub(dot)org <faraz(at)squashclub(dot)org> typed:
> There was some disk space issues with my server. As a
> result any script
> I had that opened a file for writing would clobber it i.e
> truncate it to
> zero length . Since there was no space left on device,
> nothing would be
> written to it.
>
> Are there any workarounds to this? Here is some code I
> came up, but it is untested as I currently have disk
> space on my account:

If you mean at the server end, there is nothing you can do about
it. It's their responsibility to keep enough space available to
you.
If you mean a local server, then it's your responsibility.
Either get rid of any quota or get/move it to a larger/another
drive with enough space.

I can't really see the problem - or how it's occurrng. Perhaps if
you provided enough details ...

HTH,

Twayne`

> /////////////////////////////
>
> function check_disk_space() {
>
> global $home_dir;
>
> $fp = fopen( "$home_dir/cgi-bin/scripts/check_disk_space"
> , "w" );
>
> fwrite ($fp, 'hello world' ) || die_sub ( 'Error
> checking for disk space' );
>
> fclose ($fp) || die_sub ( 'Error checking for disk space'
> );
>
> // unlink ( 'check_disk_space' );
>
> } // end function
Re: Files getting clobbered when I run out of disk space [message #180112 is a reply to message #180111] Tue, 08 January 2013 22:20 Go to previous message
M. Strobel is currently offline  M. Strobel
Messages: 386
Registered: December 2011
Karma: 0
Senior Member
Am 08.01.2013 19:01, schrieb Twayne:
> In news:89d3884a-015f-42a7-910f-7c1c77ba68d9(at)googlegroups(dot)com,
> faraz(at)squashclub(dot)org <faraz(at)squashclub(dot)org> typed:
>> There was some disk space issues with my server. As a

> If you mean at the server end, there is nothing you can do about
> it. It's their responsibility to keep enough space available to
> you.

This reminds me of the MSwin administrators staring at the recurring error message
"Ask your system administrator".

/Str.
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: does the php is not popular?i am a phper?
Next Topic: shell script with shell_exec()
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Wed Nov 27 21:22:14 GMT 2024

Total time taken to generate the page: 0.03909 seconds