我想在离线 Ubuntu 20.04 系统上安装 GNU octave。我有另一个连接到互联网的 Ubuntu 20.04 系统。有什么方法可以在线上系统上下载 GNU octave 所需的所有依赖项、软件包和源代码,然后在离线系统上安装?
答案1
您正在寻找的答案在https://stackoverflow.com/a/27469489/5649640一步步:
首先,在可以访问互联网的机器上执行此操作,将所有依赖项作为 *.deb 文件获取到当前目录中。
apt-get download $(apt-rdepends octave|grep -v "^ " |grep -v "^libc-dev$")
然后,通过导航到已复制下载文件的目录并执行以下命令,在目标计算机上安装软件包:
sudo dpkg -i *.deb
答案2
对于 Snap 安装
Snap 是受限的、独立的 Linux 应用程序,捆绑了所有必要的依赖项,这意味着它们不需要依赖底层系统,并且可以独立运行。
使用 Snap 在无法访问互联网的计算机上安装 Octave 等应用程序的优势在于一切都是独立的。您只需复制两个文件即可。
在连接的计算机上
以普通用户身份输入 ++Clrl打开终端并输入命令:AltT
snap download octave
这将显示以下输出:
Fetching snap "octave"
Fetching assertions for "octave"
Install the snap with:
snap ack octave_306.assert
snap install octave_306.snap
将下载的两个文件octave_306.assert
和octave_306.snap
从连接的计算机复制到 USB 闪存驱动器。这些文件总共略大于 300 MB。因此,任何 USB 闪存驱动器都可以。
在未连接的计算机上
将两个文件从 USB 驱动器复制到 未连接的计算机。“您的主文件夹”是您打开终端时的默认文件夹。
通过输入Clrl++打开终端,然后逐行输入以下两行:AltT
sudo snap ack ~/octave_306.assert
sudo snap install ~/octave_306.snap
输入第一行后,系统会要求输入sudo
密码。输入第二行后,您将看到以下输出:
octave 7.1.0 from GNU Octave (octave-snap✓) installed
现在 Octave 已安装在未连接的计算机中。
Octave 安装完成后,您可以从主文件夹中octave_306.assert
删除文件。octave_306.snap
参考
注意,在我的 Ubuntu 20.04 上没有需要ubuntu-core
按照上面答案的说明安装该包。
希望这可以帮助