Автор Тема: Локальный репозиторий  (Прочитано 20820 раз)

Оффлайн ivm

  • Ветеран
  • *****
  • Сообщений: 3071
  • Что бы ни случилось, всё будет хорошо!
Локальный репозиторий
« : 16 Августа 2015, 18:15:53 »
Иногда бывает нужно установить на стационарную домашнюю машину несколько пакетов для обновления, загруженных на работе или в интернет-кафе.  
Можно, конечно, скопировать их все в один каталог, затем в открытом по ПКМ терминале выполнить sudo dpkg -i *.deb и если в каталоге оказались все файлы по зависимостям радоваться жизни, обновив таким образом систему там, где нет интернета.
Можно пойти другим путём и создать из имеющихся пакетов репозиторий и обновиться из него привычными командами или через синаптик. В сети много чего написано на этот счет...
Естественно "ховто" читать всё-таки полезно, но как оказалось терминал подскажет точнее. Оказалось, что в каталоге, который в конце станет локальным репозиторием, папочная структура типа /dists/trusty/main/binary-i386/ для ТТ32 всё-таки нужна и в эту самую binary-i386 и нужно складывать i386 пакеты. Но поскольку я следовал дебиановскому "ховто", то первоначально я просто создал в домашнем каталоге папку new и сложил в неё пакеты. Затем в строгом соответствии напустил на неё скрипт, ну кому что, а мне командуdpkg-scanpackages -t deb /home/ivm/new/ | gzip | cat > /home/ivm/new/Packages.gz в ответ на которую терминал мне ответил dpkg-scanpackages: инфо: Записано 140 записей в выходной файл Packages.
Но после добавления в /etc/apt/Sources.list строки  
Цитировать
deb file:/home/ivm/new/
в ответ на sudo apt-get updateи получил сначала сообщение E: Искажённая строка 62 в списке источников /etc/apt/sources.list (проблема в имени дистрибутива) интуиция подсказала, что нужно добавить кодовое имя дистрибутива и добавил  
Цитировать
trusty main
т.е. репозиторий стал
 
Цитировать
deb file:/home/ivm/new trusty main
Репозиторий в систему добавился с предупреждением W: Не удалось получить file:/home/ivm/new/dists/trusty/main/binary-i386/Packages  Файл не найден. Файл-то создан и в полном соответствии с многими "ховто" лежит в моей папке вместе с пакетами, А поскольку доказывать терминалу правоту того или иного автора бесполезно, то последовательно создал в своей папке указанный в терминале путь /dists/trusty/main/binary-i386/ и перенёс в него и все дебпакеты и Packages.gz это устранило все ошибки в репозитории, но попыталось напугать тем, что источник ненадежный. Очевидно это произошло потому, что я не подписал репозиторий ключом, хотя себе я и без него доверяю.
Вот так я создал локальный репозиторий и обновил из него систему до актуальной версии Mate 1.10 (пакеты были скачаны из репозитория Linux Mint 17.2 Rafaela).