Discussione:Il repository Backports: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Nessun oggetto della modifica
Riga 46: Riga 46:


Volevo chiedere conferma, perché tutta la questione è abbastanza ingarbugliata. :)
Volevo chiedere conferma, perché tutta la questione è abbastanza ingarbugliata. :)
[[Utente:HAL 9000|HAL 9000]]


: Credo ci sia una differenza tra installazione dai backports di un programma non precedentemente installato dalla release di default (ad es. un kernel recente per Wheezy - 3.14 non presente negli archivi di Wheezy) e l'aggiornamento presente nei backports di un programma già installato dagli archivi della release di default.<br/>Nel primo caso il pinning non è necessario mentre nel secondo sì (ovviamente solo se si vogliono ancora aggiornamenti automatici dai backports, se disponibili in futuro per quel programma).<br/>Ma chiedo anche io conferme. [[Utente:S3v|S3v]] 12:12, 15 giu 2014 (CEST)
: Credo ci sia una differenza tra installazione dai backports di un programma non precedentemente installato dalla release di default (ad es. un kernel recente per Wheezy - 3.14 non presente negli archivi di Wheezy) e l'aggiornamento presente nei backports di un programma già installato dagli archivi della release di default.<br/>Nel primo caso il pinning non è necessario mentre nel secondo sì (ovviamente solo se si vogliono ancora aggiornamenti automatici dai backports, se disponibili in futuro per quel programma).<br/>Ma chiedo anche io conferme. [[Utente:S3v|S3v]] 12:12, 15 giu 2014 (CEST)
:: Grazie della risposta. :) <br/> Parlando della situazione di default, non dovrebbe esserci una Default-Release in apt.conf (o in un file in apt.conf.d). E la stable avrebbe quindi priorità 500 (ma non dovrebbe cambiare, visto che anche a 990 sarebbe inferiore a 1000). I backports ufficiali invece, senza pinning, avrebbero una priorità 100 per via del loro file Release.<br/> Mentre concordo che un pacchetto non verrebbe aggiornato né installato automaticamente dai backports, ma ci vorrebbe un comando manuale (apt-get/aptitude -t wheezy-backports install ...), una volta installata la versione presente nei backports si dovrebbe aggiornare da lì in automatico, senza bisogno di cambiare il pinning.<br/> La situazione dovrebbe essere questa, quando arriverà una nuova versione tramite i backports:<br/>* Pin-Priority di stable: 500, è il valore più alto, ma è inferiore a 1000 e quindi non comporterebbe il downgrade; di fatto quindi la loro esistenza è ignorata, visto che è già stata installata una versione più recente;<br/>* Pin-Priority del pacchetto installato localmente: 100;<br/> * Pin-Priority dei backports, che contengono la nuova versione aggiornata: 100.<br/> E quindi effettuerebbe l'aggiornamento in automatico, perché la Pin-Priority è almeno pari a quella locale e la nuova versione dei backports è più recente. Non saprei come replicare il comportamento, e mi baso solo sulla lettura di Debian reference, ma posso affermare che per stable (priorità 990) con pacchetti da Sid (priorità 500), i pacchetti da Sid si sono sempre aggiornati da soli.[[Utente:HAL 9000|HAL 9000]] 13:48, 16 giu 2014 (CEST)

Versione delle 11:48, 16 giu 2014

Salve, alla fine della guida (peraltro chiarissima) viene indicato di creare un file dove inserire le preferenze per l'aggiornamento dei pacchetti backports in /etc/apt/preferences.d/; il file deve avere un nome particolare, immagino... potreste indicarlo, o chiarire questo aspetto? Grazie mille e a presto :-) --Contemoon 18:47, 14 mar 2013 (CET) Edit: noto anche che [[1]] viene invece indicato /etc/apt/preferences come il file dove inserire le preferenze; si tratta di una variazione dovuta al camio di versione? Scusate le domande che possono apparire sciocche. Grazie ancora --Contemoon 18:55, 14 mar 2013 (CET)

Si possono usare indifferentemente il file preferences o la cartella preferences.d e i file all'interno della cartella posso avere un nome qualsiasi (anche se credo che in caso di conflitti di impostazioni tra file diversi dentro preferences.d vengano prese in considerazione quelle contenute nel file che in ordine alfabetico viene prima). BubuXP 15:00, 15 mar 2013 (CET)

Aggiungo solo una precisazione: i file d'impostazione personali dovrebbero andare in preferences.d/ per evitare che, in caso di aggiornamenti del file preferences, APT tenti di sovrascriverlo. In ogni modo verrà comunque chiesto cosa fare (sovrascivere, leggere i cambiamenti, etc.). I file in preferences.d/ sono nient'altro che prosecuzioni del file preferences: è come se si avesse un unico file in cui le impostazioni seguenti sovrascrivono uguali impostazioni precedenti. Lo stesso comportamento si presenta per tutti i file che possono avere impostazioni personali (sudoers.d/, grub.d/, init.d/ e così via). S3v 18:25, 15 mar 2013 (CET)

