LINUX.ORG.RU

Локальный репозиторий и sources.list

 , ,


0

2

Помогите, пожалуйста, создать локальный репозиторий!

Терзаю дебиановый линукс на vm.

На сайте искала, но не помогло.

1) Начитавшись Интернет, нашла файл /etc/apt/sources.list

и дописала там строчку:

deb file:/home/itsme/debs stable main contrib non-free

Соответственно положила по указанному пути нужный пакет my.deb

Пишу волшебную строчку:

sudo apt-get update

Получаю в ответ в том числе печальные строки:

W: Не удалось получить file:/home/astraroot/debs/dists/stable/main/binary-amd64/Packages Файл не найден

W: Не удалось получить file:/home/astraroot/debs/dists/stable/contrib/binary-amd64/Packages Файл не найден

W: Не удалось получить file:/home/astraroot/debs/dists/stable/non-free/binary-amd64/Packages Файл не найден

Попыталась продублировать такой путь - все то же.

2) Если пишу в sources.list кроме установочного диска аналогично диск другого дистрибутива (где есть нужный пакет)

deb cdrom:[OS ...... - amd64 DVD ]/ name2 contrib main non-free

Получаю опять пакость:

W: Не удалось получить cdrom://OS ..... 1.3 name2 - amd64 DVD /dists/smolensk/contrib/binary-amd64/Packages Пожалуйста, используйте apt-cdrom, чтобы APT смог распознать данный CD. apt-get update не используется для добавления нового CD

W: Не удалось получить cdrom://OS ..... 1.3 name2 - amd64 DVD /dists/smolensk/main/binary-amd64/Packages Пожалуйста, используйте apt-cdrom, чтобы APT смог распознать данный CD. apt-get update не используется для добавления нового CD

W: Не удалось получить cdrom://OS ..... 1.3 name2 - amd64 DVD /dists/smolensk/non-free/binary-amd64/Packages Пожалуйста, используйте apt-cdrom, чтобы APT смог распознать данный CD. apt-get update не используется для добавления нового CD

3) Пробовала с помощью apt-cdrom (хотя мне и не с диска надо), но, видимо, «чужое» не пойдет:

gpgv: Не могу проверить подпись: неизвестная хэш-функция

А на «родном» диске нет нужных пакетов(

Собственно вопрос - что писать в /etc/apt/sources.list??

Или проблема не в sources.list?

ЧТО ДЕЛАТЬ?

Спасибо за все осмысленные ответы! =)

У репозитория вроде должен быть файл со списком пакетов.

rezedent12 ☆☆☆
()
sudo mkdir -p /var/local/debs

>Now add this at the end of /etc/apt/sources.list:
-----------------------------
# local debs
deb file:///var/local/debs ./
-----------------------------
>or run:
cat <<<'# local debs
deb file:///var/local/debs ./
' | sudo tee /etc/apt/sources.list.d/local_repo.list >/dev/null

Как-то так...

Porthos ★★★★★
()

В приведенных печальных строчках ясно написано, где именно и что именно ищет пакетный менеджер.
А если стащить из любого репозитория искомый файл, то несложно наколбасить по его подобию свой, со всеми нужными данными.
А если спросить у гугля, как создать локальный репозиторий в дебиане кошерным способом, то гугло научит это делать.
А если забить болт на все вышесказанное и отказаться от идеи городить репозиторий ради одного сраного пакета, то это отсрочит тепловую смерть вселенной, что вообще наилучший вариант.

thesis ★★★★★
()
Ответ на: комментарий от Porthos

W: Не удалось получить file:/home/itsme/debs/./Packages Файл не найден

E: Некоторые индексные файлы не скачались. Они были проигнорированы или вместо них были использованы старые версии.

TatianaSh
() автор топика
Ответ на: комментарий от thesis

Если вам ясно - поясните, будьте любезны) Мне - нет.

Про кошерный способ не знаю.

В альт линуксе удавалось просто прописать путь к папке с десятком-другим пакетов и устанавливать оттуда. Мне это было оптимально - и недолго разбираться/делать, и все что надо удается установить.

Хочется нечто подобное.

Если под кошерным вы понимаете большой-пребольшой, где есть все и сразу, то речь и не об этом.

TatianaSh
() автор топика
Ответ на: комментарий от TatianaSh

Нужно соблюдать пунктуацию. Не file:/home/itsme/debs, а file:///home/itsme/debs

Porthos ★★★★★
()

Репозиторий - это не просто файлохранилище, там должна быть ещё и служебная информация (индекс).

Рекомендую посмотреть в сторону aptly (http://www.aptly.info/), он позволяет достаточно легко сделать свой репозиторий.

В терминологии aptly: создаёшь repository, добавляешь в него пакет(ы), делаешь из repository snapshot, потом со snapshot делаешь publish - получается готовый репозиторий, который можно добавить в sources.list.

tiandrey ★★★★★
()
Ответ на: комментарий от TatianaSh

Мне - нет.

Так ведь это ж надо те строчки прочесть, а не тупо в ЛОР скопировать.

http://mirror.yandex.ru/debian/
Вот тебе вся структура репозитория перед глазами.
Нагенерить ее можно как руками, так и спецтулзами.

thesis ★★★★★
()

Есть такая прога, aptoncd, попробуй. С её помощью можно создать образ диска(*.iso), потом монтируешь его mount -o loop /path_to_iso /media/cdrom, через apt-cdrom add -d=/media/cdrom добавляешь. PROFIT.

neversleep ★★
()
Последнее исправление: neversleep (всего исправлений: 1)
dpkg-scanpackages -m . > Packages
cat Packages | gzip -9 > Packages.gz
cat Packages | bzip2 -9 > Packages.bz2
i-rinat ★★★★★
()

reprepro? Не слышал!

aol ★★★★★
()
apt-ftparchive packages . > Packages
maloi ★★★★★
()

Если тебе надо поставить один пакет, то надо кликнуть по нему два раза или выполнить sudo gdebi my.deb и не морочить себе голову.

proud_anon ★★★★★
()

2) Если пишу в sources.list кроме установочного диска аналогично диск другого дистрибутива (где есть нужный пакет)

Лучше так не делать. Откуда ты знаешь как изменили этот пакет создатели AstraLinux?

Выше тебе написали как сгенерировать файл, который apt найти не может. Только установи сначала dpkg-dev.

shrub ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.