[РЕШЕНО] Всегда скачивается реп .. pacman -Sy

vasek
Это я к тому, что версия пакета, имхо, основной параметр проверки при обновлении.
обновление самой базы по идее вообще не должна зависеть от версий пакетов
mkdir ~/testbd
sudo pacman -Sy -b ~/testbd
сразу обновляем еще раз чтобы убедится что изменений нету
sudo pacman -Sy -b ~/testbd
меняем время базы core
sudo touch -d '17 May 1999' ~/testbd/sync/core.db
пробуем обновить
sudo pacman -Sy -b ~/testbd
так и есть перезаписывает базу core так как время локального файла(базы) core будет меньше чем на сервере

посмотреть время последней модификации нашей локальной тестовой базы
stat -c "%Y" ~/testbd/sync/core.db
на сервере
date -d $(curl -sI "$(pacman-conf --repo core Server)/core.db" | awk -F': ' '/last-modified/ {print $2}') '+%s'

если у ТС две последние команды(написанных выше) сразу после синхронизации баз будут отличатся или последняя команда вообще ничего не выведет значит проблема в том что сервер неверное отдает время модификации файла из за чего будет постоянно происходить полная перезакачка баз даже при простой синхронизации
red
перезаписывает базу core так как время локального файла(базы) core будет меньше чем на сервере
От времени не зависит, перезапишет даже если на сервере база старее чем локальная.
Поведение аналогично rcync скорее всего сумма сравнивается
red
vasek
Это я к тому, что версия пакета, имхо, основной параметр проверки при обновлении.

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

PS - а вот при изменении версии пакета в desc не проверял действие команды pacman -Sy
Ошибки не исчезают с опытом - они просто умнеют
vs220
От времени не зависит, перезапишет даже если на сервере база старее чем локальная.
Поведение аналогично rcync скорее всего сумма сравнивается
я полностью привел рабочий пример на котором полностью доказал свои доводы
vasek
при изменении версии пакета в desc
Чисто логически, скорее всего просто сравнивается контрольная сумма при несоответствии базы заново синхронизуются.
red
рабочий пример
Я работал и с серверами с устаревшей базой и базы по команде синхронизируются несмотря на то что на сервере устарела на несколько недель по сравнению с локальной. Код не смотрел поэтому спорить не буду. Но проверьте контрольные суммы исходной базы и с измененным временем, если они совпадают значит я не прав
vs220
Код не смотрел поэтому спорить не буду.
там делов на 3 минуты, всё расписал
да и если смотреть тот же --debug там тоже упоминается время для каждой репы, например:
debug: using time condition: 1587667477
и это как раз время модификации
red
делов на 3 минуты
Да не прав
Но синхронизирует и при отличии в меньшую (старее) сторону
vs220
Но синхронизирует и при отличии в меньшую (старее) сторону
?
red
?
--

vs220
базы по команде синхронизируются несмотря на то что на сервере устарела на несколько недель по сравнению с локальной
 
Зарегистрироваться или войдите чтобы оставить сообщение.