惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 三生石上(FineUI控件)
D
Docker
GbyAI
GbyAI
宝玉的分享
宝玉的分享
Jina AI
Jina AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Vercel News
Vercel News
博客园_首页
Recent Announcements
Recent Announcements
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Hugging Face - Blog
Hugging Face - Blog
腾讯CDC
S
SegmentFault 最新的问题
Microsoft Security Blog
Microsoft Security Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
美团技术团队
V
V2EX
WordPress大学
WordPress大学
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
V
Visual Studio Blog
IT之家
IT之家
Apple Machine Learning Research
Apple Machine Learning Research
T
Tailwind CSS Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com

WAYJAM

告别 NPM Token:迁移到 Trusted Publishing 全记录 Sing-box:IPv6 优先出站与 Netflix 强制 IPv6 分流 [All In One] HomeLab 虚拟化 iKuai + Mihomo - IPv6 支持 [All In One] HomeLab 虚拟化 iKuai + Mihomo LiteLLM 多模型 API 中转 MacOS Bootstrp with Nix Fluency Support Full Rss [All In One] PVE 中 OpenWrt LXC 重启问题 Tabby 终端配置以及配置全平台同步 Cloudflare Tunnel + Nginx Proxy Manager:服务穿透 PVE 7 升级 8 笔记 PVE 安装 Android x86 & 安装 Magisk Fly.io 部署 Artalk 评论系统 [All In One] HomeLab 2023 搭建总结 [All In One] 轻量的文件 & 媒体服务器配置 [All In One] R71s 主机散热改造 [All In One] PVE LXC 安装 OpenWrt 软路由以及网络规划 [All In One] 安装 Proxmox VE 7.4 从零开始配置Rime - 2023 Self Hosted Bitwarden + Cloudfare HTTPS Debian NFS Server 以及 MacOS Client AdguardHome 和 Clash 透明代理配合使用 使用 Kind 部署 Prow 手记 BackBlaze B2 + Cloudfare Worker 图床 PicGo Amazon S3 插件 自动给模板生成 Inline-Svg Hugo Theme WeUI 发布! Hugo Theme Fluency 发布! Docker Clash 和 透明代理 有限状态机与分布式熔断器
Arch滚挂了怎么办?
2016-01-18 · via WAYJAM

经历

有时间我就随手一句pacman -Syu,果然,今天早上开机发现SDDM登录之后,Plasma无法启动了。滚挂了!

切换到另外一个tty,执行startkde提示$DISPLAY is not set or cannot connect to x server,那么问题就在Xorg、Intel驱动和Kde本身之间了。昨天我记得Xorg和Intel驱动都没有升级,而升级了plasma-desktopplasma-framework这两个plasma的关键包,另外还有mesamesa-libgl,因为Intel驱动部分是依赖他们俩的。

进入/var/cache/pacman/pkg,降级这几个包pacman -U xxx.pkg.gz.xz,重启,解决。

滚挂之前应该做什么?

  • 更新前到官网查看更新内容
  • 勤升级是个好习惯
  • 做一个LiveCD备用
  • 不要老是清空pacman的软件包缓存,因为downgrade的时候会用到
  • pacman时避免加--force

滚挂之后应该做什么?

检查更新内容

查看/var/log/pacman.log,看看这次更新你更新了什么,结合系统出现的状况。

软件包降级

  • 通过本地pacman cache
  • 通过旧版本的PKGBUILD,手动编译
  • Arch Linux Archive(以前叫Arch Linux Rollback Machine)是一个官方的每日快照。你可以从ALA下载某个package到本地然后降级安装,如果要降级所有package到某个日期则修改/etc/pacman.conf或者/etc/pacman.d/mirrorlist软件源为ALA中某个日期的存档,然后降级pacman -Syyuu
  • 使用downgrader或者downgrade这样的自动化工具,他们可以自动帮你从本地cache或ALA降级一个或多个package。

内核降级

就需要通过LiveCD,arch-chroot进入系统,然后降级内核包,方法和普通软件包一样。

回到昨天

如果你使用了LVM对硬盘管理,并且在升级系统之前创建了Snapshots,那么你很容易将系统还原到升级之前。

参考资料