如何在 Linux 中管理 Snap(第 2 部分)
这是Linux 中 snap 初学者指南系列文章的第二篇。它介绍了如何从命令行界面运行 snap、创建和使用 snap 别名、与 snap 的服务交互以及创建和管理 snap 的快照。
从 Snap 运行应用程序
snap可能提供一个应用程序(或一组应用程序),您可以从图形用户界面或使用命令运行这些应用程序。默认情况下,与 snap 相关的所有应用程序都安装在基于Debian 的发行版的/snap/bin/目录下,以及基于 RHEL 的发行版的/var/lib/snapd/snap/bin/目录下。
您可以使用ls 命令列出 snap 目录的内容,如下所示。
$ ls /snap/bin/ OR # ls /var/lib/snapd/snap/bin/
例如,要从命令行运行应用程序,只需输入其绝对路径名。
$ /snap/bin/mailspring OR # /var/lib/snapd/snap/bin/mailspring
要仅输入应用程序名称而不输入其完整路径名,请确保/snap/bin/或/var/lib/snapd/snap/bin/位于您的PATH环境变量中(默认情况下应添加)。
您可以通过键入来验证环境变量。
# echo $PATH
如果/snap/bin/或/var/lib/snapd/snap/bin/目录在您的PATH中,则只需输入其名称/命令即可运行应用程序:
$ mailspring
要查看snap下可用的命令,请运行“ snap info snap-name ”命令,并查看如下图所示命令部分。
# snap info mailspring
您还可以使用which命令查找应用程序或命令的绝对路径名。
# which mailspring
创建和使用 Snap 别名
Snap还支持为应用程序创建别名。Snap 的默认(或标准)别名在启用之前必须经过公开审核,但您可以为本地系统创建别名。
您可以使用别名命令为快照创建别名。
# snap alias mailspring mls
要列出snap 的别名,例如mailspring,请运行以下命令。从现在开始,您可以使用别名来运行 snap。
# snap aliases mailspring
要删除快照的别名,请使用unalias命令。
# snap unalias mls
管理 Snap 的服务
对于某些 snap,底层功能是通过作为守护进程或服务运行的应用程序来公开的,一旦 snap安装完成,它们就会自动启动并在后台持续运行。此外,服务也会在系统启动时自动启动。重要的是,单个 snap 可能包含多个应用程序和服务,它们协同工作以提供该 snap 的整体功能。
您可以在“ snap info snap-name ”命令的输出中的服务部分下检查 snap 的服务。例如,对于rocketchat-server。
# snap info rocketchat-server
您可以使用services命令交叉检查 snap 中的服务。命令输出显示服务是否已启用在系统启动时自动启动,以及是否处于活动状态。
# snap services rocketchat-server
要停止运行服务(例如rocketchat),请使用stop命令。请注意,不建议执行此操作,因为手动停止 snap 的服务可能会导致 snap 出现故障。
# snap stop rocketchat-server
要启动服务,例如rocketchat ,请使用start命令。
# snap start rocketchat-server
要在对 snap 应用程序进行一些自定义更改后重新启动服务,请使用restart命令。请注意,默认情况下,将重新启动指定 snap 的所有服务:
# snap start rocketchat-server
要使服务在系统启动时自动启动,请使用enable命令。
# snap enable rocketchat-server
要防止服务在下次系统启动时自动启动,请使用disable命令。
# snap disable rocketchat-server
要查看服务的日志,请使用带有-f选项的log命令,该命令允许您实时在屏幕上查看日志。
# snap logs rocketchat-server OR # snap logs -f rocketchat-server
重要提示:您可以对单个 snap 的服务或命名 snap 的所有服务运行上述服务命令,具体取决于提供的参数。这意味着,如果 snap 有许多服务,您可以使用更具体的服务名称。
创建和管理 Snap 的快照
Snapd会为一个或多个快照存储用户、系统和配置数据的副本。您可以手动触发此功能,也可以将其设置为自动运行。这样,您可以备份快照的状态、将其恢复到以前的状态以及将新的 snapd 安装恢复到以前保存的状态。
要手动生成快照,请使用“ snap save ”命令。要为mailspring创建快照,请运行以下命令:
# snap save mailspring
如果未指定快照名称,snapd将为所有已安装的快照生成快照(添加--no-wait
在后台运行该过程的选项以释放您的终端并允许您运行其他命令)。
# snap save
要查看所有快照的状态,请使用saved命令。您可以使用--id
标志显示特定快照的状态:
# snap saved OR # snap saved --id=2
您可以使用check-snapshot命令和快照标识符(设置 ID)来验证快照的完整性:
# snap check-snapshot 2
要使用特定快照中的相应数据恢复当前用户、系统和配置数据,请使用restore命令并指定快照集 ID:
# snap restore 2
要从系统中删除快照,请使用forget命令。默认情况下,所有快照的数据都会被删除,您可以指定某个快照仅删除其数据。
# snap forget 2 OR # snap forget 2 mailspring
至此,我们结束了有关在 Linux 中使用 snap 的新手指南的两部分系列文章。有关更多信息,尤其是有关设置系统选项以自定义 snap 环境等信息,请参阅Snap 文档。与往常一样,欢迎通过下面的反馈表提出问题或意见。