根据您的具体需求,有几个选择。
运行snap revert package-name
回到该应用程序的上一个版本。您将保持在该版本上,直到下一个版本发布。如果下一个版本仍然有问题,您可以再次运行snap revert
。
许多在Snap Store中的软件使用tracks来进行主要软件发布。大多数Snaps默认使用latest/stable
track,这将在应用程序发布后为您提供最新的更新,但用户可以选择不同的track以使用特定版本。
例如,对于CLion IDE,您可以通过运行snap info clion
查看支持的tracks。您可以通过运行snap refresh clion --channel=2020.2/stable
切换到不同的track。您将保持在该track上,直到手动更改为其他track。您仍将自动获取应用程序的更新,但根据您选择的track,您只会获得该软件特定版本的次要更新。
"保留"选项正是你需要的。你可以指定一个确切的日期,Snap会在那个日期之前保留任何更新。例如,这将保留未来30天的更新。
snap refresh --hold=<duration> <snap1> <snap2>
--hold=forever
在这种情况下,您可能想要更改刷新计时器。例如,以下选项将刷新计时器设置为每月最后一个星期六,从晚上23:00到第二天早上1:00。
sudo snap set system refresh.timer=sat5,23:00-01:00
你可以使用CLI工具或者Snap Store来查看可用的更新。
默认情况下,当NetworkManager检测到计量连接(如LTE/3G/4G)时,Snap不会进行更新。如果NetworkManager没有正确检测到,你可以手动设置。
这是一个实验性功能,你可以通过运行以下命令来启用:
snap set core experimental.refresh-app-awareness=true
更多信息,请参阅快照刷新感知和更新抑制
有关更多选项,请参阅控制更新文档。
在撰写本文时,官方尚不支持此功能,这引起了一场激烈的辩论。如何更好地控制桌面更新仍在讨论中。
在你的/etc/hosts/
文件中屏蔽商店:
127.0.0.1 api.snapcraft.io
sudo nano /etc/hosts
,复制粘贴这一行,然后按下F2键,接着按Y键,最后按下回车键。最后,打开一个终端并输入(docs):
sudo snap set system refresh.metered=hold
refresh.metered=hold
才会起作用。 - codywohlerssnapd
守护程序。sudo systemctl stop snapd.service
sudo systemctl mask snapd.service
sudo systemctl unmask snapd.service
sudo systemctl start snapd.service
sudo snap refresh
刷新
将刷新系统中的所有快照。
这是比任何给出的答案更好的总结。 由于某种原因,那个问题被标记为重复,指向了这个问题:)。
使用最新版本的Snap(目前在Edge频道上),您可以禁用Snap更新。
新的保留功能允许系统管理员和终端用户停止或推迟Snap更新,时间长短由他们决定。保留可以应用于单个Snap或整个已安装的Snap集,可以在有限的时间内暂停Snap更新,或者如果需要,可以无限期地进行保留。
例如,要暂停VLC的Snap更新3天,您将运行以下命令:
snap refresh --hold=72h vlc
将于2022-11-17T12:04:59Z之前对"vlc"进行一般性更新。
同样地,为了暂停所有快照的刷新而持续48小时:
snap refresh --hold=48h
所有快照的自动刷新将持续到2022年11月16日12:27:25Z。
要完全停止自动刷新,且不使用计时器:
snap refresh --hold
sudo snap set core refresh.schedule=8:00-20:00
snap set core refresh.schedule=20-8
错误:无法执行以下任务:
- 运行“core”快照的配置钩子(运行钩子“configure”:无法解析“20”:不是有效的时间)
- sergiusens一个解决方案可能是从特定版本的频道安装,例如对于 PyCharm:
snap install pycharm-professional --channel 2018.3/stable --classic
$ snap info pycharm-professional
name: pycharm-professional
summary: Python IDE for Professional Developers
publisher: jetbrains✓
contact: https://www.jetbrains.com/pycharm/documentation/
license: unset
description: |
PyCharm Professional Edition is an IDE for professional Python development. It is designed by
programmers, for programmers, to provide all the tools you need for productive Python, Web and
Scientific development.
PyCharm Professional Edition is available for a free 30-day evaluation.
Monthly and yearly subscription options are available for companies and individual users. Find out
more on https://www.jetbrains.com/pycharm/buy/
commands:
- pycharm-professional
snap-id: Uqpw0ZWqy6Wh4mgaWE0rxgM5tAGCwf4D
tracking: stable
refresh-date: 10 days ago, at 09:22 PDT
channels:
stable: 2019.1.1 2019-04-03 (127) 392MB classic
candidate: 2019.1.1 2019-04-03 (127) 392MB classic
beta: 2019.1.1 2019-04-03 (127) 392MB classic
edge: 2019.1.1 2019-04-03 (127) 392MB classic
2019.1/stable: 2019.1.1 2019-04-03 (127) 392MB classic
2019.1/candidate: 2019.1.1 2019-04-03 (127) 392MB classic
2019.1/beta: 2019.1.1 2019-04-03 (127) 392MB classic
2019.1/edge: 2019.1.1 2019-04-03 (127) 392MB classic
2018.3/stable: 2018.3.5 2019-02-27 (121) 355MB classic
2018.3/candidate: 2018.3.5 2019-02-27 (121) 355MB classic
2018.3/beta: 2018.3.5 2019-02-27 (121) 355MB classic
2018.3/edge: 2018.3.5 2019-02-27 (121) 355MB classic
2018.2/stable: 2018.2.8 2019-04-12 (128) 313MB classic
2018.2/candidate: 2018.2.8 2019-04-12 (128) 313MB classic
2018.2/beta: 2018.2.8 2019-04-12 (128) 313MB classic
2018.2/edge: 2018.2.8 2019-04-12 (128) 313MB classic
2018.1/stable: 2018.1.6 2018-11-15 (101) 314MB classic
2018.1/candidate: 2018.1.6 2018-11-15 (101) 314MB classic
2018.1/beta: 2018.1.6 2018-11-15 (101) 314MB classic
2018.1/edge: 2018.1.6 2018-11-15 (101) 314MB classic
2017.3/stable: 2017.3.7 2018-11-15 (100) 344MB classic
2017.3/candidate: 2017.3.7 2018-11-15 (100) 344MB classic
2017.3/beta: 2017.3.7 2018-11-15 (100) 344MB classic
2017.3/edge: 2017.3.7 2018-11-15 (100) 344MB classic
installed: 2019.1.1 (127) 392MB classic
#!/bin/sh
sudo snap refresh --list
read -p "Run snap refresh [Yes/no]?" refresh
case $refresh in
[Nn]* ) break;;
* )
sudo snap refresh
#Update the last-refresh time
sudo systemctl stop snapd
sudo jq -c ".data[\"last-refresh\"] = \"$(date +%Y-%m-%dT%H:%M:%S%:z)\"" /var/lib/snapd/state.json > /var/lib/snapd/state.json.new
sudo chmod 600 /var/lib/snapd/state.json.new
sudo mv /var/lib/snapd/state.json.new /var/lib/snapd/state.json
sudo systemctl start snapd
sudo snap set system refresh.hold="$(date --date='today+90days' --iso-8601=seconds)"
;;
esac
超过90天保留快照
根据我对代码的审查和迄今为止的测试,我相信通过定期更新最后刷新参数并重置保留日期,可以无限期地保留快照,而无需进行手动刷新。由于这不是我想要做的,所以我没有进行测试。
sudo systemctl stop snapd.service
sudo systemctl disable snapd.service
可能有效。Ubuntu 变成了 OS-X:“你想要如何更新?是立即
还是自动
?” - Vasilii Suricovsudo snap refresh --hold=forever <软件包名称>
。不需要关闭整个 snap 服务,也不要舍弃一切。 - undefined