Назад | Перейти на главную страницу

Будет ли debian обновлять пакеты, созданные мной лично, из официальных источников?

Привет и всех с Новым годом ..

Недавно я собрал пакет nginx deb v1.4.4 из исходного кода debian backport, который, конечно, я добавил в apt sources.list, и все прошло отлично.

Мой вопрос: Будет ли debian обновлять пакеты, созданные мной лично, из официальных источников автоматически? Я имею в виду обновление безопасности.

ОБНОВИТЬ:

Я бежал apt-get update затем apt-get -V upgrade сегодня, чтобы проверить, как будет вести себя debian 7 apt .. и вот что я получил:

root@debian-lab:~/nginx-1.4.4-packages# apt-get -V upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be upgraded:
   nginx-full (1.4.4-1~bpo70+1 => 1.4.4-1~bpo70+1)
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/464 kB of archives.
After this operation, 9,027 kB disk space will be freed.
Do you want to continue [Y/n]?

Как видите, apt пытается обновиться с (1.4.4-1 ~ bpo70 + 1 => 1.4.4-1 ~ bpo70 + 1), который в основном представляет собой две идентичные версии, но в моем установленном пакете deb есть настраиваемые модули nginx, добавленные к nginx-full по умолчанию, и после обновления все мои настраиваемые модули исчезли и были заменены стандартным debian wheezy backport deb. backport deb пакет из источника debian backport и также установил build-deb через backport, но некоторые зависимости устанавливаются автоматически из стабильной версии, что я видел из подробного вывода ..

Не могли бы вы помочь мне предотвратить это на примере?

ОБНОВИТЬ

Я попытался закрепить пакет и не работал, и вот результат, который я получил:

apt-cache policy nginx-full
nginx-full:
Installed: 1.4.4-1~bpo70+1
Candidate: 1.4.4-1~bpo70+1
Version table:
 1.4.4-1~bpo70+1 0
    100 http://ftp.uk.debian.org/debian/ wheezy-backports/main amd64 Packages
*** 1.4.4-1~bpo70+1 0
    100 /var/lib/dpkg/status
 1.2.1-2.2+wheezy2 0
    500 http://ftp.uk.debian.org/debian/ wheezy/main amd64 Packages
    500 http://security.debian.org/ wheezy/updates/main amd64 Packages

А вот политика apt-cache nginx:

/etc/apt/preferences.d# apt-cache policy nginx
nginx:
  Installed: 1.4.4-1~bpo70+1
  Candidate: 1.4.4-1~bpo70+1
  Package pin: 1.4.4-1~bpo70+1
  Version table:
 *** 1.4.4-1~bpo70+1 1001
        100 http://ftp.uk.debian.org/debian/ wheezy-backports/main amd64 Packages
        100 /var/lib/dpkg/status
     1.2.1-2.2+wheezy2 1001
        500 http://ftp.uk.debian.org/debian/ wheezy/main amd64 Packages
        500 http://security.debian.org/ wheezy/updates/main amd64 Packages

Но все же apt пытается обновить и заменить его !!

Содержимое Sources.list:

deb http://ftp.uk.debian.org/debian/ wheezy main
deb-src http://ftp.uk.debian.org/debian/ wheezy main

deb http://security.debian.org/ wheezy/updates main
deb-src http://security.debian.org/ wheezy/updates main

# wheezy-updates, previously known as 'volatile'
deb http://ftp.uk.debian.org/debian/ wheezy-updates main
deb-src http://ftp.uk.debian.org/debian/ wheezy-updates main

# Wheezy Backports repository
deb http://ftp.uk.debian.org/debian wheezy-backports main
deb-src http://ftp.uk.debian.org/debian wheezy-backports main

Я попытался закрепить один раз имя пакета nginx, а другой раз - nginx-full ..

Но оба не держат пакет !!!

Я бы порекомендовал поднять версию пакета. APT знает, что оба пакета не совпадают, и пытается установить пакет из надежных источников. dch -i это все, что вам нужно, просто добавьте краткое описание и пересоберите пакет.

Вы также можете закрепить пакет по-другому:

Package: nginx-full
Pin: origin ""
Pin-Priority: 999

Это даст больший приоритет пакету, установленному локально.


Если строка версии репозитория заменяет текущую установленную версию и у вас нет закрепления и какая-то версия будет выпущена, да, apt установит пакет из репозиториев (надеюсь, с уже примененным патчем), если у вас есть правильные источники.

Если вы закрепите пакет, apt-get не попытается его обновить.

Чтобы закрепить пакет, создайте файл в /etc/apt/preferences.d, например /etc/apt/preferences.d/nginx

Поместите это в файл:

Package: nginx
Pin: version 1.4.4-1~bpo70+1
Pin-Priority: 1001