本文介绍一个可视化地查看 Linux 系统磁盘使用情况的工具——Duc。

Duc 是一个工具集,可以在类 Unix 操作系统上建立索引、检查和可视化系统的磁盘。与其它相似工具相比,它可以正常工作在超大规模的文件系统上。测试表明,Duc 可以毫无问题地工作在 500,000,000 个文件,总大小有几个 PB 的磁盘上。

Duc 是一个非常快速及便捷的工具,它将你的磁盘使用情况经优化后保存在数据库里。所以,在索引建立之后,你可以很快速地找到你的文件。

此外,它有很多种用户界面,并支持多种数据库格式。它所支持的用户界面有如下:

  1. 命令行界面;
  2. Ncurses 终端界面;
  3. X11 GUI
  4. OpenGL GUI

支持的数据库格式有如下:

  • Tokyocabinet,
  • Leveldb,
  • Sqlite3.

默认情况下,Duc 使用 Tokyocabinet 作为数据库。

Duc 工具的安装

对于 Debian 系及它的衍生系统,安装非常方便,如下:

$ sudo apt-get install duc

对于其它系统,可以使用源码安装。首先可以下载它的源码:

$ wget https://github.com/zevv/duc/releases/download/1.4.4/duc-1.4.4.tar.gz

然后再使用以下命令去编译并完成安装:

$ tar -xzf duc-1.4.4.tar.gz
$ cd duc-1.4.4
$ ./configure
$ make
$ sudo make install

Duc 工具的使用方法

Duc 工具使用的一般方法如下:

$ duc <subcommand> <options>

你可以使用下列命令来查看 Duc 的常规选项及子命令列表:

$ duc help

你也可以使用下列命令来查看 Duc 的某个特定子命令:

$ duc help <subcommand>

要查看所有命令及其选项的详尽列表,只需运行:

$ duc help --all

接下来,我们具体来看 Duc 工具的使用方法。

1. 创建数据库索引

在最开始的时候,我们要为我们的磁盘文件系统创建一个索引。创建的过程很简单,只需运行 duc index 命令即可。

比如,如果要为 /home 目录创建索引,只需运行:

$ duc index /home

以上命令将为你的 /home 目录创建索引,并将索引保存在 $HOME/.duc.db 文件里。如果你在该目录下又创建了新文件,那么只需再次运行上述命令即可重新创建新的索引。

2. 查询数据库索引

Duc 有多种子命令用来查询及浏览索引。如果需要查询可用索引列表,需要运行:

$ duc info

运行结果如下:

Date Time Files Dirs Size Path
2019-04-09 15:45:55 3.5K 305 654.6M /home

正如你所看到的结果,我已经为 /home 目录建立了索引。如果想要列出当前工作目录下所有的文件及目录,你可以运行:

$ duc ls

如果需要列出特定目录下的文件及目录,如:/home/alvin/Downloads ,只需将路径传递给上述命令即可:

$ duc ls /home/alvin/Downloads

如果需要知道某个特定子命令的使用方法,可以使用它的参考文档。比如你想知道 ls 子命令的使用方法,可以这样执行:

$ duc help ls

3. 可视化磁盘使用情况

在以上部分,我们已经知道了如何用 duc 命令来列出文件及目录。但是,这样并不直观。我们还可以使用图表来显示文件的尺寸。

如果我们想要用图表的方式来显示一个给定的目录,可以如下使用 ls 子命令:

$ duc ls -Fg /home/alvin

输出结果如下:

在这个结果里,ls 子命令查询并列出了指定目录里所有的文件及目录,并用图表的方式显示出来。

这里,-F 选项用于将文件类型指示符(one of */)附加到条目,-g 选项用于绘制每个条目的相对大小的图形。

如果不指定目录的话,那么默认将是当前目录的使用情况。

你还可以使用 -R 选项来以树状的形式来查看磁盘使用情况:

$ duc ls -R /home/alvin

类似地,你可以运行 duc ui 命令来打开一个 ncurses 终端来浏览你的文件:

$ duc ui /home/alvin

类似地,也可以运行 duc gui 来打开一个 graphical (X11) 来查看你的文件系统:

$ duc gui /home/alvin

以上是 Duc 工具的很基本的用法,想要知道它的更多强大功能,可以查看它的帮助文档:

$ man duc

码字不易,如果您觉得有帮助,麻烦点个赞再走呗~

-----------------

微信搜索公众号【良许Linux】,后台回复关键字:

  1. 回复【1024】:免费获取不断更新的海量技术资源;
  2. 回复【CSDN】:免费进入CSDN资源下载群;
  3. 回复【进群】:免费进入高手如云技术交流群。

干货分享 · 资源共享 · 认知提高 · 英语学习

