Ubuntu服务器12.04有7GB的磁盘使用差异

我做了一个新的安装Ubuntu的服务器12.04作为一个KVM虚拟客户端。 我使用了kickstart文件来自动安装,我已经包含了创buildguest的命令以及kickstart文件的分区部分。 这些数字是在全新安装之后采取的,唯一运行的主要服务是ssh服务器。 有7GB的磁盘使用,我不能说明。

Kickstart分区部分

part /boot --fstype ext4 --size 200 part / --fstype ext4 --size 1 --grow 

KVM安装命令

 virt-install -n bigtest -r 4096 --disk path=/var/lib/libvirt/images/bigtest.img,bus=virtio,size=500 \ -c ubuntu-12.04.1-server-amd64.iso --accelerate --network=bridge:br0 --connect=qemu:///system \ --vnc --noautoconsole -v --os-type linux 

磁盘使用情况

运行df和du报告不同的磁盘使用情况,据我了解可能会发生。 8G和512M的区别大概是7G左右。

 root@ubuntu:~# df -h Filesystem Size Used Avail Use% Mounted on /dev/vda5 500G 8.0G 467G 2% / udev 2.0G 4.0K 2.0G 1% /dev tmpfs 792M 220K 791M 1% /run none 5.0M 0 5.0M 0% /run/lock none 2.0G 0 2.0G 0% /run/shm /dev/vda1 188M 34M 146M 19% /boot root@ubuntu:~# du -hs / 512M / 

小客人testing

在名为bigtest的guest虚拟机中,虚拟磁盘是500GB。 当我使用一个大小为10GB的虚拟磁盘创build另一个名为smalltest的guest虚拟机时,df和du的数字分别为764M和512M。

KVM主机报告

现在,如果我们看一下主机文件系统上的kvm图像文件的大小,我们会得到另一个有趣的故事。

 root@vbox1:/var/lib/libvirt/images# du -hs * 753M bigtest.img 744M smalltest.img 

保留的文件系统块

只要尽可能地排除其他的东西,所有这些数字都是在将保留块百分比设置为0%之后进行的。

 root@ubuntu:~# tune2fs -m 0 /dev/vda5 tune2fs 1.42 (29-Nov-2011) Setting reserved blocks percentage to 0% (0 blocks) 

问题

什么是占用这个7GB的物理空间。 如果使用的话,为什么不能反映在主机文件系统的磁盘使用情况。

更新1

我发现了一件非常有趣的事 如果您运行以下命令并重新启动新的数字为df和du是1.1G和875M! 这在正常的预期之内。

 apt-get update apt-get upgrade apt-get dist-upgrade 

以下是我对此做出的一些观察:

  1. 全新安装后,我尝试重新启动很多次,并没有改变8GB的使用
  2. 即使重新启动,运行apt-get更新和升级也不会降低磁盘使用率。
  3. 只有使用apt-get dist-upgrade更新内核时,只有在系统重新启动后,才会回到正常水平。

更新2

我已经在virtualbox中独立testing了这一点,并发生相同的确切行为。 所以这个问题与Ubuntu服务器有关,而与KVM或virtualbox没有任何特别的关系。

更新3

在下面的答案中build议一些额外的命令在机器上运行。

 root@ubuntu:/# du --apparent-size -sh --exclude=/proc / 963M / 

使用ncdu

 ncdu 1.8 ~ Use the arrow keys to navigate, press ? for help --- / ---------------------------------------------------------------- 230.6MiB [##########] /usr 202.4MiB [######## ] /lib 193.0MiB [######## ] /var 23.7MiB [# ] /boot 8.6MiB [ ] /bin 6.7MiB [ ] /sbin 4.9MiB [ ] /etc 220.0KiB [ ] /run 28.0KiB [ ] /root 20.0KiB [ ] /opt e 16.0KiB [ ] /lost+found 8.0KiB [ ] /media 4.0KiB [ ] /dev 4.0KiB [ ] /lib64 e 4.0KiB [ ] /tmp e 4.0KiB [ ] /srv e 4.0KiB [ ] /selinux e 4.0KiB [ ] /mnt e 4.0KiB [ ] /home 0.0 B [ ] /proc 0.0 B [ ] /sys @ 0.0 B [ ] initrd.img @ 0.0 B [ ] vmlinuz Total disk usage: 670.2MiB Apparent size: 128.0TiB Items: 54464 

dist-upgrade之前和之后的Linux内核版本如下:

 Linux ubuntu 3.2.0-29-generic #46-Ubuntu SMP Fri Jul 27 17:03:23 UTC 2012 Linux ubuntu 3.2.0-30-generic #48-Ubuntu SMP Fri Aug 24 16:52:48 UTC 2012 

稀疏文件?

du --apparent-size -sh / report是什么意思?

尝试使用ncdu实用程序来深入ncdu目录树。

什么是实际的内核版本? 也许这只是一个错误。 无论如何,你应该把内核更新到最新的版本吧?