Debian、Ubuntu磁盘已满的解决办法

王志勇 发表于 2019年10月11日 10:54

前天有位坛友,说Debian的磁盘已满,所以换用CentOS。正好我在调试中也常遇到这个问题,提示:No space left on device。出现这个问题,一般肯定是在虚拟机中出现,服务器真机通常不会出现这个问题。

以VMware虚拟机为例,很容易出这个问题,这是由于一些VMware版本的bug,无法彻底解决,解决办法只能在建立虚拟机时把内存设置得大一些

比如在建立虚拟机时,硬盘默认为8G、20G,但是这个硬盘设置对于很多虚拟机形同虚设。

对于一些真Live的版本,这个硬盘设置不起作用。而起作用的是内存设置,在真Live版本的系统下,例如debian-live-10.1.0-i386-standard.iso、debian-live-8.2.0-i386-standard.iso、CentOS-6.7-i386-LiveCD.iso这样的系统,VMware是把设置的内存当作了硬盘。不像VPS的真机,内存就是内存,硬盘就是硬盘。

知道了原因,解决办法也就找到了。

建立虚拟机时,内存尽量设置得小一些,因为每次启动虚拟机、或者恢复快照时,都会在物理硬盘写入和“内存”大小一样的临时文件。
我在开发一键LAMP/LNMP包时,发现VMware虚拟机需要设置的内存大小,最小为:

LAMP/LNMP,不安装MySQL,如果安装默认的PHP版本,Debian、Ubuntu在VMware虚拟机中需要设置至少512M内存。
LAMP/LNMP,不安装MySQL,如果安装默认第三方源的PHP 7.X,Debian、Ubuntu在VMware虚拟机中需要设置至少600M内存。
LAMP/LNMP,安装MySQL+PHP 7.X,Debian、Ubuntu在VMware虚拟机中需要设置至少800M内存。
LAMP/LNMP,安装MySQL+PHP 7.X,CentOS 6在VMware虚拟机中需要设置至少700M内存。

上述的这些内存大小,并非服务器真机占用的内存,而是VMware虚拟机把内存、硬盘的临时文件混在一起。
而服务器真机,消耗的内存很小,约100兆~200兆。

上述提到的是真Live版本。有一些虽然标的是Live版本,例如ubuntu-18.04-live-server-amd64.iso和ubuntu-19.04-live-server-amd64.iso,这2个其实不是Live版本,还需要做很多的配置,它们其实是Install版本。还有一些标明是NetInstall的版本,安装时、每次启动时都会产生大量的.vmdk文件,会占用2G~3G空间,用不了多久会增长到30G。我搜遍了网络,暂时无法解决,唯一的解决办法是用真Live版本,因为真Live版本不会产生大量的.vmdk文件。

Install版本、NetInstall版本的虚拟机内存大小设置同上。

为什么需要用VMware虚拟机?可以用来本机练习调试Debian、Ubuntu、CentOS系统,用起来和服务器真机一样。

0条评论:

发表评论:
名字: (*必填)
博客: (可省)

正文:

  记住信息?

王志勇:1980-09-26 (41周岁)
程序设计,前端设计。

版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

与此相关的链接
自由勇专栏

Blog存档 Archives

2021年01月(30)
2020年12月(19)
2020年11月(18)
2020年10月(15)
2020年09月(14)
2020年08月(14)
2020年07月(14)
2020年06月(16)
2020年05月(13)
2020年04月(18)
2020年03月(14)
2020年02月(15)
2020年01月(16)
2019年12月(11)
2019年11月(26)
2019年10月(25)
2019年09月(30)
2019年08月(10)
2019年07月(29)
2019年06月(30)
2019年05月(26)
2019年04月(30)
2019年03月(30)
2019年02月(30)
2019年01月(30)
2018年12月(30)
2018年11月(30)
2018年10月(30)
2018年09月(17)
2016年-2017年(9)
2014年06月-09月(10)
2013年 +

2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

Copyright © 2006-2021 auiou.com All rights reserved.
此Blog程序由王志勇编写