[ubuntu]使用snap命令将应用商店中的应用离线,并在另一台离线机器上进行安装

首先在相同版本的ubuntu服务器上执行离线下载操作:

snap download vlc

执行此命令后,会生成两个文件:

vlc_3777.assert 
vlc_3777.snap

拿到离线的ubuntu服务器上执行安装:

sudo install vlc_3777.snap --dangerous

报错:

确保 "vlc" 的先决条件可用 # <== 这条错误消息有N多行,应该是尝试连接网络吧 
确保 "vlc" 的先决条件可用 
错误:cannot perform the following tasks: 
- 确保 "vlc" 的先决条件可用 (cannot install snap base "core18": Post "https://api.snapcraft.io/v2/snaps/refresh": read tcp 10.30.2.73:52354->185.125.188.59:443: read: connection reset by peer)

从错误消息看,应该是缺少了一个依赖“core18”,我们以同样的方法下载、安装它:

# 联网的服务器上执行 
snap download core18 
# 生成文件 
core18_2846.assert 
core18_2846.snap 

# 离线的服务器上执行 
sudo install core18_2846.snap --dangerous 
# 再次安装vlc 
sudo install vlc_3777.snap --dangerous

成功!