- Ubuntu Wiki
- Debmirror
- Чтобы создать зеркало репозитория, следуйте этим инструкциям
- Альтернативная точка зрения
- Начало процесса создания зеркала
- Создайте файл `mirrorbuild.sh`
- Содержимое скрипта зеркала, пожалуйста адаптируйте его под свои нужды
- Как использовать файл
- Установите зеркало
- Создайте cronjob чтобы зеркало обновлялось
- Настройте клиенские системы
- Создание зеркала репозиториев с помощью apt-mirror
- Содержание
- Настройка apt-mirror
- Автоматическое обновление локальной копии репозитория
- Дополнительные возможности apt-mirror
- Дальнейшая работа с локальной копией репозитория
- Создание зеркала репозитория Ubuntu с помощью apt-mirror
- Настройка apt-mirror
- Автоматическое обновление локальной копии репозитория
- Дополнительные возможности apt-mirror
- Дальнейшая работа с локальной копией репозитория
- Создание зеркала репозитория
- Содержание
- Краткое описание руководства
- Получение репозиториев
- Способ №1. При помощи debmirror
- Способ №2. При помощи ubuntu-repository.exe
- Создание «доверенного» репозитория
- Распространение репозитория
- Прокси репозитория
- http доступ к репозиторию
- Репозиторий на CD/DVD
- APTonCD
- Вручную через debmirror
- FIXME — тут старая статья — пока не измененная
Ubuntu Wiki
Debmirror
Чтобы создать зеркало репозитория, следуйте этим инструкциям
Это не покроет все остальные варианты, но даст возможность поэксперементировать. Чтобы всё прошло успешно, понадобится 8,2 ГБ дискового пространства для основных исходников и бинарных пакетов. Это число со временем возрастёт.
Альтернативная точка зрения
Создание локального репозитария — позволит вам создать локальный репозиторий для пакетов, принесенных на флешке или другом носителе, а потом использовать synaptic/kynaptic (или apt-get install package_name).
Если вы желаете скачать все возможные бинарники apt для всех ящиков в один сетевой ящик, то возможно apt-cache или transparent proxy (т.е. http-replicator) — то что вам нужно.
Ещё один метод — использование rsync. Страница Rsyncmirror даёт лучшее детальное представление об этом методе. Rsync может создать полное зеркало сайта и выбирает все файлы без исключения. В свою очередь, Debmirror, более контролируемый метод выбора файлов для зеркала и не так беспощаден к вашему дисковому пространству.
apt-mirror — Эта инструкция покажет, как создать зеркало Debian/Ubuntu для вашей локальной сети при помощи утилиты apt-mirror.
Начало процесса создания зеркала
Откройте gnome-terminal кликнув Приложения -> Стандартные -> Терминал.
Если в ваш лист репозитариев включён universe, то следующий шаг пропустите.
Откройте ваш список источников (sudo sensible-editor /etc/apt/sources.list), и добавьте следующую строку
deb http://cc.archive.ubuntu.com/ubuntu/ dapper universe
Затем сохраните и вернитесь к приглашению терминала (prompt).
В вышеуказанном примере, cc — код вашей страны (т.е. lv означает Latvia), а dapper замените на релиз, который вы используете.
Обновите список пакетов (sudo apt-get update), а затем установите debmirror (sudo apt-get install debmirror).
Сейчас мы должны создать папку, куда мы сохраним файлы. Примерный размер зеркала (только i386): # Временами меняется.
main, restricted, universe, multiverse
main, restricted, universe, multiverse
Пожалуйста, заранее убедитесь, что для пакетов, которые вы собираетесь скачать, достаточно места!
(Если вы продвинутый пользователь, то можете создать разные части зеркала на разных носителях, но в этом путеводителе этот вариант не описывается.)
Своё зеркало мы будем создавать в /home/ при помощи
Создайте файл `mirrorbuild.sh`
Чтобы создать файл mirrorbuild.sh
Откройте предпочитаемый вами редактор так
Скопируйте текст из следующего поля в редактор.
Вы можете пропустить строки, начинающиеся с # (NB EXCEPTION строка, которая начинается с #!/bin/bash должна остаться.)
Содержимое скрипта зеркала, пожалуйста адаптируйте его под свои нужды
Как использовать файл
- Сохраните файл и выйдите из редактора.
- Теперь поменяйте права и владельца зеркала. Имя группы — ваше имя пользователя:
- И заключительная часть настраивания зеркала — загрузка файлов
Теперь прогуляйтесь. Вашей машине придётся много чего скачать!
Установите зеркало
Нам нужно установить веб-сервер — Apache2. Вы можете выбрать apache версии 1.3, но это выходит за рамки этого документа.
Обычно это делается так: sudo apt-get install apache2
Затем (для простоты) давайте сделаем ссылку из /home/UbuntuMirror на /var/www/ubuntu.
Это означает, что когда вы захотите скачать с вашего зеркала, вы заходите на http://mirrorbox/ubuntu/.
Отлично! Значит так, у нас есть все пакеты и работающий сервер. Теперь нам нужно настроить клиентов.
Создайте cronjob чтобы зеркало обновлялось
Чтобы зеркало оставалось актуальным, добавьте скрипт зеркала в cron. Чтобы отредактировать файл crontab пользователя root, выполните:
И вставьте эту строку:
Она будет запускать скрипт каждые двенадцать часов на второй минуте часа. УБЕДИТЕСЬ что под добавленной строкой есть пустая строка, иначе команда никогда не выполнится. Если вам свойственна педантичность, перезапустите cron:
Настройте клиенские системы
Откройте терминал и введите:
Теперь в редакторе наберите следующие строки:
Затем сохраните и закройте файл.
Если теперь запустить
, обновления будут загружаться с вашего нового сервера!
RussianDocumentation/Debmirror (последним исправлял пользователь toheen 2009-04-18 08:10:52)
The material on this wiki is available under a free license, see Copyright / License for details.
Источник
Создание зеркала репозиториев с помощью apt-mirror
Содержание
apt-mirror — это простая и удобная утилита для создания локальных копий репозиториев Ubuntu, использующая такой же синтаксис, как и в файле /etc/apt/sources.list , в котором указываются все репозитории для Ubuntu.
Локальные копии репозиториев нужны для установки программ на машины с Ubuntu, не подключённые к интернету. В этом случае можно создать копию нужных репозиториев на внешнем диске или на ноутбуке на компьютере, у которого есть доступ к интернету, а затем подключить эту копию в качестве репозитория к машинам, на которых интернета нет. Для этого вам потребуется компьютер с установленной Ubuntu и безлимитным доступом к интернету.
Итак, на компьютере, подключённом к интернету и с установленной Ubuntu, ставим пакет apt-mirror через любое средство установки пакетов, например, командой
Далее необходимо определиться, в какой каталог складывать копию репозитория. Будем считать для примера, что копия репозитория будет складываться в папку /media/data/ubuntu-repo/ , которая находится на отдельном винчестере, примонтированном в каталог /media/data . Конечно нужно убедиться, что в указанной папке достаточно места для размещения полной копии нужных вам репозиториев.
Настройка apt-mirror
Всё, что осталось сделать, это отредактировать конфигурационный файл apt-mirror , добавив туда нужные опции и нужные репозитории, и запустить сам процесс зеркалирования. Этот файл называется /etc/apt/mirror.list . Ниже представлено комментированное его содержимое для случая создания копии официальных репозиториев Ubuntu 10.10 для архитектуры i386 в папке /media/data/ubuntu-repo/ :
Теперь осталось запустить apt-mirror и дождаться окончания его выполнения. Перед запуском необходимо убедиться, что основной каталог /media/data/ubuntu-repo/ , а так же все вспомогательные каталоги mirror , var и skel внутри него, существуют и доступны для записи пользователю apt-mirror . Создать все эти каталоги можно командами
Присвоить нужные права проще всего выставив владельцем этих каталогов пользователя apt-mirror :
После этого можно запустить apt-mirror командой
После загрузки индексов apt-mirror сообщит вам, какой объём пакетов будет загружен:
Вам останется только дождаться завершения скачивания.
Автоматическое обновление локальной копии репозитория
Можно настроить автоматическое обновление локальной копии репозиториев с помощью заданий cron . Для этого просто раскомментируйте нужную строчку с заданием в файле /etc/cron.d/apt-mirror :
Можете изменить время выполнения задания (по умолчанию — в 04:00 каждый день).
Дополнительные возможности apt-mirror
При использовании схемы, описанной выше, apt-mirror скопирует из указанных репозиториев только пакеты. Однако кроме этого в репозиториях Ubuntu содержится ещё достаточно много полезных данных, например, сетевые установщики. Всё это при использовании инструкции clean для этих репозиториев будет удалено, поскольку не содержится в актуальных индексах. Чтобы принудительно не очищать некоторые директории можно указать в файле mirror.list инструкцию skip-clean с нужным адресом. Например:
Можно указывать архитектуру непосредственно в APT строке репозитория, например вот так:
Дальнейшая работа с локальной копией репозитория
После завершения работы локальные копии всех репозиториев, указанных в mirror.list , окажутся в папках mirror/имя_репозитория в указанной основной рабочей папке apt-mirror . Таким образом копия репозитория, который был задан в mirror.list как
окажется в нашем случае в папке /media/data/ubuntu-repo/mirror/archive.ubuntu.com/ubuntu . И именно эту папку нужно будет подключать как репозиторий к другим системам с помощью HTTP или FTP сервера, или же непосредственно через физическое подключение файлового носителя.
Подключение созданной копии репозитория к другим компьютерам, разбивка её на части для записи на диски и другая полезная информация приведена в основной статье:
Источник
Создание зеркала репозитория Ubuntu с помощью apt-mirror
Зачастую при развёртывании сети машин на Ubuntu возникает проблема с организацией доступа в интернет с целью установки новых программ из стандартных репозиториев. Например, когда доступен лишь очень узкий канал в интернет или траффик не является безлимитным. К счастью, принцип организации пакетной системы Ubuntu позволяет очень гибко управлять тем, что и откуда качать с использованием штатных средств управления пакетами. В частности, вы можете создать локальную копию нужных вам интернет-репозиториев Ubuntu и подключить её как основной источник приложений в вашу локальную сеть. Таким образом все компьютеры в вашей сети не будут требовать соединения с интернетом для установки новых программ и обновлений. И при этом, что самое важное, сохранится весь функционал пакетных менеджеров.
В этой статье я расскажу как создать локальную копию репозитория с помощью утилиты apt-mirror. Это простая и удобная утилита для создания локальных копий репозиториев Ubuntu, использующая такой же синтаксис, как и в файле /etc/apt/sources.list, в котором указываются все репозитории для Ubuntu.
Всё, что вам потребуется — это компьютер с установленной Ubuntu и безлимитным доступом к интернету.
Локальная копия официального репозитория Ubuntu 10.10 только для одной архитектуры i386 занимает 36.2 GiB, учтите это.
Итак, на компьютере, подключённом к интернету и с установленной Ubuntu, ставим пакет apt-mirror через любое средство установки пакетов, например, командой
Далее необходимо определиться, в какой каталог складывать копию репозитория. Будем считать для примера, что копия репозитория будет складываться в папку /media/data/ubuntu-repo/, которая находится на отдельном винчестере, примонтированном в каталог /media/data. Конечно нужно убедиться, что в указанной папке достаточно места для размещения полной копии нужных вам репозиториев.
Настройка apt-mirror
Всё, что осталось сделать, это отредактировать конфигурационный файл apt-mirror, добавив туда нужные опции и нужные репозитории, и запустить сам процесс зеркалирования. Этот файл называется /etc/apt/mirror.list. Ниже представлено комментированное его содержимое для случая создания копии официальных репозиториев Ubuntu 10.10 для архитектуры i386 в папке /media/data/ubuntu-repo/:
Теперь осталось запустить apt-mirror и дождаться окончания его выполнения. Перед запуском необходимо убедиться, что основной каталог /media/data/ubuntu-repo/, а так же все вспомогательные каталоги mirror, var и skel внутри него, существуют и доступны для записи пользователю apt-mirror. Создать все эти каталоги можно командами
Присвоить нужные права проще всего выставив владельцем этих каталогов пользователя apt-mirror:
После этого можно запустить apt-mirror командой
После загрузки индексов apt-mirror сообщит вам, какой объём пакетов будет загружен:
Вам останется только дождаться завершения скачивания.
Автоматическое обновление локальной копии репозитория
Можно настроить автоматическое обновление локальной копии репозиториев с помощью заданий cron. Для этого просто раскомментируйте нужную строчку с заданием в файле /etc/cron.d/apt-mirror:
Можете изменить время выполнения задания (по умолчанию — в 04:00 каждый день).
Дополнительные возможности apt-mirror
При использовании схемы, описанной выше, apt-mirror скопирует из указанных репозиториев только пакеты. Однако кроме этого в репозиториях Ubuntu содержится ещё достаточно много полезных данных, например, сетевые установщики. Всё это при использовании инструкции «clean» для этих репозиториев будет удалено, поскольку не содержится в актуальных индексах. Чтобы принудительно не очищать некоторые директории можно указать в файле mirror.list инструкцию «skip-clean» с нужным адресом. Например:
Можно указывать архитектуру непосредственно в APT строке репозитория, например вот так:
Кроме того, можно подключаться к HTTP и FTP хостам, требующим авторизацию. Для этого необходимо в адресе указать имя, пароль и по необходимости — порт:
Дальнейшая работа с локальной копией репозитория
После завершения работы локальные копии всех репозиториев, указанных в mirror.list, окажутся в папках mirror/имя_репозитория в указанной основной рабочей папке apt-mirror. Таким образом копия репозитория, который был задан в mirror.list как
окажется в нашем случае в папке /media/data/ubuntu-repo/mirror/archive.ubuntu.com/ubuntu. И именно эту папку нужно будет подключать как репозиторий к другим системам с помощью HTTP или FTP сервера, или же непосредственно через физическое подключение файлового носителя.
Для подключения с помощью HTTP сервера можно установить Apache:
Затем сделать симлинк /var/www/ubuntu, указывающий на вашу папку с репозиторием:
После этого можно будет подключить этот компьютер как источник приложений ко всем остальным в сети, указав на них вот такой репозиторий:
В вашем случае, возможно, кроме main и restricted, будут и другие компоненты.
Если вы хотите использовать вашу копию репозитория как локальный репозиторий, то вам необходимо будет подключить ваш носитель с репозиторием к нужному компьютеру, а затем добавить примерно следующую строчку к списку источников приложений на этом компьютере:
Путь, конечно, в вашем случае может отличаться.
Напоследок хочется заметить, что во многих случаях совершенно не обязательно делать копию всего репозитория, а достаточно использовать что-то вроде apt-cache или apt-move.
Источник
Создание зеркала репозитория
Содержание
Краткое описание руководства
Репозиторий — это хранилище пакетов с программным обеспечением. Подробности о репозиториях можно прочитать в соответствующей статье.
— По возможности тут будут собраны все основные способы зеркалирования, создания и распространения репозиториев.
Получение репозиториев
— описание.
Способ №1. При помощи debmirror
Способ №2. При помощи ubuntu-repository.exe
Многих также интересует вопрос «Какой размер репозитория ubuntu» и «как удалить старые версии пакетов репозитория ubuntu»?
0.Требования к запуску программы. Практически такие же как и у автора программы.
1.Как узнать размер скачиваемого репозитория? Моя программа позволяет в интерактивной форме узнать размеры репозитория и отдельных его частей.
Повторяете операцию (а,б,в) для каждого релиза, который вам нужен (на момент публикации этого сообщения актуальной была Oneiric). Жмёте «Анализ». Прога изучает все вкладки и по каждой выдаёт суммарный размер репозитория. И в конце выдаёт размер всего-всего, что вы выбрали вообще. Программа не создаёт никаких временных файлов в процессе «Анализа», поэтому считается полностью Portable. (можно даже с CD запускать)
2. Как скачать Ubuntu репозиторий? Данная программа может скачать ubuntu репозиторий с опциональным выбором его частей.
г)Повторяете операцию (а,б,в) для каждого релиза, который вам нужен (Dapper в репозитории Ubuntu.com более не хранится). Жмёте кнопку скачивания. Программа скачивает пакеты связанные связанные с выбранными настройками. Внимание! Возможность скачивания находится на стадии beta и при слабом Интернет соединении может падать программа.
3. Как удалить устаревшие пакеты из скачанного репозитория? Такой вопрос часто возникает когда вы несколько раз обновили репозиторий с помощью другой программы, но она забыла удалить устаревшие пакеты. А по причине огромного размера репозитория сделать это вручную очень-очень долго.
Совет: Если в pool’e файлов меньше, чем официально должно быть, значит репозиторий не полный. Если наоборот — много больше, то либо репозиторий перегружен старыми версиями, либо стоит подумать, жать ли кнопку «Да». Потому что вся эта разница будет наверняка удалена. Для пытливых умов скажу алгоритм работы. Потому что возможно функция удаления старых пакетов Вас не устроит и удалит что-то лишнее из репозитория. Итак:
Данная функция программы тоже полностью Portable.
-Исправлена ошибка при удалении старых пакетов (удалялся один пакет)
+При удалении старых пакетов пустые папки теперь удаляются
Создание «доверенного» репозитория
— Описание, зачем это нужно.
Распространение репозитория
— описание.
Прокси репозитория
http доступ к репозиторию
Репозиторий на CD/DVD
APTonCD
Вручную через debmirror
Описана последовательность действий для lucid (10.04) в других версиях некоторые шаги могут не понадобиться или наоборот — потребоваться что-то ещё.
1. Скачиваем зеркало с сайта: (в созданый для этого каталог, ессно)
Если надо сырцы убираем ключ —nosource.
Если не надо amd64 убираем соответственно ,amd64
2. В lucid нет debpartial, скачиваем его отсюда http://packages.ubuntu.com/dapper/all/debpartial/download
или через консоль
3. Если создать каталоги дисков прямо сейчас, то пакеты на дисках будут расположены как попало. Чтобы этого избежать, отсортируем пакеты по популярности с помощью статистики сайта http://popcon.ubuntu.com:
После этого в домашнем каталоге появится файл
/ubuntu_packages_popularity.txt, в котором содержится список пакетов, отсортированный по убыванию популярности. На следующем шаге мы подсунем его debpartial. Таким образом, все самые необходимые пакеты окажутся на первых двух-трех DVD.
4. Готовим каталоги дисков:
Соответственно, если нужен amd64 то замените слово i386 на него. Если на предыдущем шаге вы создали список популярности пакетов, то нужно указать debpartial обрабатывать пакеты по порядку в соответствии с ним — добавьте опцию –include-from=имя файла
5. Создаём скрипт ruby для копирования пакетов по дискам.
Любым текстовым редактором. Вот его содержимое, которое необходимо туда скопировать:
Я не нашёл, как делать спойлеры в этой вики, сверните кто-нибудь этот код под спойлер, плиз!
6. Распихиваем пакеты по дискам вышесозданным скриптом:
И так далее. Зависит от того, сколько у вас создалось каталогов-дисков в ls ubuntu-dvd/
7. Создаём идентификаторы дисков чтобы apt(synaptic) не ругался:
В этих каталогах надо создать файл info со следующим содержанием:
Можно написать что-нибудь свое. Номер DVD-X соответственно менять.
8. И наконец последний шаг. Закатываем пакеты в образы:
Чтобы потом не запутаться надо где-то отметить дату копирования зеркала и архитектуру.
Не забывайте изменять цифры дисков в процессе создания образов и копирования.
Для автоматизации выдрать всё используемое из истории команд bash и вписать в один файл-скрипт.
Если что-то из ваших скриптов не запускается не забывайте про chmod +x filename
При нехватке места на диске можно немного сэкономить место, используя симлинки вместо копирования. Однако они могут некорректно прочитаться. Таким вот образом:
Внимательно смотрим на выхлоп раби скрипта. В идеале должно быть что-то подобное:
Т.е. все файлы у нас скопировались нормально.
Если же вывалилось сообщение о недостающих файлах — не страшно. Их можно скачать вручную, с указанного вами зеркала, при помощи браузера или wget’a, не повторяя загрузку всего зеркала. Но не забывайте про время! Если вы скачали их, например через неделю, то зеркало за это время могло измениться и появилась другая версия пакета.
Долгой жизни и процветания. — darkshvein 08.08.2010 12:14
FIXME — тут старая статья — пока не измененная
Если нужно создать локальный репозиторий, то делаем следующее.
Устанавливаем пакет dpkg-dev (содержит нужную нам утилиту dpkg-scanpackages)
Создаём директорию, в которой будут храниться deb-пакеты. Например
Копируем туда все свои пакеты и пакеты из кэша (их там может не быть, но в любом случае, лишним не будет)
Переходим в нашу новую директорию с пакетами и собираем файл Packages.gz (хранит список пакетов и информацию о них, необходим для работы пакетных менеджеров с репозиторием)
Теперь можно скопировать директорию Packages на любой носитель, например флешку (если это нужно)
Далее надо указать системе этот репозиторий. Добавляем путь к репозиторию в файл sources.list . Открываем файл любимым редактором, например, gedit’ом
И в любое место добавляем нужную строку. В общем виде путь выглядит так: deb file:/путь/к/пакетам ./ . Примеры:
Также репозиторий можно добавить с помощью Synaptic: Система — Администрирование — Источники приложений — ПО сторонних производителей — Добавить.
Источник