Внутренний узел Apache хранилища для малины Pi

Есть ли способ хранить файлы .deb на сервере Apache на Ubuntu и иметь возможность устанавливать их на Pi с помощью sudo apt-get install команда?

4 голоса | спросил Jhondoe 1 Jpm1000000pmThu, 01 Jan 2015 19:33:44 +030015 2015, 19:33:44

2 ответа


3

OK. Вот ответ, который вы ищете (от root или sudo)

  1. Установить Apache

    apt-get install apache2
    
  2. Создайте каталог репозитория пакетов Debian

    mkdir /var/www/debs/arm
    
  3. Переместите свои deb в каталог /var /www /debs /arm

  4. Перейдите в каталог /var /www /debs, если он еще не существует

    cd /var/www/debs
    
  5. Выполните следующую команду для создания файла packages.gz

    dpkg-scanpackages arm | gzip -9c > arm/Packages.gz
    
  6. Теперь нам нужно сделать репозиторий известным, обновив /etc/apt/sources.list

    sudo nano /etc/apt/sources.list
    

и добавьте строку, которая выглядит так (на основе примеров на данный момент)

deb http://localhost/debs/
  1. Теперь обновите APT

    sudo apt-get update
    
  2. Теперь, когда вы сделали много, осталось только попробовать. Я установил его, когда писал, и подтвердил, что он сработал.

Вот как я проверен. Я использовал узел, чтобы проверить его.

 wget http://node-arm.herokuapp.com/node_latest_armhf.deb
 sudo mv node_latest_armhf.deb /var/www/debs/arm

 cd /var/www/debs
 dpkg-scanpackages arm | gzip -9c > arm/Packages.gz

Затем я редактировал /etc/apt/sources.list. Я прокомментировал значение по умолчанию и добавил созданный

 sudo nano /etc/apt/sources.list

 #deb http://mirrordirector.raspbian.org/raspbian wheezy main firmware
 #deb http://archive.raspberrypi.org/debian wheezy main
 deb `http://192.168.1.90/debs/ arm/`

 sudo apt-get update
 sudo apt-get install node

Просто, чтобы показать, что это сработало, но оно дает «Следующие пакеты не могут быть аутентифицированы!» предупреждение

Доказательство работы

Изменить: Как вы можете видеть из моего примера и скриншота, я использовал свой IP-адрес pi вместо использования локального хоста, но вы можете идти в любом случае.

Кроме того, вы можете использовать lighttpd или nginx вместо apache, поскольку он будет использовать меньше ресурсов.

Изменить 2: Хорошо, в комментариях, которые вы указали, вы получаете сообщение об ошибке

malformed line 2 in source list /etc/apt/sources.list (dist parse)

Итак, в строке 2 есть что-то не так. Я использую Raspbian Minimal (raspbian-ua-netinst), но вот мой /etc/apt/sources.list. Вероятно, у вас будет больше записей. Первые две записи по умолчанию, я прокомментировал их только для проверки установки, поскольку мне не нужен узел для установки из любого места, кроме моего репо пакета. Поэтому взгляните на строку 2 и убедитесь, что она соответствует формату того, что я разместил ниже. Вероятно, есть дополнительное пространство на этой линии, нет места, где должен быть один или, может быть, случайный персонаж или что-то в этом роде. После этого запустите

sudo apt-get update

apt-sources

ответил geoffmcc 2 Jpm1000000pmFri, 02 Jan 2015 18:28:22 +030015 2015, 18:28:22
4

Вы можете поместить debs на сервер на Ubuntu, но вы не сможете установить их, не используя при этом что-то вроде термина из терминала.

 wget servername/name.deb

Тогда вы можете

 sudo dpkg -i name.deb

Другим вариантом было бы установить Ubuntu в качестве сервера NFS и использовать Pi в качестве клиента. Затем вы можете настроить /etc/fstab, чтобы автоматически монтировать общий ресурс NFS на Pi. Затем вы просто зайдете туда, где вы установили долю в Pi, и выполните ту же команду:

sudo dpkg -i name.deb

Если идея NFS вас интересует, у вас не должно возникнуть проблемы с поиском того, как это сделать в спросе или в других местах. Его довольно легко настроить.

ответил geoffmcc 1 Jpm1000000pmThu, 01 Jan 2015 19:46:02 +030015 2015, 19:46:02

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132