The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Локальный репозитарий CentOS через HTTP proxy
До появления прямого соединения с интернетом (провайдером был открыт только http), 
было довольно проблематично поддерживать локальный репозитарий пакетов в актуальном состоянии.
Для выхода из подобной ситуации был написан следующий скрипт,
 который в некотором приближении заменяет rsync.

#!/bin/sh

cd /opt/rpm-update
#mirror_base_url=http://ftp.belnet.be/packages/centos/4.3/os/i386/CentOS/RPMS/
#mirror_update_url=http://ftp.belnet.be/packages/centos/4.3/updates/i386/RPMS/

mirror_base_url=$1
local_rpm_directory=$2

#local_rpm_directory=/var/ftp/pub/centos-4.3/

file_html=./index.html
file_rpms=./files.log

rm -f $file_html
rm -f $file_rpms

echo "---------------------------------------------------------"
echo "obtaining file list from $mirror_base_url ..."
wget -q --no-cache $mirror_base_url
echo "ok."

cut -d"=" $file_html -f4 | cut -d"\"" -f2 | grep rpm | sort > $file_rpms

a=`cat $file_rpms`
for cur_rpm in $a
do
    cur_rpm_file=$local_rpm_directory$cur_rpm
    if [ -e $cur_rpm_file ]
    then
        echo "$cur_rpm exist." > /dev/null
    else
        echo "downloading  $cur_rpm ..."
        wget -q --no-cache $mirror_base_url$cur_rpm
        echo "ok."
        mv ./$cur_rpm $local_rpm_directory
    fi
done

rm -f $file_html
rm -f $file_rpms



и вызов этого скрипта

#!/bin/sh

echo "***** run4 START ***** " >> /var/log/rpm_update4

/opt/rpm-update/lsus.sh
http://ftp.belnet.be/packages/centos/4.3/updates/i386/RPMS/ /var/ftp/pub/centos-4.3/
 >> /var/log/rpm_update4
/opt/rpm-update/lsus.sh
http://ftp.belnet.be/packages/centos/4.3/os/i386/CentOS/RPMS/ /var/ftp/pub/centos-4.3/
 >> /var/log/rpm_update4
/opt/rpm-update/lsus.sh
http://ftp.belnet.be/packages/centos/4.3/extras/i386/RPMS/ /var/ftp/pub/centos-4.3/
 >> /var/log/rpm_update4

echo "generating headers..." >> /var/log/rpm_update4
yum-arch -q /var/ftp/pub/centos-4.3/
echo "ok." >> /var/log/rpm_update4

echo "generating repo..." >> /var/log/rpm_update4
createrepo -q /var/ftp/pub/centos-4.3/
echo "ok." >> /var/log/rpm_update4

echo "***** run4 STOP ***** " >> /var/log/rpm_update4


вызывается по крону, если на сервере появились свежие пакеты, быстренько
заливает их в локальный репозитарий.
 
21.05.2006
Ключи: redhat, sync, mirror, proxy / Лицензия: CC-BY
Раздел:    Корень / Программисту и web-разработчику / Shell / Готовые скрипты

Обсуждение [ RSS ]
  • 1.1, dsl (?), 10:57, 24/05/2006 [ответить]  
  • +/
    export http_proxy="http://username:password@proxy.local:3128"

    yum check-update

    все работает

     
  • 1.2, dsl (?), 10:58, 24/05/2006 [ответить]  
  • +/
    если на ftp куда нибудь
    export ftp_proxy="http://username:password@proxy.local:3128"
     
     
  • 2.3, Андрей (??), 18:53, 24/05/2006 [^] [^^] [^^^] [ответить]  
  • +/
    это для одной машинки можно такое сделать, а что делать если их десять или больше.
    легче держать у себя все дерево пакетов.
     

  • 1.4, Z0termaNN (ok), 16:24, 26/06/2006 [ответить]  
  • +/
    есть yam ( apt.sw.be ),
    который все это делает.
     
  • 1.5, redhat (??), 15:37, 03/09/2008 [ответить]  
  • +/
    yam теперь переименован в mrepo
    кстати, еще есть spacewalk ( aka satellite, aka локальный redhat network)
     
  • 1.6, Сергей_Светайло (?), 03:44, 22/07/2010 [ответить]  
  • +/
    Имеется ЧСАСТНЫЙ СЛУЧАЙ - когда надо восстановить пакеты - утраченные при удалении неудачных попыток - запустить РАДИО МОДЕМ - потеря пакетов обеспечивавших Проводной Интернет в системе.
    Как используя Установочный диск DVD - для Росинка LM8 - с ядром - 2.6.31-14 generic - при запуске системы с DVD - ВСЁ РАБОТАЕТ - как сделать откат -  без переустановки системы на жестком диске?
    Сергей
    P.S.
    Заранее ВСЕМ признателен,
    подскажите НАЧИНАЮЩЕМУ в линуксе.

     
  • 1.7, Сергей_Светайло (?), 05:31, 22/07/2010 [ответить]  
  • +/
    Просмотрев многие сообщения - пришел в восторг - от того - что дорогие моему сер... большой текст свёрнут, показать
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру