Question Quel est le risque de mise à niveau par rapport à SSH?


Quand je cours

sudo do-release-upgrade

sur ssh, je reçois le message suivant.

Cette session semble s'exécuter sous ssh. Il n'est pas recommandé
pour effectuer une mise à niveau sur ssh actuellement, car en cas de défaillance, il
est plus difficile à récupérer.

Si vous continuez, un démon ssh supplémentaire sera démarré au port
«9004».
Voulez-vous continuer?

Quel est le risque réel de mise à niveau sur ssh? Comment le démon ssh supplémentaire permet-il d'atténuer ce problème?


66
2017-10-22 15:16


origine




Réponses:


Ce que je vous recommande, c'est de lancer une session d'écran sur le serveur et d'exécuter la mise à niveau à l'écran. Ainsi, si votre session SSH est interrompue (pour une raison quelconque), le processus de mise à niveau ne s'arrêtera pas.

Écran est un programme qui permet la présence de terminaux persistants sur une machine. Vous pouvez donc démarrer une session écran et tant que la machine est sur cette session d'écran (et son historique, les programmes en cours d'exécution, etc.) continuera à fonctionner même si aucun utilisateur n'est sur la machine. Il a été conçu dans le Premiers jours fournir un terminal de texte à fenêtres multiples avant X Server. Vous pouvez l'installer en utilisant APT:

sudo apt-get install screen

Vous pouvez donc vous connecter à votre serveur, démarrer l'écran, lancer le processus de mise à niveau et ne pas avoir à vous soucier de la mise à niveau bing car vous avez perdu la connexion Internet ou votre ordinateur est tombé en panne.


47
2017-10-22 16:48



L'écran est un excellent outil pour cette situation. - Ryan Thompson
Il paraît que do-release-upgrade (depuis précis) s'exécute automatiquement screen. - manu
l'écran n'est plus disponible, et cela ne semble pas fonctionner avec TMUX pour une raison quelconque. Il renvoie cette erreur: === Commande terminée avec le statut de sortie 1 (mer. Oct. 19 21:14:13 2016) === - Gman Smith


La solution @ Marco-Ceppi est déjà intégrée dans do-release-upgrade.

Quand tu cours do-release-upgrade il démarre une session d'écran automatiquement. Si votre session ssh est déconnectée, vous pouvez reprendre l'installation. Il suffit d'ouvrir une nouvelle session ssh et d'exécuter do-release-upgrade encore. Il se reconnectera à votre précédente installation.

Un second risque, signalé par @ sepp2k, est que votre serveur sshd peut avoir besoin d'être mis à niveau et qu'il pourrait ne pas redémarrer correctement. Par conséquent, le programme de mise à niveau exécute un deuxième serveur, au port spécifié. Vous devez vérifier la configuration de votre réseau pour vous assurer que vous avez accès à ce port avant de reprendre.

Bonne chance.

De plus, la séance-écran do-release-upgrade démarre par lui-même est exécuté sous le compte root, donc si votre propre session d'écran se bloque, vous pourrez récupérer en exécutant sudo screen -x, si (pour une raison quelconque) la commande do-release-upgrade ne le récupère pas tout seul, ce qui semble être courant.


73
2018-02-02 08:34



Savez-vous à partir de quelle version d'Ubuntu cela a été le cas? J'essaie de mettre à jour à partir de 9.10 et après le démarrage de la mise à niveau (sudo do-release-upgrade) et en répondant "Oui", je peux me connecter à ssh sur le port 9004 mais il n'y a pas screen sessions listées en essayant sudo screen -list . (P.S. Je ne suis pas encore au stade de téléchargement.) - mgd
Après la mise à niveau de 9.10 à 10.04 LTS (où do-release-upgrade n'a pas commencé une session d'écran) Je passe maintenant de 10.04 LTS à 12.04 LTS et maintenant do-release-upgrade commence maintenant une session d'écran automatiquement. - mgd
Ceci est la réponse, je ne peux pas vous remercier assez - Mohamed Ragab
Donc en gros, do-release-upgrade prendre soin de tout avant la main, alors: 1) vous pouvez vous reconnecter à partir d'un ssh cassé en relançant do-release-upgrade après la ré-enregistrement et 2) vous pouvez vous reconnecter à partir d'une mise à niveau sshd échouée via le port spécifié au début par do-release-upgrade. Est-ce que c'est ça ? - Juh_
écran sudo -x m'a sauvé la vie! Merci. - Felipe


Si une nouvelle version du démon ssh est installée dans le cadre de la mise à niveau, le démon sera redémarré. Si la mise à jour interrompt le démon pour une raison quelconque, elle ne redémarrerait plus et vous ne seriez plus en mesure de vous connecter à la machine.

En démarrant un sshd séparé, qui n'est pas géré par le système d'initialisation et ne sera donc pas redémarré pendant la mise à niveau, il est garanti que l'ancienne version de sshd continuera à fonctionner même si la nouvelle version ne démarre pas. Ainsi, vous pouvez toujours vous connecter au système et voir ce qui a provoqué le démon.


16
2017-10-22 15:46



Je pense qu'il est plus pertinent que, lorsque le démon est redémarré, votre mise à niveau soit probablement interrompue, car le processus s'exécute sur la session ssh. - Malabarba


Je n'ai jamais eu (encore) de problème à le faire, même si je n'ai amélioré qu'une demi-douzaine de boîtes de cette façon. Si un problème survient, le démon SSH supplémentaire peut être votre seul espoir d’éviter une visite (ou d’utiliser les options de réinstallation à distance dont vous disposez).


3
2017-10-22 15:31