Est-il sûr d'exécuter la mise à jour apt-get tous les soirs?

16

Est-il sûr d'exécuter apt-get update -ycron sur un serveur de production?

Miko
la source
2
Pensez-vous apt-get upgrade -yplutôt que update? Y a-t-il un -ydrapeau pour update?
KajMagnus

Réponses:

17

Il peut être sûr ou, plus précisément, le niveau de risque peut être dans votre gamme de confort. Le niveau de risque acceptable dépendra de plusieurs facteurs.

Avez-vous un bon système de sauvegarde qui vous permettra de revenir rapidement en cas de rupture?

Transférez-vous les déconnexions du serveur vers un système distant afin que si la boîte s'effondre, vous saurez toujours ce qui s'est passé?

Êtes-vous prêt à accepter la possibilité que quelque chose se casse et vous devrez peut-être effectuer une restauration / restauration rapide sur le système en cas de défaillance?

Avez-vous compilé manuellement quelque chose par vous-même ou est-ce que tout ce qui est installé sur votre système provient des dépôts officiels? Si vous avez installé quelque chose localement, il y a une chance qu'un changement en amont puisse casser votre logiciel local maintenu / installé.

Quel est le rôle de ce système? Est-ce quelque chose qui manquerait à peine s'il mourait (par exemple, un serveur DNS secondaire) ou est-ce l'élément central de votre infrastructure (par exemple, serveur LDAP ou serveur de fichiers principal).

Voulez-vous configurer cela parce que personne responsable du serveur n'a le temps de maintenir les correctifs de sécurité? Le risque potentiel d'être compromis par une vulnérabilité non corrigée peut être plus élevé que le potentiel d'une mauvaise mise à jour.

Si vous pensez vraiment que vous voulez faire cela, je vous suggère d'utiliser l'un des outils qui existent déjà à cet effet cron-apt. Ils ont une logique pour être plus en sécurité que juste un aveugle apt-get -y update.

Zoredache
la source
1
Vous pensez apt-get upgrade, non apt-get update, non?
KajMagnus
Oui il l'est. Avec apt-get update, c'est assez difficile de casser quoi que ce soit.
Olli
1
Ce n'est PAS sûr.
marcinn
8

Oui, tant que vous parlez de mise à jour et non de mise à niveau . Apt le fera même pour vous si vous mettez la ligne:

APT::Periodic::Update-Package-Lists "1";

dans un fichier sous /etc/apt/apt.conf.d/

ptman
la source
5

Il est généralement sûr, mais je ne le recommanderais pas pour une simple raison:

  • Vous perdez un état connu.

Dans l'environnement de production, vous devez savoir exactement ce qui s'y trouve ou ce qui est censé s'y trouver et être capable de reproduire cet état facilement.

Tout changement doit être effectué via le processus de gestion du changement, où l'entreprise est pleinement consciente de ce dans quoi elle s'engage, afin qu'elle puisse plus tard analyser ce qui n'a pas fonctionné, etc.

Les mises à jour nocturnes rendent ce type d'analyse impossible ou plus difficile à faire.

Marseille07
la source
3

Je pourrais le faire sur stable, ou sur Ubuntu, mais pas sur une branche instable, ni même sur la branche testing.

Cependant, lorsque je mets mon chapeau d'administrateur système, je pense que je devrais appliquer manuellement toutes les mises à jour, afin de pouvoir maintenir la cohérence entre les serveurs - et aussi que, si un jour un service tombe en panne, je sais quand j'ai mis à jour ce un service. C'est quelque chose que je ne vérifierais pas si les mises à jour se déroulaient automatiquement.

Jon Lasser
la source
2

Nous utilisons une mise à jour stable et planifiée apt-get pour mardi soir sur la plupart de nos systèmes Debian (coïncide avec nos mises à jour «patch mardi» de Microsoft). Ça marche bien. Nous avons également tous les événements de mise à niveau enregistrés dans Nagios, afin que nous puissions voir un historique des dernières mises à niveau effectuées sur n'importe quel serveur.

Matt Beckman
la source
1

Lorsque vous spécifiez qu'il s'agit d'un serveur de «production», cela signifie-t-il qu'il existe également des serveurs de développement et de test? Si tel est le cas, les correctifs doivent être testés sur ces systèmes avant d'être installés sur la boîte de production.

Je ne le ferais pas. De mauvais correctifs se produisent et je ne voudrais pas qu'un système tombe en panne au milieu de la nuit ou alors que j'étais autrement indisponible. Ils doivent être insérés dans une fenêtre de maintenance lorsqu'un administrateur est disponible pour surveiller la mise à jour.

Craig
la source
1

Je me souviens l'avoir fait dans un emploi précédent; Je me suis retrouvé avec des problèmes sur le serveur de production car une mise à jour a réécrit automatiquement un fichier de configuration.

Par conséquent, je vous conseillerais de superviser les mises à jour.

user39530
la source
La mise à niveau d'apt-get peut casser quelque chose en raison des services de redémarrage automatique. De toute évidence, ce n'est PAS sûr. Votre réponse devrait plutôt être acceptée.
marcinn
1

Si l'alternative applique des mises à jour de manière irrégulière, vous ne suivez pas activement les mises à jour de sécurité et vous exécutez un Lenny stable, alors la mise à jour automatique augmente probablement la sécurité de votre machine, car vous mettrez à jour les failles de sécurité connues plus rapidement.

Charles Stewart
la source
0

Ubuntu Server possède un package qui lui permettra de mettre à jour automatiquement les mises à jour de sécurité. Il vous permet également de mettre sur liste noire certaines applications. Il parle également d'apticron qui vous enverra un e-mail lorsqu'il y aura des mises à jour disponibles pour votre serveur.

Vous pouvez en savoir plus à ce sujet dans les pages suivantes en fonction de la version d'Ubuntu Server que vous utilisez.

EDIT: En supposant que vous utilisez Ubuntu. Bien que je parie que les mêmes packages et solutions sont disponibles sur Debian.

3dinfluence
la source
0

Jetez un œil à cron-apt. Il télécharge uniquement les listes et les fichiers de package par défaut, mais vous pouvez le régler pour envoyer des e-mails, ou même mettre à niveau le système.

ko-dos
la source
0

Cela dépend de votre infrastructure. Si j'ai une seule machine, je passe généralement en revue les mises à jour et vois ce dont j'ai besoin ou ce que je peux éviter. Si j'utilise un cluster, je déploie parfois les modifications sur une machine, je vois comment elles se déroulent, puis je les déploie sur les autres machines si tout semble correct.

Mises à niveau de la base de données que je surveille toujours de près.

Si vous avez un système de fichiers qui prend en charge le snap shotting, peut être très utile pour prendre un instantané du système, appliquer des mises à jour, puis avoir la possibilité d'annuler les modifications en cas de problème horrible.

Essayez de savoir pourquoi un package est mis à niveau? est-ce une correction de bogue? correctif de sécurité? est-ce une commande locale ou un service réseau distant?. Le logiciel a-t-il été testé avec les nouvelles mises à jour?

Les mises à jour du noyau doivent être abordées avec plus de prudence. Essayez de savoir pourquoi le noyau est mis à niveau? Avez-vous vraiment besoin de ces changements? cela affectera-t-il votre demande? Dois-je appliquer cela pour la sécurité?

9 fois sur 10 les mises à jour logicielles se dérouleront sans problème, mais ce sont ces rares fois où cela vous laisse machine comme une pile de déchets, avoir un plan de restauration ou de récupération du système en place.

Le concierge Unix
la source