• 基于Qt的目录统计QDirStat


    在这里插入图片描述

    但凡说是免费,估计这个月就少不了

    在这里插入图片描述

    看着不费钱,但是费嗓子

    在这里插入图片描述


    什么是 QDirStat ?

    QDirStat 是一个图形应用程序,用于显示磁盘空间的去向并帮助您清理它。

    说实话,老苏不太喜欢这种带 vncrdp 的应用,比较耗资源,感觉像是跑了个虚拟机,关键是功能还单一。

    安装

    在群晖上以 Docker 方式安装。

    在注册表中搜索 qdirstat ,选择第二个 linuxserver/qdirstat,版本选择 latest

    备注下版本:1.8.20220430

    在这里插入图片描述

    docker 文件夹中,创建一个新文件夹,将其命名为 qdirstat,并在其中建两个子文件夹,分别是 configdata

    文件夹装载路径说明
    docker/qdirstat/config/config存放设置
    docker/qdirstat/data/data要分析其磁盘使用信息的数据

    /data 受图形界面的限制,不能选择系统的目录,如果需要映射系统的目录,可以在命令行方式下运行

    在这里插入图片描述

    端口

    本地端口不冲突就行,不确定的话可以用命令查一下

    # 查看端口占用
    netstat -tunlp | grep 端口号
    
    • 1
    • 2
    本地端口容器端口
    50303000
    33893389

    在这里插入图片描述

    如果只是在 Web 上使用,也可以删掉 3389 端口

    3389RDP 客户端的默认端口;

    在这里插入图片描述

    环境

    可变
    TZ设为 Asia/Shanghai
    PUID设为 1000
    PGID设为 1000

    在这里插入图片描述

    命令行安装

    如果你熟悉命令行,可能用 docker cli 更快捷

    /data 也可以指向群晖的系统目录,为防止误删除文件,建议后面加上只读,变为 /path/to/data:/data:ro

    # 新建文件夹 qdirstat 和 子目录
    mkdir -p /volume2/docker/qdirstat/{config,data}
    
    # 进入 qdirstat 目录
    cd /volume2/docker/qdirstat
    
    # 运行容器
    docker run -d \
       --restart unless-stopped \
       --name qdirstat \
       -p 5030:3000 \
       -v $(pwd)/config:/config \
       -v $(pwd)/data:/data \
       -e PUID=1000 \
       -e PGID=1000 \
       -e TZ=Asia/Shanghai \
       linuxserver/qdirstat:latest
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    也可以用 docker-compose 安装,将下面的内容保存为 docker-compose 文件

    version: "2.1"
    services:
      qdirstat:
        image: linuxserver/qdirstat:latest
        container_name: qdirstat
        environment:
          - PUID=1000
          - PGID=1000
          - TZ=Asia/Shanghai
        volumes:
          - /volume2/docker/qdirstat/config:/config
          - /volume2/docker/qdirstat/data:/data
        ports:
          - 5030:3000
        restart: unless-stopped
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    然后执行下面的命令,在 portainer 中执行也是可以的

    # 进入目录
    cd /volume2/docker/qdirstat
    
    # 将 docker-compose.yml 放入当前目录
    
    # 一键启动
    docker-compose up -d
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    运行

    在浏览器中输入 http://群晖IP:5030 就能看到主界面,但是黑乎乎的,只有左侧中间有个圆点

    在这里插入图片描述

    鼠标右键的菜单,xtemXFCE Terminal 都是打开终端

    在这里插入图片描述

    按道理选择 QdirStat 会出现界面,但是实际上什么都没有,老苏一度怀疑是不是内存不够,但实际上不是。

    在终端下执行会提示错误

    qdirstat : error while loading shared libraries : libQt5Core.so.5 : cannot open shared object file : No such file or directory
    
    • 1

    在这里插入图片描述

    问题处理

    通过查阅资料,老苏找到了解决办法,但在群晖上产生的原因并不清楚,但老苏怀疑会不会还是 DSM 6.1.7-15284 内核版本太低的缘故

    # 升级源
    sudo apt update -y
    
    # 安装 strip
    sudo apt install -y binutils
    
    # 修改 ELF section
    sudo strip --remove-section=.note.ABI-tag /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    把上面内容依次复制粘贴到下图中的位置,然后再次粘贴到终端中

    在这里插入图片描述

    依次执行完成后,再执行 qdirstat 就能看到界面了

    在这里插入图片描述

    目录的使用情况

    在这里插入图片描述

    参考文档

    shundhammer/qdirstat: QDirStat - Qt-based directory statistics (KDirStat without any KDE - from the original KDirStat author)
    地址:https://github.com/shundhammer/qdirstat

    Docker Hub
    地址:https://hub.docker.com/r/linuxserver/qdirstat

  • 相关阅读:
    项目文件上传到行云codeup teambition
    c++ onnx之resnet分类
    Element-ui
    Java程序员所需Javascript知识
    k8s 1.24.0版本使用nfs-provisioner4.0.0动态创建PV
    【JavaScript】js判断一个变量是数组
    为开发GPT-5,OpenAI向微软寻求新融资
    如何使用visual studio 2010构建SQLite3.lib文件
    nginx的优先级和匹配方式
    Linux系统TCP连接性能
  • 原文地址:https://blog.csdn.net/wbsu2004/article/details/126133764