如何在没有 apt 的发行版上安装软件包

如何在没有 apt 的发行版上安装软件包

我在网上搜索了半天,但仍然一无所获。

我需要一种方法来获取任何 apt-get 包作为 .deb 文件或类似的文件,以便我可以不用安装它apt-get install

例如我想要解压一个 zip 档案:

sh-4.3# unzip 2.zip
sh: unzip: command not found
sh-4.3# apt-get install unzip
sh: apt-get: command not found

或者我也喜欢的另一种选择是从某处下载 apt(?)并将其安装为 .deb 文件。

答案1

您无法在 motionEyeOS 中安装软件包。为了在 Raspberry Pi 上安装包括 motionEye 在内的软件,您可以安装 Raspbian,然后按照 motionEye 官方安装说明在 Raspbian 中安装 motionEye在 Raspbian 上安装。此链接中安装 motionEye 的说明如下所示。

使用以下命令显示您正在运行的 Debian 版本(也适用于许多基于 Debian 的发行版,例如 Raspbian):

cat /etc/issue  

cat /etc/issueRaspbian的示例输出:

Raspbian GNU/Linux 8 \n \l  

此输出显示已安装基于 Debian Jessie(最新版本)的 Raspbian 发行版。为了安装 motionEye,Raspbian 也必须是最新版本。

指示

  1. ffmpeg 不在官方 Debian 存储库中。此外,deb-multimedia.org 提供的变体在最近的更新后不再适用于 Raspbian。您可以自行编译(不推荐)或下载此预构建包并安装它:

    wget https://github.com/ccrisan/motioneye/wiki/precompiled/ffmpeg_3.1.1-1_armhf.deb  
    sudo dpkg -i ffmpeg_3.1.1-1_armhf.deb
    

    注意:如果您之前已将 deb-multimedia repo 添加到您的系统并安装了其版本的 ffmpeg,则需要从 apt 源中删除该 repo,并运行以下命令来删除相关库:

    sudo apt-get remove libavcodec-extra-56 libavformat56 libavresample2 libavutil54
    
  2. 从存储库安装依赖项:

    sudo apt-get install python-pip python-dev curl libssl-dev libcurl4-openssl-dev libjpeg-dev libx264-142 libavcodec56 libavformat56 libmysqlclient18 libswscale3 libpq5
    

    注意:v4l-utils 似乎已预安装在 Raspbian 系统上;如果没有,请安装它

  3. 安装动作:

    wget https://github.com/Motion-Project/motion/releases/download/release-4.0.1/pi_jessie_motion_4.0.1-1_armhf.deb  
    sudo dpkg -i pi_jessie_motion_4.0.1-1_armhf.deb
    

    注意:所有官方的运动预编译二进制文件都可以在这里找到。

  4. 安装 motioneye,它将自动拉取 Python 依赖项(tornado、jinja2、pillow 和 pycurl):

    sudo python -m pip install motioneye
    
  5. 准备配置目录:

    sudo mkdir -p /etc/motioneye  
    sudo cp /usr/local/share/motioneye/extra/motioneye.conf.sample /etc/motioneye/motioneye.conf
    
  6. 准备媒体目录:

    sudo mkdir -p /var/lib/motioneye
    
  7. 添加一个初始化脚本,将其配置为在启动时运行并启动 motionEye 服务器:

    sudo cp /usr/local/share/motioneye/extra/motioneye.systemd-unit-local /etc/systemd/system/motioneye.service    
    sudo systemctl daemon-reload  
    sudo systemctl enable motioneye  
    sudo systemctl start motioneye  
    
  8. 要升级到 motionEye 的最新版本,只需发出:

    sudo python -m pip install motioneye --upgrade  
    sudo systemctl restart motioneye  
    

答案2

您正在使用motionEyeOS。这是一个高度定制的 Linux 发行版,专门用于视频监控。

此发行版的创建者使用构建根。这意味着它不是 Debian 发行版。只有 Debian 和基于它的发行版(如 Ubuntu、Mint 等)使用apt-get

开发商已明确表示维基百科

“motionEyeOS 不是一个通用的 Linux 发行版。您无法安装软件包就像使用普通发行版一样。如果您需要进一步自定义设置,建议在常见发行版上安装 motionEye。”

答案3

您可以使用下载包的源代码apt-get source <package name>并使用命令编译代码make

相关内容