京东11.11大促主会场领京享红包更优惠

 找回密码
 立即注册

QQ登录

只需一步,快速开始

Linux上使用Snap包管理下令 这份使用指南要收藏

2024-11-4 18:10| 发布者: db4d5a85| 查看: 139| 评论: 0

摘要: 如果你在使用 Ubuntu 及其衍生版本,「Snap 软件包」对你来说应该不会感到陌生。它是 Ubuntu 母公司 Canonical 推广的一种打包格式,可以在险些任何 Linux 发行版上安装和使用。 虽然 Ubuntu 提供了优秀的图形化软

如果你在使用 Ubuntu 及其衍生版本,「Snap 软件包」对你来说应该不会感到陌生。它是 Ubuntu 母公司 Canonical 推广的一种打包格式,可以在险些任何 Linux 发行版上安装和使用。

虽然 Ubuntu 提供了优秀的图形化软件管理工具,我们绝大多数时间并不须要使用下令行来管理 Snap 软件包,但下令行拥有更强的功能和灵活性,学会如何使用可以帮你更好地掌控系统。

[code]但由于种种原因,Snap 主要在 Ubuntu 及其衍生系统上使用。说直白一点就是火拼不外 Flatpak,你可以通过这篇文章了解 Flatpak 和 Snapcraft 的优缺点对比。[/code]

一、什么是 Snap 和 Snapd

Snap 是由 Ubuntu 开发商 Canonical 推出的一种通用软件包格式,旨在简化软件分发,而且与具体的 Linux 发行版无关。

在差别的 Linux 发行版中,通常会使用各自的包管理器和格式,比如:

  • Debian 系使用的 APT
  • Fedora/RHEL 系使用的 DNF
  • Arch Linux 系使用的 Pacman 等

但在差别系的 Linux 发行版中,各包管理器和软件包存在兼容性问题,而 Snap 雷同于 Flatpak,它通过容器化技术,将应用程序及其依靠项打包成一个独立的包,来办理兼容性问题。以下是 Snap 的主要特点:

  • 通用兼容性:可以在差别 Linux 发行版上运行,开发者无需为每个发行版创建单独的包。
  • 隔离和安全性:每个 Snap 都在独立的环境中运行,不受其他应用影响,提拔了安全性。
  • 自动更新:Snap 应用可以在背景自动更新,让你始终使用最新版本。
  • 依靠管理:Snap 包罗了全部所需的依靠项,无需额外安装其他库。
  • 轻松回滚:如果更新出现问题,可以方便地回滚到先前版本。

除了 Snap,另一个关键组件是 snapd,它是管理 Snap 包的背景服务,负责安装、更新和删除 Snap 包。简单来说:

  • Snap 是实际的应用包,包罗了应用程序和全部依靠项,能在任何支持 Snap 的 Linux 发行版上运行。
  • snapd 是负责管理这些 Snap 包的背景服务,确保应用的安全性、更新以及与系统的隔离。

接下来我们就进入实操阶段,学习如何在 Ubuntu 系统上使用 Snap 管理软件。

二、根本 Snap 下令

2.1 搜刮软件包

你可以通过关键字或软件包名称在 Snapcraft 应用商店中查找所需软件包:

[code]snap find <关键字或软件包名称>[/code]

例如,使用以下下令搜刮与 GIMP 相关的软件包:

[code]snap find gimp[/code]

搜刮可用 snap 软件包

2.2 查看软件包详情

可以使用以下下令,查看 Snap 软件包的详细信息,包罗版本、形貌、发布者和渠道等:

[code]snap info <软件包名称>[/code]

查看 snap 软件包信息

输出结果中的关键信息包罗:

  • Name:软件包的正式名称。
  • Publisher:发布者个人或构造。
  • Channels:包罗以下版本和渠道选项:
    • Stable:稳固版本。
    • Candidate:靠近稳固的测试版本。
    • Beta:大概有新功能但不稳固。
    • Edge:最前沿的开发版本,通常不稳固。

2.3 安装 Snap 软件包

[code]sudo snap install <软件包名称>[/code]

