我已经安装并使用 Debian 10 几天了,没有出现任何问题。昨晚我开始设置 vim,我下载了一个插件管理器以及 git。休息了一会儿,我回到电脑前,再次尝试登录。我无法执行此操作,登录界面说我没有授权,并且它不会注册我的键盘输入。我按住电源按钮将其关闭,大约一分钟后我将其重新打开。令我沮丧的是,Debian 并没有像过去那样启动。相反,它在黑屏中显示“Debian GNU/Linux 10 Debian-workstation tty1”,下一行显示“Debian-workstation login:”。
我尝试过使用“apt-get update”进行更新,但遇到很多无法解析和无法获取的错误。即使我连接到以太网,也会发生这种情况。另外,当它启动时,Avahi 似乎有问题,它说“无法从守护进程接收返回值”。
我是 Linux 菜鸟,任何帮助将不胜感激。谢谢。
编辑:我已经阅读了有关显示管理器的更多信息。我之前使用过 Gnome,所以我尝试运行命令“systemctl status gdm”和“systemctl start gdm”。对于这两个我得到“系统尚未使用 systemd 作为 init 系统(PID 1)启动。无法操作。无法连接到总线:主机已关闭”。
答案1
如果您所做的只是安装用于另一个 Linux 发行版的软件包,那么好消息是该系统应该非常容易修复。您的所有配置文件应该仍然存在,因此如果您可以将软件包恢复到事故发生之前的状态,则系统应该恢复正常工作。
另一方面,如果您在事故发生前仅使用该系统几天,则它可能仍然更轻松要安装 USB 记忆棒,请将所有数据文件(/home
如果您不确定的话,基本上是目录树中的所有文件)复制到 USB 记忆棒,然后重新安装。
要在不使用任何 GUI 工具的情况下安装 USB 记忆棒:首先,在插入 USB 记忆棒之前,运行cat /proc/partitions
.然后插入棒并再次运行相同的命令。插入 USB 记忆棒后的输出应该还有大约两行 - 这些将识别 USB 记忆棒的设备名称及其分区。例如,如果插入记忆棒导致出现两个名为sdc
和 的设备,请运行。现在 USB 记忆棒应该可以在 下访问。sdc1
mount /dev/sdc1 /mnt
/mnt
要制作 下任何内容的压缩存档/home
,您可以执行以下操作:
tar jcvf /mnt/saved-home.tar.bz2 /home
在拔下 USB 记忆棒之前,运行cd /; umount /mnt
.
但如果您想尝试解决问题,请继续阅读...
第一步可能应该是撤消对源列表的更改。如果您不知道要在其中添加什么内容,以下几行应该是 Debian 10 的良好通用起点:
deb http://deb.debian.org/debian buster main contrib non-free
deb http://security.debian.org/ buster/updates main contrib non-free
如果您想明确使用地理位置靠近您的存储库,请参阅 Debian 镜像列表。
但听起来软件包冲突导致系统卸载了网络连接正常工作所必需的一个或多个软件包。因此,您可能必须使用安装介质作为本地软件包存储库来获取这些基本软件包,然后才能从网络获取任何内容。
如果您的安装介质是 CD/DVD,只需插入光盘并运行apt-cdrom add
。它应该自动检测 CD 驱动器中的安装介质并将其注册为可用于apt
.
如果您的安装介质是 USB 记忆棒,请将其插入,安装在下面/mnt
(参见上文)并运行apt-cdrom -d /mnt add
。
/var/log/dpkg.log
是一个文本文件,应该具有所有最近的包管理操作(即一个月左右)的时间戳记录,并且/var/log/dpkg.log.1
,如果存在,则具有与上个月相同的信息。
您应该找到在事故中卸载的任何软件包并重新安装它们,并使用apt install <package-name>
.您可能想检查packages.debian.org 上的元包列表并首先安装已卸载的所有元包。
元包基本上是一个空包,具有一组与特定任务或其他逻辑组相关的包的依赖关系。例如,如果您重新安装 metapackage gnome-core
,然后gnome-session
和gdm3
,这可能至少会恢复基本的 GUI 功能。这应该允许您同时获得包管理器和/var/log/dpkg.log
屏幕,并且重新安装其余已删除的包应该更容易。