← 返回

系统更新

刷新软件源、升级已装包、清掉无用依赖。需要重启时只提示,不会替你重启。

需要 root

一键执行

curl -fsSL https://www.moiu.cn/scripts/system-update.sh | bash

脚本源码

#!/usr/bin/env bash
# 系统更新
#
# 刷新软件源、升级已安装的包、清掉不再需要的依赖。
# ❗ 不自动重启 —— 需要重启时只提示,把决定权留给人。

set -e

# 需要 root:下面的系统级改动都直接执行,不再逐条 sudo
if [ "$(id -u)" -ne 0 ]; then
    echo '[!] 这个脚本需要 root 权限,请用 sudo 重新运行:'
    echo '    curl -fsSL 脚本地址 | sudo bash'
    echo '    或已经下载到本地:sudo bash 本文件'
    exit 1
fi

echo '====== 系统更新 ======'

if command -v apt-get >/dev/null 2>&1; then
    echo '[*] apt-get update / upgrade ...'
    apt-get update
    DEBIAN_FRONTEND=noninteractive apt-get upgrade -y
    apt-get autoremove -y
    apt-get clean
elif command -v dnf >/dev/null 2>&1; then
    echo '[*] dnf upgrade ...'
    dnf -y upgrade
    dnf -y autoremove
elif command -v yum >/dev/null 2>&1; then
    echo '[*] yum update ...'
    yum -y update
else
    echo '[!] 认不出包管理器(只支持 apt / dnf / yum)'
    exit 1
fi

echo ''
echo '====== 完成 ======'
if [ -f /var/run/reboot-required ]; then
    echo '  [!] 系统提示需要重启才能完成更新'
else
    echo '  [√] 不需要重启'
fi

下载原始文件