第 08 天:软件管家

LinuxBeginner
立即练习

介绍

欢迎,软件管家!你刚刚加入了一家快速发展的初创科技公司,担任他们第一位专职系统管理员。你的首要任务是接管一台至关重要的开发服务器,此前这台服务器一直由开发团队共同管理,导致现状非常混乱。服务器内堆满了杂物,软件版本可能已经过时,急需一位专业人士来整顿。

你的使命是建立秩序。你需要更新系统的软件源,安装团队要求的必备工具,验证所有内容是否安装正确,卸载废弃软件,并进行全面的系统清理。这是你展现价值的绝佳机会,为公司的基础设施带来专业级的稳定性和效率。团队对你寄予厚望,让我们开始整顿这台服务器吧!

重要提示
接下来的挑战内容可能会超出 Linux 快速入门 课程的范围。
如果你在挑战过程中遇到困难:
  1. 可以暂时跳过此挑战,继续学习 Linux 学习路径 中的后续引导实验。
  2. 与 Labby 讨论或查看解决方案。

更新系统软件包仓库

作为软件管家的第一项任务,是确保服务器的包管理器拥有关于可用软件的最新信息。过时的软件包列表可能会导致安装错误或安全漏洞。你需要将本地软件包索引与中央仓库进行同步。

任务

  • 从所有已配置的软件源更新可用软件包列表。

要求

  • 使用高级软件包工具(apt)执行更新。
  • 你必须以管理员权限执行该命令。

示例

成功更新软件包仓库后,你应该能看到表示软件包列表已刷新的输出信息。该命令通常会显示有关可升级软件包的信息,并确认更新已成功完成。

提示

  • 请记住,像更新软件包源这种系统级的更改需要提升权限。
  • apt 命令有一个专门用于刷新本地软件包索引的子命令。

安装必备软件包

软件包列表更新完毕后,现在该满足开发团队的一个需求了。他们需要 neofetch,这是一个非常方便的命令行工具,能以视觉美观的方式显示系统信息。你的任务是安装它。

任务

  • 安装 neofetch 软件包。

要求

  • 使用 apt 命令安装该软件包。
  • 软件包名称为 neofetch
  • 以管理员权限运行安装命令。

示例

安装成功后,neofetch 命令应该可以在终端中使用。你应该能够运行它并看到彩色显示的系统信息,包括操作系统详情、内核版本和硬件信息。

提示

  • 用于安装软件包的 apt 命令非常常用。想想你想执行的动作:「安装(install)」。
  • 别忘了使用 sudo

验证已安装软件包的版本

太棒了,neofetch 已经安装好了。在向团队汇报之前,验证安装情况并记录版本号是一个良好的习惯。这不仅能确认任务已完成,还能为文档记录或故障排除提供有用信息。

任务

  • 显示 neofetch 软件包的详细信息,包括其版本号。

要求

  • 使用能够查询软件包数据库以获取已安装软件包详情的命令。

示例

当你查询软件包信息时,应该会看到详细的输出,包括包名、当前版本、安装状态和其他元数据。这些信息可以确认软件包已正确安装,并提供你可以向团队汇报的版本号。

提示

  • apt 工具拥有一个可以「显示(show)」软件包信息的子命令。
  • 此外,带有 -s 参数的 dpkg 命令也可以用来检查软件包的状态。

卸载不必要的软件包

在检查服务器时,你发现了一个名为 figlet 的软件包,它是为了一个已经结束的一次性项目而安装的,现在已经不再需要。为了保持系统的整洁和安全,你应该卸载任何废弃的软件。

任务

  • 从系统中卸载 figlet 软件包。

要求

  • 使用 apt 命令移除该软件包。
  • 要移除的软件包名称为 figlet
  • 你必须使用管理员权限来卸载软件。

示例

成功移除软件包后,figlet 命令在系统中应不再可用。尝试运行它或检查其状态时,应提示该软件包未安装。

提示

  • 用于移除软件包的 apt 子命令非常直观。想想「安装」的反义词。
  • 记得使用 sudo

管理软件包依赖关系

卸载软件后,某些作为依赖项安装的软件包可能不再被系统中的任何其他程序需要。这些被称为「孤立」依赖项,它们会白白占用磁盘空间。一个优秀的管家总是会在工作结束后清理现场。

任务

  • 移除所有系统中不再需要的自动安装依赖项。

要求

  • 使用专门用于清理未使用依赖项的 apt 命令。
  • 此操作需要管理员权限。

示例

当你运行清理命令时,它会扫描系统,查找那些作为依赖项自动安装但现在已不再需要的软件包。如果发现了任何孤立软件包,它们将被列出并移除,从而帮助保持系统的精简和高效。

提示

  • apt 有一个非常有用的命令可以「自动移除(automatically removes)」未使用的软件包。
  • 一如既往,这种系统级的更改需要 sudo

总结

恭喜你,软件管家!你已成功掌控了这台开发服务器。在本次挑战中,你练习了在基于 Debian 的 Linux 系统上管理软件的完整生命周期:

  • 你使用 apt update 更新了软件包仓库。
  • 你使用 apt install 安装了新软件。
  • 你使用 apt show 验证了安装情况。
  • 你使用 apt remove 卸载了废弃软件包。
  • 你使用 apt autoremove 清理了未使用的依赖项。

这些是任何 Linux 管理员或高级用户的基本日常技能。通过掌握这些技能,你可以确保系统保持最新、安全且整洁。你已经证明了自己的能力,并为管理良好的基础设施打下了坚实的基础。

✨ 查看解决方案并练习✨ 查看解决方案并练习✨ 查看解决方案并练习✨ 查看解决方案并练习✨ 查看解决方案并练习