Un-get 指南:管理 Unraid 中的 Slackware 软件包

un-get 是一个简洁的命令行工具,专门用于将 Slackware 软件包安装到 Unraid 系统中,并实现持久化(重启后不丢失)。

请注意un-get 只允许安装系统中尚未存在的软件包,并且只建议用它来删除由它自己安装的包,以保证系统干净。


一、安装与配置

1. 安装 un-get 插件

  • 在 Unraid 网页管理界面,导航至 “插件 (Plugins)” -> “安装插件 (Install Plugin)”
  • 在下方的 URL 输入框中,粘贴以下地址,然后点击 “安装”
    https://raw.githubusercontent.com/ich777/un-get/master/un-get.plg
    

2. 配置软件源

un-get 默认只包含 Slackware 官方软件源,为了能搜索和安装更多社区软件包,我们需要添加一些高质量的第三方源。

  • 打开 Unraid 终端,执行以下命令编辑软件源列表文件:
    nano /boot/config/plugins/un-get/sources.list
    
  • 在文件末尾,添加以下推荐的软件源。
    https://raw.githubusercontent.com/shinji257/unraid_pkgs/main/slackware64-current/ shinji257
    https://slackonly.com/pub/packages/current-x86_64/ slackonly
    https://slackware.nl/people/alien/slackbuilds/ alienbob
    
  • 添加后,按 Ctrl + O 保存更改,按 Enter 确认,最后按 Ctrl + X 退出编辑器。

  • 你完整的仓库源看起来会像下图这样:

3. 更新软件包列表

配置好软件源后,需要让 un-get 从新的源地址同步软件包信息。

  • 在终端中运行更新命令:
    un-get update
    

    un-get 会开始刷新列表,完成后你就可以搜索和安装来自所有配置源的软件包了。


二、基本用法示例

1. 安装软件包

  • 使用 un-get install <pkg-name> 命令来安装。例如,我们来安装 zsh

    un-get install zsh
    

    根据提示输入 y 确认后,un-get 就会自动完成安装。

2. 卸载软件包

  • 使用 un-get remove <pkg-name> 命令来卸载。

    un-get remove zsh
    

    同样,根据提示输入 y 确认即可卸载。


三、常用命令详解

以下是 un-get 的核心命令及其详细说明。

un-get update

  • 作用:更新本地的软件包列表。
  • 说明:在你搜索或安装任何软件之前,首先应该运行这个命令。它会从你配置好的所有软件源下载最新的软件包信息,确保你能搜索和安装到最新的版本。
  • 类比:就像手机里的应用商店,你需要先“刷新”一下,才能看到最新的 App。

un-get install [包名]

  • 作用:下载并安装一个或多个软件包。
  • 示例un-get install htop mc
  • 说明:最核心的安装命令。install 后面可以跟一个或多个你想要安装的软件包名称,用空格隔开。它会自动处理下载、安装和配置,确保这些工具在 Unraid 重启后依然可用。

un-get upgrade

  • 作用:升级所有通过 un-get 安装的软件包。
  • 说明:运行此命令,un-get 会检查所有已安装的包,如果软件源中有更新的版本,它会自动帮你升级。
  • --force-f 选项:一个强大的强制升级选项,在你更换了软件源后特别有用。它会强制用新源里的包重新安装所有软件。注意:如果新源里没有某个你已安装的包,这个包会被立即删除!

un-get remove [包名]

  • 作用:卸载一个或多个通过 un-get 安装的软件包。
  • 示例un-get remove zsh
  • 说明:安全地卸载指定的软件包及其配置文件。

un-get search [关键词]

  • 作用:在所有软件源中搜索可用的软件包。
  • 示例un-get search nano
  • 说明:当你不确定一个软件包的准确名称时,这个命令非常有用。它会根据你提供的关键词,在所有软件源里查找匹配的包。

un-get installed

  • 作用:列出所有当前通过 un-get 安装的软件包。
  • 说明:一个方便的查询命令,可以让你快速查看自己到底在基础系统里装了哪些额外工具,便于管理。

un-get cleanup

  • 作用:清理 /boot/extra 目录中不再使用的文件。
  • ⚠️ 警告:这是一个具有潜在风险的命令!它会删除 /boot/extra 目录下所有“未被 un-get 记录为已安装”的文件,不管这个文件是不是软件包。在使用前,请确保你没有手动在该目录下存放任何重要的个人文件。