可以通过[code]-channel=<channel>[/code]选项来指定渠道,从特定渠道安装软件包:

[code]sudo snap install <软件包名称> --channel=preview/candidate[/code]

可以使用[code]snap refresh[/code]下令,将已经安装的软件包切换到另一个渠道:

[code]sudo snap refresh <软件包名称> --channel=latest/stable[/code]

2.4 卸载 Snap 软件包

你可以通过以下下令来卸载 Snap 软件包,也可以一次卸载多个包:

[code]sudo snap remove <软件包名称> sudo snap remove <软件包1> <软件包2>[/code]

要彻底删除软件及相关数据,可以添加[code]--purge[/code]选项来扫除用户数据或设置文件:

[code]sudo snap remove <软件包名称> --purge[/code]

三、管理已安装的 Snap 软件包

3.1 列出已安装的 Snap 软件包

要查看系统中已安装的 Snap 软件包,请使用以下下令:

[code]snap list[/code]

列出已安装的 snap 软件包

3.2 手动更新 Snap 软件包

虽然 Snap 软件包通常会自动更新,但你也可以手动触发更新:

检查并更新全部已安装的软件包:

[code]sudo snap refresh[/code]

更新全部 snap 软件包

只更新特定的软件包:

[code]sudo snap refresh <软件包名称>[/code]

3.3 仅查看可用更新

要查看有哪些更新可用,而不立即安装,可以使用:

[code]sudo snap refresh --list[/code]

查看 snap 软件包可用更新

3.4 回滚到之前版本

当某个 Snap 软件包遇到问题时,可以回滚到之前的版本:

[code]sudo snap revert <软件包名称>[/code]

回滚 snap 软件包版本

四、Snap 进阶用法

4.1 禁用或启用 Snap 软件包

你可以在不卸载和重装的环境下,临时停用或启用 Snap 软件包:

[code]sudo snap disable <软件包名称> # 禁用 Snap 软件包 sudo snap enable <软件包名称> # 启用 Snap 软件包[/code]

启用或禁用 snap 软件包

4.2 设置 Snap 自动更新时间

默认环境下,Snap 软件包会每天自动更新 4 次。我们可以设置刷新计时器,调解自动更新的时间段。例如,将更新安排在夜间时段:

[code]sudo snap set system refresh.timer=3:00-4:00[/code]

设置 Snap 自动更新时段

4.3 切换更新渠道

我们还可以随时切换特定软件包的更新渠道,例如「stable」、「beta」或「edge」:

[code]sudo snap switch --channel=latest/stable <软件包名称> # 更换渠道 sudo snap refresh <软件包名称> # 应用更改[/code]

4.4 跟踪和管理 Snap 更改

使用以下下令,查看系统上 Snap 的全部更改记载,包罗安装、更新、删除或回滚等操作:

[code]snap changes[/code]

查看 Snap 变动记载

通过更改 ID 查看特定更改的详细信息:

[code]snap change <ID>[/code]

在遇到问题时,还可以按 ID 停止更改历程:

[code]sudo snap abort <ID>[/code]

4.5 设置 Snap 别名

为了简化复杂下令,我们可以通过Snap 的别名功能,为已安装的 Snap 应用程序创建快捷下令:

[code]sudo snap alias <软件包名称> <别名> # 指定别名sudo snap unalias <别名> # 取消别名[/code]

4.6 使用 Snap 日志排查问题

Snap 的日志功能是诊断 Snap 应用程序和服务问题的强大工具。你可以通过日志,识别启动失败或运行非常等问题。

[code]sudo snap logs <软件包名称>[/code]

可以添加[code]-f[/code]选项来及时监控错误日志输出,雷同于 Linux 中的[code]tail -f[/code]下令。


来源:https://www.jb51.net/LINUXjishu/957288.html
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
关闭

站长推荐上一条 /6 下一条

QQ|手机版|小黑屋|梦想之都-俊月星空 ( 粤ICP备18056059号 )

GMT+8, 2024-12-24 03:13 , Processed in 0.031209 second(s), 17 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2024 Discuz! Team.

返回顶部