Создание локального репозитория с помощью apt-move.

Изображение пользователя uicraor.

Устанавливаем пакет apt-move.
Создаем папку где у нас будет лежать локальный репозитоий, у меня например /home/srv/mirror/
Редактируем конфигурационный файл:
sudo nano /etc/apt-move.conf
Должно получиться вот так:

Развернуть/свернуть скрытый текст.
#  Configuration file for the apt-move script.
#
#  You should modify the following configuration to suit your system.
#  See the apt-move(8) manpage for information about these settings.
#
#  The defaults for this file are simply the settings I currently use.

# Configuration for apt-move script --------------------------------------

# The sites in ``/etc/apt/sources.list'' that you wish to mirror.
APTSITES="/all/"

# Указываем где находится наш локальный репозиторий
LOCALDIR=/home/srv/mirrors/

# Здесь указываем название диструбутива для репозитория, я оставил как есть.
DIST=stable

# The package types you want to mirror.
# Possible values are: binary, source, and both (use only one).
PKGTYPE=binary

# The full (absolute) path to your local cache of package files. The default
# will work for the apt-get packages, unless you've reconfigured apt.
FILECACHE=/var/cache/apt/archives

# The full (absolute) path to your local cache of Packages files.  The
# default will work for the apt-get Packages, unless you've reconfigured apt.
LISTSTATE=/var/lib/apt/lists

# Do you want apt-move to delete obsolete files from your mirror? (yes/no)
DELETE=no

# Maximum percentage of files to delete during a normal run.
MAXDELETE=20

# Здесь спрашивают нужны ли нам бинарники из /var/cache/apt/archives после создания локального репозитория, если нужны пишем yes, если нет то no
COPYONLY=yes

# Set this to 'none gzip' to get uncompressed Packages/Sources files.
PKGCOMP=gzip

# Set this to yes to make apt-move generate Contents files.
CONTENTS=yes

# Set this to key name to be used for signing Release files.
GPGKEY=

# End Configuration ------------------------------------------------------
Создаем локальный репозиторий:
sudo apt-move update
Теперь вы можете копировать локальный репозиторий на любой носитель и переносить пакеты на другой компьютер или на этот же если вы переставили систему.

Комментарии (10)

0
DarkneSS - 21 Май, 2010 - 17:36
Изображение пользователя DarkneSS.

Плюсанул. Насколько я помню, утилита копирует все пакеты, которые есть в кэше апта (т.е. которые были установлены)?

+1
uicraor - 21 Май, 2010 - 18:46
Изображение пользователя uicraor.

да именно так... =)

0
fox4 - 24 Май, 2010 - 19:06
Изображение пользователя fox4.

А как решить вопрос с ключами ?
# Set this to key name to be used for signing Release files.
GPGKEY=

Неподписаный репозиторий игнорируется и apt просится в инет прописать путь к зеркалу в начало sources.list уже не помогает.
И ещё перед apt-move update советую apt-get autoclean.

0
DarkneSS - 24 Май, 2010 - 19:07
Изображение пользователя DarkneSS.

Думаю стоит поковыряться и поискать галку, чтобы ставил из неподписанного...
Имхо если делать автоклин перед апт-мув, то все пакеты будут удалены =)

0
knuckles - 25 Май, 2010 - 10:26

sudo apt-get --allow-unauthenticated install <имя_пакета>
или
sudo aptitude --allow-untrusted install <имя_пакета>

0
uicraor - 24 Май, 2010 - 21:21
Изображение пользователя uicraor.

у меня все прокатывает, то что ругается, я не обращаю внимаение... ставиться без проблем...
а так я думаю никому не проблема сделать свой ключ... :D
хотя я ставлю командой wajig install и нужный пакет... :D

0
fox4 - 24 Май, 2010 - 22:02
Изображение пользователя fox4.

В KPackageKit такой галки пока нету и думаю врядли появится (иначе потеряется смысл ключами репозитории подписывать с точки зрения безопасности).
autoclean - Erase old downloaded archive files
apt-get autoclean удаляет только старые версии пакетов и следовательно по apt-move update будем иметь свежий срез пакетов а не мешанину всего что качалось за последнее время :-) Это кстати проверено. Ключ сделать тоже не проблема ... проблема в том как этот ключ apt-move подсунуть чтобы он полученный локальный репозиторий автоматом подписывал вроде и в конфиге эта настройка имеется
# Set this to key name to be used for signing Release files.
GPGKEY=
но вот сколько я с бубном не плясал у меня не получилось только в ручную по какой-то статье накопаной в инете :-(

0
DarkneSS - 24 Май, 2010 - 22:07
Изображение пользователя DarkneSS.

А смысл сохранять только свежие пакеты?.. Не понимать =)
Они же всё равно не продублируются в репозитории! Впрочем хозяин - барин.

0
uicraor - 25 Май, 2010 - 07:46
Изображение пользователя uicraor.

ты можешь сам сделать какие пакеты тебе нужны в локальном репе...
нужно всего лишь выполнить пару команд...
apt-move movefile имя пакета
создаем Packages.gz и Sources.gz дерева локального зеркала...
apt-move packages
и будем иметь не только свежий срез но и только нужные пакеты...
з.ы. статью в студию! =)

0
fox4 - 29 Май, 2010 - 13:16
Изображение пользователя fox4.

Кажется по этой статье давно это было...
Конкретно я пользовался этим
Подписываем release-файл своим ключем
# gpg --gen-key
# apt-key add /root/.gnupg/pubring.gpg
# gpg -abs -o /home/debian/dists/Release.gpg /home/debian/dists/Release

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры