这本身不是一个问题,而是基于对 Linux 文件系统的无知而提出的信息请求。这个简短的问题是:
如何找出运行 Ubuntu 的卷上有多少可用空间和已用空间?
更多详情:
我正在一个 64Gb USB3 棒上运行 Ubuntu 12.04,它是通过启动一年前的 Ubuntu 12.04 DVD 并运行启动盘创建器创建的。原因是我的硬盘上装有 Windows 7 的主引导记录已经坏了,在等待恢复盘的同时,我正在通过 USB 或 DVD 运行 Ubuntu 作为“试用版”。(恢复 Windows 后将继续运行 Ubuntu,因为我重新发现了我对企鹅的热爱 :o))
在将 Ubuntu 安装到硬盘上后,我运行了软件更新应用程序,它下载了大约 450Mb 的更新,并花了几个小时才安装到硬盘上。有几次我收到一条消息,说磁盘空间不足。所以我查看了文件管理器(或现在的任何称呼),但看不到列出的硬盘,只是:
- 系统
- 硬盘(列为 479Gb 文件系统)
- Windows 创建的另外两个分区
- 当我尝试打开“4.3GB 文件系统”时,出现错误“无法找到 /cow”,而当我尝试卸载时,它告诉我无法卸载因为它尚未安装 - D'OH!!
编辑:文件管理器的屏幕截图
我看不到运行 Ubuntu 的 USB 记忆棒。它去哪了,有人知道吗?
这与我之前关于系统工具的问题,因为我正尝试获取最新版本的 Ubuntu 系统的控制权和知识。
答案1
在这种情况下,我会使用以下几种工具df:dumount
du对于查找填满文件系统的罪魁祸首最有用:
$du -h --max-depth=1
然而,在文件系统根目录下/
,您无权访问所有目录以读取文件大小,因此您需要sudo
获得完全权限。我刚刚在我们的服务器上执行了此操作/
,我们的团队规模很大,所以我放弃了。
示例如下:
15:08 chris@server /$ sudo du -h --max-depth=1
8.0K ./mnt
16K ./build
4.1G ./opt
4.0K ./backup
12K ./media
13M ./lib32
38M ./root
300K ./dev
6.0M ./sbin
2.4G ./lib
2.9G ./var
4.0K ./selinux
50M ./home
2.3G ./usr
0 ./proc
7.9M ./bin
5.9M ./tmp
200K ./srv
4.0K ./run
0 ./sys
4.0K ./cdrom
我点击是ctrl+c因为我已经等待完了/raid
...那么让我们看看 df 说了什么:
15:14 chris@server /$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sdb7 92G 9.0G 79G 11% /
none 1.9G 300K 1.9G 1% /dev
none 1.9G 0 1.9G 0% /dev/shm
none 1.9G 7.3M 1.9G 1% /var/run
none 1.9G 0 1.9G 0% /var/lock
none 1.9G 0 1.9G 0% /lib/init/rw
/dev/sda1 3.6T 2.3T 1.2T 66% /raid
/dev/sdb9 276M 88M 175M 34% /boot
/dev/sdb8 88G 3.1G 81G 4% /var
哦,哇,团队已经满了三分之二,也许值得等待一下来弄清楚?
15:15 chris@server /raid$ !du
du -h --max-depth=1
852M ./www
20K ./investedin
9.8M ./ups
99M ./dealers
3.0G ./photoshoot
69M ./catalog_tech
86G ./misc
4.9G ./marketing
16G ./pics
193G ./Video
37G ./mechanical_design
14M ./tmp
16K ./lost+found
93G ./programs
16K ./.Trash-1000
17G ./Products
1.3G ./vendors
1.1G ./docs
128K ./.Trash-1001
20M ./customers
2.9M ./po_invoices
18M ./_SCANS
好吧,它仍然在搅动,所以我会耐心等待并让它在后台运行。分析上述内容,我查看了目录的大小,看看哪个目录占用了最多的磁盘空间。注意./programs
是 93G。如果这是意料之外的,你就开始深入研究这棵树。
我更喜欢,du -h --max-depth=1
因为有了更多的深度,你会得到大量的输出,在这种情况下,你可能只需要一个日志疯狂的目录(比如在网站上?)
编辑后添加:
并不mount
总是适用于您的具体情况,但是,我曾使用 Linux 和上述技术来挽救没有可用空间的 Windows 安装。mount
可以帮助您查看硬盘驱动器安装在哪里。另请注意 的df
输出中还提示了mount
。
15:25 chris@server ~$ mount
/dev/sdb7 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
none on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /dev type devtmpfs (rw,mode=0755)
none on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
none on /dev/shm type tmpfs (rw,nosuid,nodev)
none on /var/run type tmpfs (rw,nosuid,mode=0755)
none on /var/lock type tmpfs (rw,noexec,nosuid,nodev)
none on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
/dev/sda1 on /raid type ext4 (rw)
/dev/sdb9 on /boot type ext4 (rw)
/dev/sdb8 on /var type ext4 (rw)
上面告诉我们,第一个硬盘的第一个分区(硬件 RAID 5)位于 /raid 上,而计算机中的实际“硬盘”是 sdb。sdb7 让/
我想起这是我在这台服务器上的这个磁盘上安装的第 2 或第 3 个操作系统。我将其放在/var
一个单独的分区上,以防日志出现问题。