Автор Тема: Локальный репозиторий_ настройка файла /etc/apt/mirror.list  (Прочитано 2191 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн krserv

  • Пользователь
  • *
  • Topic Author
  • Сообщений: 15
подскажите пжс как в mirror.list включить на выполнение скрипт /mnt/repo/debian/var/clean.sh  чтобы после выполнения происходила очистка
В примере показано как это сделать в cron, a если запускать вручную, но вначале должна отработать одна команда полностью, произвести синхронизацию локального репозитория, и только потом уже очистка.

crontab -e

05 01 * * *     apt-mirror >> /var/log/apt-mirror.log
05 03 * * *     /mnt/repo/debian/var/clean.sh >> /var/log/apt-mirror.log
 


Оффлайн vladimir_ar

  • Ветеран
  • *****
  • Сообщений: 1624
но вначале должна отработать одна команда полностью, произвести синхронизацию локального репозитория, и только потом уже очистка.
Ну так логично же - если не было обновления репозитория, то что чистить то (устаревших версий еще нет). А подробнее можно в гугле посмотреть, или я могу позже написать, как сделано у меня, но сейчас я не дома.
Debian Testing, kernel 3.16-2-amd64, OpenBox
AMD A8-3750 / 16Gb RAM / ATI HD6550D (onboard) / Sound ASUS Xonar - DS
_______________________________
Debian Testing, kernel 3.14-2-amd64, OpenBox
HP-655 AMD E1 / 8Gb RAM / ATI HD7310M
 

Оффлайн vladimir_ar

  • Ветеран
  • *****
  • Сообщений: 1624
Так apt-mirror делает очистку сразу после синхронизации.
Debian Testing, kernel 3.16-2-amd64, OpenBox
AMD A8-3750 / 16Gb RAM / ATI HD6550D (onboard) / Sound ASUS Xonar - DS
_______________________________
Debian Testing, kernel 3.14-2-amd64, OpenBox
HP-655 AMD E1 / 8Gb RAM / ATI HD7310M
 

yura_n

  • Гость
Если я правильно понял, то ваша проблема решается очень просто. Пишете скрипт:
#!/bin/bash
apt-mirror >> /var/log/apt-mirror.log
/mnt/repo/debian/var/clean.sh >> /var/log/apt-mirror.log
Делаете исполняемым, добавляете в cron или anacron. Получаете нужную последовательность.
 

yura_n

  • Гость
а почему тогда   в шаблоне по которому я делаю, в сron - между первой и второй командой выставлено разница во времени 2ч?
Ну так и добавьте строку вида:
sleep 7200
между командами в скрипте. Будет вам два часа. А почему так сделано не знаю.
 

Оффлайн vladimir_ar

  • Ветеран
  • *****
  • Сообщений: 1624
mirror.list
Spoiler: ShowHide
############# config ##################
#
set base_path    /media/DATA/LINUX-ISO/REPOSITORY/WHEEZY
#set base_path    /media/HOME-USB-1/vladimir-usb-1/REPOSITORY/WHEEZY
set mirror_path  $base_path/mirror
set skel_path    $base_path/skel
set var_path     $base_path/var
set cleanscript $var_path/clean.sh
set defaultarch i386
set postmirror_script $var_path/postmirror.sh
set run_postmirror 0
set nthreads     20
set _tilde 0
#
############# end config ##############

###### Debian Main Repos
deb http://ftp.dk.debian.org/debian/ wheezy main contrib non-free
deb-amd64 http://ftp.dk.debian.org/debian/ wheezy main contrib non-free

Зачем в кроне две команды, да еще и с разницей во времени? Не, почему нужна разница, понятно, но зачем?
Обращыем внимание на строку
set cleanscript $var_path/clean.sh
Debian Testing, kernel 3.16-2-amd64, OpenBox
AMD A8-3750 / 16Gb RAM / ATI HD6550D (onboard) / Sound ASUS Xonar - DS
_______________________________
Debian Testing, kernel 3.14-2-amd64, OpenBox
HP-655 AMD E1 / 8Gb RAM / ATI HD7310M
 

Оффлайн vladimir_ar

  • Ветеран
  • *****
  • Сообщений: 1624
Я не вижу здесь два разных процесса (может, ошибаюсь, но по терминалу видно, что очистка под управлением apt-mirror):
Spoiler: ShowHide
vladimir-7@GNU-HOME:~$ sudo apt-mirror
[sudo] password for vladimir-7:
Downloading 77 index files using 20 threads...
Begin time: Tue Nov  6 22:13:37 2012
[20]... [19]... [18]... [17]... [16]... [15]... [14]... [13]... [12]... [11]... [10]... [9]... [8]... [7]... [6]... [5]... [4]... [3]... [2]... [1]... [0]...
End time: Tue Nov  6 22:14:07 2012

Proceed indexes: [SSSPPPP]

5.3 GiB will be downloaded into archive.
Downloading 1312 archive files using 20 threads...
Begin time: Tue Nov  6 22:15:16 2012
[20]... [19]... [18]... [17]... [16]... [15]... [14]... [13]... [12]... [11]... [10]... [9]... [8]... [7]... [6]... [5]... [4]... [3]... [2]... [1]... [0]...
End time: Tue Nov  6 22:35:47 2012

10.9 GiB in 2658 files and 10 directories can be freed.
Run /media/DATA/LINUX-ISO/REPOSITORY/WHEEZY/var/clean.sh for this purpose.

vladimir-7@GNU-HOME:~$
Debian Testing, kernel 3.16-2-amd64, OpenBox
AMD A8-3750 / 16Gb RAM / ATI HD6550D (onboard) / Sound ASUS Xonar - DS
_______________________________
Debian Testing, kernel 3.14-2-amd64, OpenBox
HP-655 AMD E1 / 8Gb RAM / ATI HD7310M
 

yura_n

  • Гость
а другого варианта не будет, чтобы очистка началась после окончания синхронизации по какому-нибудь параметру, тригеру, переменной и т.д, которая бы показала, службе, что время запуска второй команды для очистки?
Попробуйте так:
#!/bin/bash
apt-mirror &
PID=$!
a=0
until [ "$a" -eq 1 ]; do
sleep 60
STRING_PID=`ps -p $PID | grep $PID`
if [ -z "$STRING_PID" ]
then
    a=1
fi
done
/mnt/repo/debian/var/clean.sh
Смысл скрипта в том, что сначала определяется PID фонового процесса (apt-mirror), затем цикл ждет завершения этого процесса, каждые 60 секунд проверяя его наличие. После завершения процесса (apt-mirror) запускается очистка.
Насколько это будет работать в реальных условиях - не знаю, не проверял. Для меня это что-то вроде кроссворда.
« Последнее редактирование: 07 Ноябрь 2012, 03:27:41 от yura_n »
 

Оффлайн censor

  • Новичок форума
  • Сообщений: 4
set postmirror_script $var_path/postmirror.sh
set run_postmirror 1
в файл postmirror.sh прописываем все команды которые должны запускаться после обновления архива, в том числе и очистка архива от старых файлов.
т.е. тупо для очистки архива postmirror.sh должен содержать одну строку
/var/spool/apt-mirror/var/clean.sh
 

Теги:
 

[SOLVED] Создать локальный репозита

Автор frp

Ответов: 4
Просмотров: 1526
Последний ответ 15 Июнь 2011, 11:00:09
от frp
Локальный почтовый сервер

Автор phantom85

Ответов: 3
Просмотров: 1159
Последний ответ 20 Февраль 2014, 15:14:51
от AndreyE
Локальный репозиторий

Автор dimsat1

Ответов: 28
Просмотров: 5745
Последний ответ 02 Февраль 2013, 22:10:12
от ferum
локальный репозиторий. не могу обновиться

Автор Анастасия

Ответов: 2
Просмотров: 468
Последний ответ 04 Апрель 2019, 16:34:37
от Анастасия
Как правильно настроить локальный репозиторий с экономией места.

Автор krserv

Ответов: 7
Просмотров: 1914
Последний ответ 15 Декабрь 2012, 20:09:19
от krserv