Bug 81653

Summary: no login on full harddisk
Product: [Unmaintained] kdm Reporter: Thorsten Staerk <dev>
Component: generalAssignee: kdm bugs tracker <kdm-bugs-null>
Status: RESOLVED UNMAINTAINED    
Severity: grave CC: d.v.voytik, fargher, finex, kochnorman, mgraesslin, moky.math, rhenning, richih-kde, shafff
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Thorsten Staerk 2004-05-15 21:14:46 UTC
Version:            (using KDE KDE 3.2.0)
Installed from:    SuSE RPMs

Two different ordinary users cannot log in one after the other when on the harddisk (containing / and ~) is no space left. 

There should be an error msg.
Comment 1 Oswald Buddenhagen 2004-05-22 15:53:01 UTC
see bug #81597 for a related comment.
note that space requirements are pretty individual, so it is hard to define some generally useful limits.
anyway, i agree that kde could check for "disk low" situations at startup, possibly by doing a ratio calculation on the df output or whatever. this is not kdm's task, though.
Comment 2 Thorsten Staerk 2004-05-22 18:46:31 UTC
most important to me (!) is that the users do not get the feeling "it just logs me out again when I log in".
Then, there should come up a message "Logging you out again because no space left". That would make error tracking more easy.
Comment 3 Waldo Bastian 2004-07-29 14:30:28 UTC
ksmserver checks for disk full and some other common problems and informs the user.

Seems like that check doesn't work too well then.
Comment 4 Waldo Bastian 2004-07-31 17:56:10 UTC
I notice that if /tmp is unwritable (e.g. due to a full disk) the X server will not fully come up and startkde is never executed, so ksmserver will not have a chance to tell anything to the user.

So I suggest that kdm adopts some of the sanity checks from ksmserver/main.cpp
Comment 5 Oswald Buddenhagen 2005-03-13 23:08:30 UTC
*** Bug 101446 has been marked as a duplicate of this bug. ***
Comment 6 Oswald Buddenhagen 2007-02-10 17:17:48 UTC
*** Bug 138232 has been marked as a duplicate of this bug. ***
Comment 7 Oswald Buddenhagen 2007-03-10 10:47:35 UTC
*** Bug 142775 has been marked as a duplicate of this bug. ***
Comment 8 FiNeX 2008-03-12 16:40:44 UTC
*** Bug 159180 has been marked as a duplicate of this bug. ***
Comment 9 Daniel Nicoletti 2008-05-21 02:21:07 UTC
Hi,
If someone give me the directions to what is the first app called in startkde i can write a simple pach that:
Check for quotas and full disk space at startUp and simply do a 
KMessageBox::Warning("You runned out of space, free some files or buy a new HD :P")
then start dolphin after that check again to see if there's is at least "5 mb" free and start kde otherwise warn again...
i can also do a system service that could check periodicaly for space and quotas, if someone know if there is some working in progress or where should i do that i'll appreciate, someone told me that solid should have something like this.
Comment 10 Oswald Buddenhagen 2008-06-24 20:59:59 UTC
*** Bug 164853 has been marked as a duplicate of this bug. ***
Comment 11 Laurent Claessens 2008-06-24 21:10:08 UTC
One should think about a warning in the logout instead of the login. 

If you try to logout while there is only 0M free, you should be warned that you will no more be able to login again.


