V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
yagamil
V2EX  ›  Linux

Linux 服务器如何安全的清理垃圾文件

  •  
  •   yagamil · 91 天前 · 1847 次点击
    这是一个创建于 91 天前的主题,其中的信息可能已经有所发展或是发生改变。
    买的 50G 的云服务 都快不够用了。

    用 du 查看占用的空间,除了自己/root 下的已知的空间,/var 和/usr 占用了接近 20G 的空间。

    我发现 linux 安装一个软件,把依赖装上了,卸载的时候却不会把依赖一起卸载。如果强制卸载,会有意想不到的事情发生。(已经试过很多次开不了机,本地的 linux ,云服务器有数据在上面和服务在上面,不敢乱来)

    有脚本是可以安全删除删除 系统里无用的文件的吗?
    16 条回复    2024-06-20 23:06:25 +08:00
    winterpotato
        1
    winterpotato  
       91 天前
    ubuntu 的话,可以 apt clean 来清除下载的 deb ; apt autoremove 删除不需要的依赖。

    然后如果有多个内核 那么其实只保留在用的那个版本的就好了,其他的都不需要。

    如果装了 docker 那么不用的容器 volume image 也可以删

    journalctl 的日志也可以清理
    yagamil
        2
    yagamil  
    OP
       91 天前   ❤️ 1
    @winterpotato #1 感谢老哥,以前也用过这些方法,感觉无法省出很多空间。。
    MrKrabs
        3
    MrKrabs  
       91 天前
    ncdu 怎么样
    liuliancao
        4
    liuliancao  
       91 天前
    继续 du 看看吧或者 find / -size +500M 看看
    libook
        5
    libook  
       91 天前
    很多包管理器都支持移除软件包的同时移除不被其他软件包依赖的依赖,只要你是通过安装软件包来让包管理器自动安装依赖而不是自己安装每个依赖的软件包,理论上就可以被正确关联移除。
    cnt2ex
        6
    cnt2ex  
       91 天前
    # 删除所有没有使用的 image/volume/network 等等
    `docker system prune -a`

    # 删除下载下来的 deb 包
    `apt clean`

    # 删除自动安装但是已经不被需要的依赖
    `apt autoremove`

    # 清除卸载后剩余的配置文件,搜 apt-patterns 看~c 的含义
    `apt purge '~c'`

    # 清除 journald 的日志到只剩 512M
    journalctl --vacuum-size=512M

    不过我看了一下我的系统/usr + /var 也就 6G 左右,你的这么大是不是装了太多包了。`apt-mark showmanual`查看手动安装的包,然后再一个一个看,把不需要给卸载掉。
    w568w
        7
    w568w  
       91 天前
    详细说明一下你是什么发行版,安装了哪些软件。

    Linux 服务器没有统一的清垃圾方法,请求他人提供一个一键清理脚本是不现实的:作为系统管理员,你应该知道自己的服务器上装了什么,因为每个文件都直接或间接是你自己亲手敲命令造成的,也不是别人给你偷偷塞的。

    先用 gdu 确定大文件占用部分,然后用对应的方法来清理。例如 var 占空间大,多半是因为 docker 镜像下载了之后不知道要删除,按楼上的命令操作即可。
    catamaran
        9
    catamaran  
       91 天前
    你都知道用 du 查看,就一层一层往下查呗,看看是哪个文件夹或者文件比较大
    zsh2517
        10
    zsh2517  
       91 天前
    考虑一下 ncdu ?相较于 du 来说,可以自由切换目录不用每次重新跑。

    直接运行的情况下,好像支持删除文件并重新计算;
    或者可以 `ncdu -o x.json` 导出以及 `ncdu -f x.json` 导入扫描结果。
    billzhuang
        11
    billzhuang  
       91 天前 via iPhone
    制作 image ,定期刷新
    daisyfloor
        12
    daisyfloor  
       91 天前
    @cnt2ex 老哥牛逼,学会了。清理了好多
    Phant0m
        13
    Phant0m  
       91 天前
    ```
    sudo journalctl --rotate
    sudo journalctl --vacuum-time=1s
    ```
    shijingshijing
        14
    shijingshijing  
       91 天前
    bleachbit 一键搞定
    CivAx
        15
    CivAx  
       90 天前
    ncdu +1 ,手动扫盘显示占用空间 + 手动清理,要干什么自己有数
    yagamil
        16
    yagamil  
    OP
       90 天前
    @CivAx @shijingshijing @Phant0m @zsh2517
    ....
    谢谢各位大佬,挖到好用工具,
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5790 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 02:04 · PVG 10:04 · LAX 19:04 · JFK 22:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.