【问题标题】:Run sudo apt-get install without internet connection在没有互联网连接的情况下运行 sudo apt-get install
【发布时间】:2013-05-30 22:11:29
【问题描述】:

我的最终目标是将我的 Raspberry Pi 变成一个 FTP 服务器。它已连接到网络,但没有 Internet 连接。如果我可以运行“sudo apt-get install ....”命令,这似乎非常容易完成,但由于我没有互联网,这是不可能的。

我下载了适用于 python 的“ftplib”,我认为一旦启动它,我就可以连接到我的 FTP 服务器并与之交互,但现在我被卡住了。

我对 Linux 或 Web 服务器知之甚少,因此提前感谢您的耐心等待。

我认为一个可能的解决方案是在我的计算机上通过互联网下载 LAMP 包,然后将其传输到 Raspberry Pi,但我不确定我可能会遇到什么样的路径和文件夹问题。

【问题讨论】:

  • 你使用的是什么 Linux 发行版?
  • 您应该接受对您最有帮助的答案。这样你至少可以支持支持你的社区。​​span>
  • 嘿,伙计们,这是我关于堆栈溢出的第一个问题,当我得到一个显然设置错误的答案时,我期待一封电子邮件,所以直到现在我才看到任何活动,抱歉让每个人都悬而未决。我现在用的是 2.7
  • 其实我的发行版是 Raspbian “wheezy”,2.7 是我的 python 版本哈哈

标签: python linux ftp raspberry-pi apt


【解决方案1】:

这样做永远不会干净,也永远不会完美。但以下是我为使其有时工作所做的工作。

您将需要一台类似于 FTP 服务器的机器,并且您需要从 FTP 服务器下载所有包和依赖项。通常,您将首先从互联网机器上运行:

sudo apt-get clean 

上面的命令会清理/var/cache/apt/archives/ 目录,这样你就可以确保它只包含你想要的包和依赖项。然后执行:

sudo apt-get -d build-dep <package_name>

-d 只进行下载,build-dep 获取所需的所有依赖项并将它们放入/var/cache/apt/archives/。这就是为什么您至少需要一个类似的构建。如果您的机器已经拥有目标服务器所需的软件包,有时您甚至可能需要发送sudo apt-get remove &lt;package name&gt;

然后,您从该目录中取出数据并将其放在某个设备上以传输到您的 FTP 服务器。从那里你在你的目标机器上执行:

sudo dpkg -i *.deb

你可以做的另一件事是使用 apt offline http://apt-offline.alioth.debian.org/

【讨论】:

  • 我想我忘了提一些重要的事情,我的互联网机器是 Windows 7,我现在还不能访问 linux 系统,但在未来,这听起来像是go 是让一个 linux 连接到互联网的朋友为我下载一个副本并完成所有编译,然后我认为应该很好,而且你发送的最后一个链接看起来很有帮助!
  • @Shaun314 祝你好运!这样做很糟糕,但希望这些信息对您有所帮助。
  • 如果你知道你需要的所有包和依赖项,你可以使用apt-get download ...将deb下载到当前目录,将需要保存到apt-get clean等等。
【解决方案2】:

您必须下载软件包它的依赖项。然后将它们放在sd卡上并执行:

cd folder_with_debs
sudo dpkg -i *.deb

顺便说一句,在大多数情况下,将 eth 电缆插入树莓派会更容易(正如您在 SO 上发布的那样,您通常应该可以访问互联网)

【讨论】:

  • 那将是非常好的,但我们只是说由于各种有趣的公司互联网政策事情,说起来容易做起来难。而且我现在也在一台有互联网的 Windows 机器上。非常感谢您的帮助!
【解决方案3】:

这是对@Inquisitor 的回复。

顺便说一句,超级有用的答案;它让我走上了正确的轨道。我将在下面为任何感兴趣的人提供一些注释;请注意,所有这些变通方法最终都不起作用,我只是直接从以下位置下载了文件:

ftp://ftp.us.debian.org/debian/pool/main/t/tk8.5/
ftp://ftp.us.debian.org/debian/pool/main/t/tcl8.5/

但希望这对某人有用。

我正在 pi 上安装 tk8.5-dev 和 tcl8.5-dev。为此,我发现:

https://packages.debian.org/wheezy/armhf/tk8.5-dev/download
https://packages.debian.org/wheezy/armhf/tcl8.5-dev/download

我将 repo (deb http://ftp.de.debian.org/debian wheezy main) 添加到 /etc/apt/sources.list,然后运行 ​​sudo apt-get update。更新时,它对我大喊:

GPG error: http://ftp.de.debian.org wheezy Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 8B48AD6246925553 NO_PUBKEY 6FB2A1C265FFB764

因为我没有使用 debian,但我使用了

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8B48AD6246925553
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6FB2A1C265FFB764

它告诉我no ultimately trusted keys found。我又跑了sudo apt-get update。如果你错过了一个键(就像我最初做的那样),它会告诉你There is no public key available for the following key IDs: 6FB2A1C265FFB764。如果您仍有问题,this 可能会有所帮助,或者 --allow-unauthenticated 标志可能会有所帮助。

此时,我跑了

sudo apt-get -d build-dep tk8.5-dev_8.5.11-2_armhf.deb tcl8.5-dev_8.5.11-2_armhf.deb

得到了

Unable to find a source package for tk8.5-dev_8.5.11-2_armhf.deb

所以我added an architecture dpkg:

sudo dpkg --add-architecture armhf
sudo apt-get update

而 apt-get 仍然无法找到这些包。所以我放弃了,直接下载了文件。就我而言,由于无法使用 build-dep,因此我下载并安装了此处列出的所有 armhf 内容:

https://packages.debian.org/stable/devel/libxss-dev
https://packages.debian.org/stable/devel/libxft-dev
https://packages.debian.org/stable/devel/tk8.5-dev
https://packages.debian.org/stable/devel/tk8.5
https://packages.debian.org/stable/devel/tcl8.5-dev
https://packages.debian.org/stable/devel/tcl8.5

有更多的依赖关系,所以我今天会解决这些问题,如果我发现其他有趣的东西,我会编辑这个答案。

当然,所有好的东西都是chiastic,所以我不得不再次撤消一切,因为我不想在我的 amd64 mint 系统上安装 debian armhf 包:

sudo dpkg --remove-architecture armhf
sudo apt-key del 8B48AD6246925553
sudo apt-key del 6FB2A1C265FFB764
sudo apt-get update

并从 /etc/apt/sources.list 中删除 deb http://ftp.de.debian.org/debian wheezy main

更多来源: http://savvyadmin.com/download-pgp-keys-with-apt-key/

无论如何,我不知道这是否算作一个答案,但希望它会对某人有所帮助。

【讨论】:

    【解决方案4】:
    sudo dpkg -i ftplib
    

    对于 Debian 软件包。

    【讨论】:

      猜你喜欢
      • 2012-08-06
      • 1970-01-01
      • 2012-03-18
      • 1970-01-01
      • 1970-01-01
      • 2015-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多