Pin-Priority non più necessario per gli aggiornamenti automatici

Al meglio della mia comprensione (è partito tutto da qui: http://forum.debianizzati.org/viewtopic.php?f=42&t=49387&sid=29931ffb1daf29c3a936666b7a3c1c54) e leggendo anche su debian.org (https://www.debian.org/doc/manuals/debian-reference/ch02.en.html#_updates_and_backports) riguardo i backports, la situazione è cambiata rispetto al passato.

Seguendo la guida presente sul wiki tutto funziona comunque, e immagino sia per questo che nessuno ha notato il cambiamento, ma ora il file Release dei backports ufficiali riporta:

...
NotAutomatic: yes
ButAutomaticUpgrades: yes
...

In pratica il valore di default di Pin-Priority per i backports è 100, anziché 1 come per gli experimental, 990 per l'eventuale default release (se specificata) e 500 per tutti gli altri repository.

Considerando una situazione con solo i repository della stable (normali + security), eventualmente gli updates (ex-volatile) e i backports, senza impostare nulla in /etc/apt/preferences (e directory preferences.d) e senza impostare la default release in /etc/apt/apt.conf (o in un file nella directory apt.conf.d), la situazione sarebbe la seguente:

Pin-Priority stable: 500
Pin-Priority updates: 500
Pin-Priority backports: 100

Quindi i pacchetti dai backports non verrebbero installati automaticamente, perché verrebbero sempre scelti quelli stable o gli updates, ma una volta installati manualmente verrebbero aggiornati in automatico, in quanto sarebbero quelli più recenti rispetto a quelli presenti in stable (+ security).

Il man di apt_preferences (P è la Pin-Priority) è un po' ambiguo:

       100 <= P < 500
           causes a version to be installed unless there is a version available belonging to some other distribution or the installed version is more recent

ma la "versione disponibile" dell'altra distribuzione in realtà è scelta solo se i backports non sono stati installati manualmente e non c'è quindi da effettuare un downgrade (per cui servirebbe un Pin-Priority maggiore o uguale a 1000):

       P >= 1000
           causes a version to be installed even if this constitutes a downgrade of the package

       990 <= P < 1000
           causes a version to be installed even if it does not come from the target release, unless the installed version is more recent

       500 <= P < 990
           causes a version to be installed unless there is a version available belonging to the target release or the installed version is more recent

Volevo chiedere conferma, perché tutta la questione è abbastanza ingarbugliata. :) HAL 9000

Credo ci sia una differenza tra installazione dai backports di un programma non precedentemente installato dalla release di default (ad es. un kernel recente per Wheezy - 3.14 non presente negli archivi di Wheezy) e l'aggiornamento presente nei backports di un programma già installato dagli archivi della release di default.
Nel primo caso il pinning non è necessario mentre nel secondo sì (ovviamente solo se si vogliono ancora aggiornamenti automatici dai backports, se disponibili in futuro per quel programma).
Ma chiedo anche io conferme. S3v 12:12, 15 giu 2014 (CEST)
Grazie della risposta. :)
Parlando della situazione di default, non dovrebbe esserci una Default-Release in apt.conf (o in un file in apt.conf.d). E la stable avrebbe quindi priorità 500 (ma non dovrebbe cambiare, visto che anche a 990 sarebbe inferiore a 1000). I backports ufficiali invece, senza pinning, avrebbero una priorità 100 per via del loro file Release.
Mentre concordo che un pacchetto non verrebbe aggiornato né installato automaticamente dai backports, ma ci vorrebbe un comando manuale (apt-get/aptitude -t wheezy-backports install ...), una volta installata la versione presente nei backports si dovrebbe aggiornare da lì in automatico, senza bisogno di cambiare il pinning.
La situazione dovrebbe essere questa, quando arriverà una nuova versione tramite i backports:
* Pin-Priority di stable: 500, è il valore più alto, ma è inferiore a 1000 e quindi non comporterebbe il downgrade; di fatto quindi la loro esistenza è ignorata, visto che è già stata installata una versione più recente;
* Pin-Priority del pacchetto installato localmente: 100;
* Pin-Priority dei backports, che contengono la nuova versione aggiornata: 100.
E quindi effettuerebbe l'aggiornamento in automatico, perché la Pin-Priority è almeno pari a quella locale e la nuova versione dei backports è più recente. Non saprei come replicare il comportamento, e mi baso solo sulla lettura di Debian reference, ma posso affermare che per stable (priorità 990) con pacchetti da Sid (priorità 500), i pacchetti da Sid si sono sempre aggiornati da soli.HAL 9000 13:48, 16 giu 2014 (CEST)