由于缓存空间太小,openSUSE 无法启动到 KDM

今天开机发现无法进入 kdm 登陆界面,而是进入命令行模式。刚开始时,以为昨天更新系统引起无法启动到 kdm 的问题,开机进入修复模式。怀疑显卡驱动的问题,查看 Xorg 日志 没有看出问题所在。抱着尝试一下的想法,进入 root 用户,结果 startx 可以启动到 kdm 。不管三七二十一,卸载驱动看看什么情况先。一打开在线更新(由于忘记了 ATI 驱动的包名字,进入 GUI 模式最方便了,搜索相关字符就可以了),系统提示磁盘空间过小!还剩下 286 M 。这时候猜想:“会不会是磁盘空间过小,而导致了无法启动到 kdm ”

为了证实这一想法,进入命令行终端输入: du -sh /*
(普通用户请输入: du -sh /* )

* Mtstyle:~ # du -sh /*
. .7M    /bin
. 4M     /boot
. 6K     /dev
. 2M     /etc
. .0K    /fcitx-sogoupinyin-release-0.0.1
. 69G    /home
. 91M    /lib
. 7M     /lib64
. 6K     /lost+found
. .0K    /media
. .0K    /mnt
. 45M    /opt
* du: cannot access ‘/proc/2233/task/2233/fd/4’: No such file or directory
* du: cannot access ‘/proc/2233/task/2233/fdinfo/4’: No such file or directory
* du: cannot access ‘/proc/2233/fd/4’: No such file or directory
* du: cannot access ‘/proc/2233/fdinfo/4’: No such file or directory
.        /proc
. 6M     /root
* du: cannot access ‘/run/user/1000/gvfs’: Permission denied
. .7M    /run
. .2M    /sbin
. .0K    /selinux
. 8M     /srv
.        /sys
. 1G      /tmp
. 1G     /usr
. .0G    /var

发现了 /tmp 目录占据了 11G 空间,平常这一缓存空间没有占用这么大空间,(本来系统盘才 60 多 G),手动清除。一行命令: rm -R /tmp/*
(普通用户: sudo rm -R /tmp/* )

再次 du -sh /* 查看,/tmp 目录已经变回了 3.1 M 了。
重启系统,验证想法。此时成功进入熟悉的个人 kdm 界面了。

这次,可能是由于近来复制黏贴整理文件比较频繁而导致缓存过大,主盘 SSD 磁盘紧张。
而缓存空间与 kdm 启动是否有直接关系,需要进一步验证。由于,root 能成功进入桌面,有可能是磁盘剩下的空间只够 root 的桌面启动,不够个人桌面启动,但有一点可以说明的是,kdm 成功启动与磁盘的空间有着必然联系,这涉及到 kdm 启动过程,而本人又没有 kdm 启动的相关知识。……在此抛砖引玉,望坛子里的高手提供相关知识…… ╮<(=╯-╰=)>╭

/tmp 下面有一个 kde-kdm 文件夹。

另外缓存空间太小不是说你 /tmp 占用多少 G,是你 /tmp 所在的分区还有没有磁盘空间。

文章前部分已说明,系统分区只剩下 286M,可能这里说明的不够仔细,这是本人的笔误。我这里想查证的就是,究竟是磁盘分区空间影响到 kde 的启动,还是 /tmp 分区没有磁盘空间影响到了 kde 的启动而已。因为 /tmp 分区可以是独立分区的。现在本人的情况是,根目录是独立一个区的,包含有 /tmp,本来就是系统分区的磁盘空间就是不大(64G),只是用 du 命令查看哪个目录大小变得异常而已。/tmp 目录占用的是磁盘空间(根目录同一分区,/tmp 占用的多,其他目录就相对的少了),现该目录下占用的空间多了,整个分区空间就少了。

根据寨主的说法,也就是说,kde 启动前,要在 /tmp 目录下建一个 kde-kdm 的缓存目录吧?!