50 lines
2.8 KiB
Markdown
50 lines
2.8 KiB
Markdown
---
|
||
{
|
||
title: "sysv-rc-conf 升级失败 依赖冲突 AtomPi 正点原子RK3568 Debian升级小记",
|
||
description: "文章记录了Debian 11升级12的过程,重点警告:使用systemd时切勿升级或应卸载sysv-rc-conf,否则会引发冲突甚至删除systemd。升级前务必用timeshift备份,并注意处理dbgsym包及依赖问题。",
|
||
draft: false,
|
||
type: "article",
|
||
created_at: "2024-07-12T21:15:00+08:00",
|
||
published_at: "2024-07-12T21:28:00+08:00",
|
||
updated_at: [ "2024-07-12T21:28:00+08:00"],
|
||
category: '个人',
|
||
tags: [ "Linux" ],
|
||
tech_stack: [ "Linux" ],
|
||
tech_stack_percent: [ 1 ],
|
||
tech_stack_icon_names: [ "simple-icons:linux" ],
|
||
tech_stack_theme_colors: [ "#263238" ],
|
||
}
|
||
---
|
||
!!!warning Legacy Article 过时的文章
|
||
此文章从旧博客迁移而来,编写时技术水平有限,仅供参考
|
||
!!!
|
||
|
||
故事略长,但是先讲重点
|
||
如果你使用systemd作为init程序,那么不要升级sysv-rc-conf,甚至可以直接卸载
|
||
正文:AtomPi 正点原子RK3568 Debian升级小记
|
||
新拿到手的RK3568,自带的是Debian11 说实话,能用,如果不像我一样对新系统偏执完全不用升级
|
||
升级系统步骤如下:
|
||
设置timeshift系统备份,很重要,不要莽,去搜,简单易用有效!!
|
||
删除所有dbgsym
|
||
`dpkg -l | grep dbgsym | awk '{print $2}' | xargs sudo dpkg --purge `
|
||
这个命令说实话有点危险,它本意是删除所有带dbgsym的软件包,后续升级时,这些软件包会造成依赖问题
|
||
修改`/etc/apt/sources.list` 我这里是Debian11升12,所以把bullseye改为bookworm
|
||
`sudo apt update $$ sudo apt upgrade`
|
||
升级后你会发现一些软件包没有被升级,我的处理方式挺麻烦的,当然你选择不升级也不会有任何影响。
|
||
我这边大概有80多个未升级的软件包,很多软件包能看出来是一类的,当你使用
|
||
'''
|
||
sudo apt upgrade
|
||
sudo apt dist-upgrade
|
||
'''
|
||
都不能升级,但`sudo apt upgrade [特定软件包名]`又可以升级时,可以试试这样(例如gstreamer):
|
||
`dpkg -l | grep gstreamer | awk '{print $2}' | xargs sudo apt dist-upgrade -y --allow-change-held-packages `
|
||
好,其实以上这些都不是我想讲的
|
||
我想说的是其中一个软件包sysv-rc-conf
|
||
在尝试单独升级这个包时,会出现systemd相关的依赖冲突问题。但是奇怪的是其他软件包的依赖问题都是这样子的:
|
||
升级A时
|
||
A依赖B B版本不对
|
||
B依赖A A的新版本不能被B接受
|
||
但是sysv-rc-conf却没有出现在依赖问题中。
|
||
然后我试着删掉包重装。然后发现重装时要求删掉我的systemd
|
||
这下我知道为什么我第一次升级把systemd升没了。上一次我的处理方法是,记录所有包,删掉所有包,重装所有包。
|
||
sysv init和systemd init是冲突的。用systemd就好了。 |