linux 查看共享磁盘_如何可视化地查看 Linux 系统磁盘使用情况?相关推荐

  1. Linux_鸟哥基础篇笔记_第一部分Linux的规则安装_第2章主机规划与磁盘分区

    第一部分Linux的规则安装_第2章主机规划与磁盘分区 2.1Linux与硬件的搭配 2.1.1 认识计算机的硬件设备 2.1.2 选择与Linux搭配的主机设备 2.1.3 各硬件设备在Linux中 ...

  2. linux运行隐藏文件,Linux下如何隐藏文件_网站服务器运行维护,Linux,隐藏文件

    linux系统怎样安装软件_网站服务器运行维护 linux系统安装软件的方法:1.使用apt命令进行安装,如[apt install app_name]:2.使用rpm命令进行安装,如[rpm -i ...

  3. linux资源利用率检查_使用free命令查看实际内存占用(可用内存)

    linux下在终端环境下可以使用free命令看到系统实际使用内存的情况,一般用free -m方式查看内存占用情况(兆为单位).而系统实际可用内存是不是free部分呢,不是的,系统实际内存占用以及可用内 ...

  4. java访问linux共享目录_在Windows上访问linux的共享文件夹

    用的工具:samba.(其实比不过现成的软件,WinSCP还稳定一点) 第一步:在Linux上安装Samba: sudo apt-get install samba 第二步:配置一个通过samba访问 ...

  5. linux定时关机命令_软件设计师必知Linux命令 | 推荐收藏~

    Linux命令是对Linux系统进行管理的命令.对于Linux系统来说,无论是中央处理器.内存.磁盘驱动器.键盘.鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心. 线上查询及帮助 ...

  6. 2016 linux发行版排行_灵越7590 安装 linux (manjaro-gnome)

    RT 之前做了一次灵越7590 黑苹果炒作业的文章,希望能够分享给更多不想折腾的人. kawauso:教你如何给灵越7590黑苹果抄作业​zhuanlan.zhihu.com 然而实际上还是有各种坑, ...

  7. linux开启mysql窗口_通过window(Navicat)访问linux中的mysql数据库

    Centos安装Mysql数据库 查看我们的操作系统上是否已经安装了mysql数据库 [root@centos~]# rpm -qa | grep mysql//这个命令就会查看该操作系统上是否已经安 ...

  8. 扩有mysql的磁盘_为提高MySQL性能而在磁盘IO方面的设置

    提起MySQL数据库在硬件方面的优化无非是CPU.内存和IO.下面我们着重梳理一下关于磁盘I/O方面的优化. 1.磁盘冗余阵列RAID RAID(Redundant Array of Inexpens ...

  9. linux 启动一个网站_在线试用 200 多种 Linux 和 Unix 操作系统

    只要打开该网站,选择你需要的 Linux/Unix 发行版,然后开始试用! -- Sk(作者) 不久前我们介绍过 OSBoxes ,该网站提供了一系列免费且开箱即用的 Linux 和 Unix 虚拟机 ...

最新文章

  1. Flutter开发之HTTP网络请求:Http库(27)
  2. python【数据结构与算法】各进制转换-使用内置函数
  3. JVM参数设置和分析
  4. stm32f4之GPIO
  5. java获取文件名方法,利用Java获取文件名、类名、方法名和行号的方法小结
  6. 7——1 shelve 模块
  7. 超微服务器安装Linux,超微服务器使用IPMI安装操作系统
  8. 【QGIS入门实战精品教程】4.8:QGIS如何下载SRTM数字高程模型DEM?
  9. neo4j ogm_带有Hibernate OGM的NoSQL –第二部分:查询数据
  10. 闽高校计算机二级c语言模拟器,闽高校计算机二级C语言模拟题
  11. 从零开始学习ESP32——程序下载
  12. tga缩略图预览_带有缩略图预览的弹性图像幻灯片
  13. 图像的加噪与去噪(python)
  14. 到底啥是平台,到底啥是中台?李鬼太多,不得不说(ZT)
  15. 局域网计算机修改网络用户,如何修改局域网计算机的访问密码
  16. html5 head标签
  17. 服务器电脑安装win10系统安装教程视频,台式电脑win10系统安装教程
  18. WordPress Shortcode(短代码):完全指南
  19. c语言把txt中的工资表,一个最简单的工资表
  20. 倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何把FBD功能块转换成ST语言

热门文章

  1. 18计算机汽修英语期末试卷,英语语法期末考试试卷(a)
  2. HTML+CSS+JS实现 ❤️3D万花筒图片相册展示特效❤️
  3. linux vfs 根节点名称,Linux:文件,目录项,索引节点,超级块,VFS,具体文件系统...
  4. Java中抽象类和接口的区别?
  5. android反射开启通知_Android中反射的简单应用
  6. php tls,使用TLS在PHP中建立连接
  7. python twisted和flask_Python高效开发实战——Django、Tornado、Flask、Twisted(第2版)
  8. python123自定义幂函数_python基础之函数
  9. TensorFlow11CNN和全卷积神经网络
  10. 【Python爬虫】BeautifulSoup4 库的一些用法