温馨提示×

centos系统备份前如何清理

小樊
33
2025-03-01 14:13:29
栏目: 智能运维
Centos服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在CentOS系统备份前进行清理是一个很好的实践,可以确保备份数据的完整性和备份空间的充分利用。以下是一些常用的清理步骤和工具,以及一个简单的清理脚本,可以帮助你在备份前清理系统。

清理步骤

  1. 清理临时文件

    sudo rm -rf /tmp/*
    
  2. 删除不需要的软件包

    sudo yum list installed
    sudo yum remove <package_name>
    
  3. 清理日志文件

    sudo du -sh /var/log/*
    sudo truncate -s 0 /var/log/<log_file>
    
  4. 压缩和归档文件

    tar -czvf <archive_name>.tar.gz <directory>
    sudo rm -rf <directory>
    
  5. 清理回收站

    cd ~/.local/share/Trash/files
    rm -rf *
    
  6. 分析和清理大文件和目录

    使用工具如 ncdu 来分析磁盘使用情况。

清理脚本

以下是一个简单的Shell脚本,用于自动执行上述清理操作:

#!/bin/bash

# 记录清理前的可用空间
before=$(df -h / | awk '/\// {print $4}')

# 清理yum缓存
sudo yum clean all

# 清理旧的日志文件
find /var/log -type f -name "*.log" -exec truncate --size 0 {} \;

# 清理回收站
echo "Emptying trash..."
rm -rf /root/.local/share/Trash/*

# 清理历史命令记录
history -c
history -w

# 清理临时文件
rm -rf /tmp/*
rm -rf /var/tmp/*

# 清理旧的系统备份
rm -rf /var/backups/*

# 清理不再使用的软件包和依赖项
sudo yum autoremove -y

# 清理旧的内核
package-cleanup --oldkernels --count=1 -y

# 清理缓存文件
find /var/cache -type f -exec rm -rf {} \;

# 清理用户缓存
for user in $(ls /home); do
    rm -rf /home/$user/.cache/*
done

# 清理邮件日志
find /var/mail -type f -exec truncate --size 0 {} \;

# 清理core文件
find / -name "core" -delete

# 清理旧的会话文件
find /var/lib/php/session -type f -delete

# 清理系统邮件队列
sudo service postfix stop
rm -rf /var/spool/postfix/*
sudo service postfix start

# 清理久未使用的软件包缓存
sudo dnf clean packages -y

# 清理系统崩溃日志
rm -rf /var/crash/*

# 清理journalctl日志
journalctl --rotate
journalctl --vacuum-time=1d

# 清理系统缓存
sync && echo 3 | sudo tee /proc/sys/vm/drop_caches

# 清理历史命令记录
history -c
history -w

# 清理Docker容器日志文件
docker rm -v $(docker ps -a -q)
rm -rf /var/lib/docker/containers/*/*-json.log

# 清理Docker镜像缓存
docker image prune -a --force

# 清理Docker无用的数据卷
docker volume prune --force

# 清理旧的Docker镜像
docker rmi $(docker images -f "dangling=true" -q)

# 计算清理了多少大小的文件
cleared=$(df -h / | awk '/\// {print $4}' | awk -v before="$before" '{print before - $1}')

# 记录清理后的可用空间
after=$(df -h / | awk '/\// {print $4}')

echo "清理前可用空间: $before"
echo "清理后可用空间: $after"
echo "磁盘清理完成。"

将上述脚本保存为 cleanup.sh,然后给予执行权限:

chmod +x cleanup.sh

你可以手动运行这个脚本,或者将其添加到系统的定时任务中,以便定期执行清理操作。

在执行任何清理操作之前,请确保备份重要的数据和配置文件,以防万一。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:ubuntu系统备份前如何清理

0