Pourquoi ai-je un fichier .rpmnew après une mise à jour?

17

J'utilise yum pour mettre à jour mon Fedora. Après une énorme mise à jour, j'en ai eu beaucoup .rpmnewet des .rpmsavefichiers. Je pourrais comprendre si j'avais modifié ces fichiers. Mais je suis sûr que je n'ai pas édité ces fichiers.

Que dois-je faire avec ces fichiers? Que se passera-t-il lors de la prochaine mise à jour?

Voici un exemple de ces fichiers:

/usr/share/texmf-var/fonts/map/dvipdfm/updmap/dvipdfm_dl14.map.rpmnew
/usr/share/texmf-var/fonts/map/dvipdfm/updmap/dvipdfm_dl14.map.rpmsave

Merci

Luc M
la source

Réponses:

22

Il y a deux cas:

  • Si un fichier a été installé dans le cadre d'un rpm, il s'agit d'un fichier de configuration (c'est-à-dire marqué avec la %configbalise), vous avez édité le fichier par la suite et vous mettez à jour le rpm puis le nouveau fichier de configuration (du plus récent rpm) remplacera votre ancien fichier de configuration (c'est-à-dire devenir le fichier actif). Ce dernier sera renommé avec le .rpmsavesuffixe.
  • Si un fichier a été installé dans le cadre d'un rpm, il s'agit d'un fichier noreplace-config (c.-à-d. Marqué avec la %config(noreplace)balise), vous avez édité le fichier par la suite et vous mettez à jour le rpm alors votre ancien fichier de configuration restera en place (c.-à-d. rester actif) et le nouveau fichier de configuration (à partir du rpm plus récent) sera copié sur le disque avec le .rpmnewsuffixe.

Voir par exemple ce tableau pour tous les détails.

Dans les deux cas, vous ou un programme avez modifié le ou les fichiers de configuration et c'est pourquoi vous voyez les fichiers .rpmsave/ .rpmnewaprès la mise à niveau car rpm mettra à niveau les fichiers de configuration en mode silencieux et sans fichiers de sauvegarde si le fichier local n'est pas modifié.

Après une mise à niveau du système, c'est une bonne idée d'analyser votre système de fichiers pour ces fichiers et de vous assurer que les fichiers de configuration corrects sont actifs et peut-être de fusionner le nouveau contenu des fichiers .rpmnew dans les fichiers de production. Vous pouvez supprimer les fichiers .rpmsaveet .rpmnewlorsque vous avez terminé.

knweiss
la source
10

Parfois, le gestionnaire de packages est un peu confus quant à ce qui constitue ou non un fichier modifié. Habituellement, c'est parce qu'un programme ou un autre a apporté des modifications (en particulier ces fichiers de carte TeX).

Il y a deux approches que j'utilise lorsque je traite ces types de fichiers, selon mon humeur, la criticité du système et mes connaissances sur le fichier en question:

  1. Après que le système fonctionne correctement pendant un certain temps, supprimez simplement ceux que je ne reconnais pas comme ayant changé (peut-être dangereux, mais je suppose que si c'était quelque chose de vraiment important, je l'aurais déjà remarqué. Notez que je ne le fais que ceci sur les systèmes "de faible valeur" que je peux me permettre de passer un peu de temps à réparer si j'ai bourré);
  2. Effectuez une différence unifiée ( diff -u <current file> <new/save version>) entre les différentes versions du fichier, examinez la sortie et intégrez les modifications nécessaires entre les versions pour tout mettre à jour, puis supprimez les fichiers de sauvegarde / nouveaux lorsque je suis satisfait des choses. Beaucoup plus de travail (bien que de petits scripts shell pour trouver et différencier les fichiers aident) mais à peu près garanti de ne rien casser à moins que je ne mouille la fusion.
womble
la source