Comment 12 Matthias Heinz 2008-06-24 21:45:20 UTC
Doesnt make much sense. Think of a multi user system. Why should a user care about the next user?
Comment 13 Thorsten Staerk 2008-11-29 14:49:33 UTC
I think I have an idea how to fix this, assigning from kdm-bugs-null@kde.org to me
Comment 14 Thorsten Staerk 2008-11-30 17:07:20 UTC
still exists for KDE from today
Comment 15 Thorsten Staerk 2008-11-30 18:43:44 UTC
As far as I can see, kdm does not call startkde. So, yes, sanity checks in kdm are needed.
Comment 16 Thorsten Staerk 2008-11-30 19:30:25 UTC
kdm's possible session types (KDE, GNOME etc) are defined in .desktop files in $KDEDIR/share/apps/kdm/sessions. There is also stated where the startkde resides that will be started by kdm. This brought me on the wrong track - kdm does call startkde.
Comment 17 Thorsten Staerk 2008-11-30 19:40:35 UTC
(In reply to comment #4)
> I notice that if /tmp is unwritable (e.g. due to a full disk) the X server will
> not fully come up and startkde is never executed, so ksmserver will not have a
> chance to tell anything to the user.
> 
> So I suggest that kdm adopts some of the sanity checks from ksmserver/main.cpp
> 
wrong. startkde IS executed, I just tested this scenario.
Comment 18 Oswald Buddenhagen 2008-11-30 20:28:08 UTC
some bugs were fixed since waldo made that comment. ;)
it is still possible that it wouldn't even get to run ksmserver - e.g., if /home is shared with /tmp and the user has a strict quota or the disk is simply *completely* full.
if you want to do it Rightâ„¢,you need to create pam_diskfull (google first - maybe somebody already did :).
Comment 19 Thorsten Staerk 2008-11-30 20:37:04 UTC
Thanks Oswald, but I tested in a completely-full-situation.

startkde is started, but it cannot access X (no xclock, no xmessage, ...). So my proposal is the startkde should return a special value (say 5) to indicate it found there is no more space on /tmp. kdm would need to react on this value - does this find your placet, Ossi?
Comment 20 Oswald Buddenhagen 2008-12-01 00:25:00 UTC
bah, so the error while writing the Xauth temp file still goes undetected and the x server later refuses to allow clients to connect. this needs to be fixed.
Comment 21 Lubos Lunak 2009-06-02 15:32:09 UTC
*** Bug 191452 has been marked as a duplicate of this bug. ***
Comment 22 Richard Hartmann 2009-06-02 15:52:07 UTC
Why is this severity wishlist? In the case I encountered in https://bugs.kde.org/show_bug.cgi?id=191452 , the laptop was completely and utterly broken for my girlfriend. Thankfully, I was near so I could fix it for her.

Otherwise the laptop would have been, literally, useless to her.

If this happens while someone is abroad etc, this is a major issue!

PS: Warning at logout may help, but a warning within kdm, and a way to fix it, are needed.


Unless someone objects Real Soon, I will raise the severity to critical or major as per https://bugs.kde.org/page.cgi?id=fields.html#bug_severity
Comment 23 Richard Hartmann 2009-06-03 12:43:25 UTC
As per discussion in #kde-devel, I am setting this to grave. It will probably not help fixing anything, but at least it's tagged correctly.
Comment 24 Richard Hartmann 2009-06-03 12:48:34 UTC
http://www.kernel.org/pub/linux/libs/pam/modules.html does not list anything which could help.
Comment 25 Richard Hartmann 2009-06-03 17:26:08 UTC
I sent email to upstream.
Comment 26 FiNeX 2009-11-07 10:41:21 UTC
A related bug is this: bug #205630 . 

If the disk is full the splash screen is drawn over the messagebox which indicate that the disk is full, so if the user wait for the login without a mouse click, he will never know that the disk is full because the message is hidden.
Comment 27 Nick Shaforostoff 2011-03-25 14:19:54 UTC
is 194806 a duplicate of this bug?
Comment 28 Oswald Buddenhagen 2011-03-25 15:25:27 UTC
no, this report is currently about missing/incorrect error handling (see comment #20). the other one is about a workaround (quite a hack, in fact).
Comment 29 Nick Shaforostoff 2011-05-13 14:20:18 UTC
i'm thinking about extending disk monitor plasma applet to give a notification to user when the disk space is full
Comment 30 Richard Hartmann 2011-05-13 15:17:14 UTC
While that is helpful in general, this does not help if something else filled the disk or the user does not comprehend the warning.

Background processes, daemons or other users might have filled the disk.
Comment 31 Christoph Feck 2017-01-09 22:56:23 UTC
*** Bug 374688 has been marked as a duplicate of this bug. ***
Comment 32 Nate Graham 2018-04-16 20:26:30 UTC
KDM is unmaintained and not used in KDE Plasma 5.

SDDM is the login manager used in KDE Plasma 5. If you still have this same issue with SDDM, please file an issue on the SDDM bugtracker (after doing a search for existing issues first!): https://github.com/sddm/sddm/issues/