Comment mettre à niveau vers une nouvelle version d'Ubuntu sans avoir à réagir aux invites?
Je suis le 12.04 maintenant et j'aimerais installer le 12.10. Quand je démarre la mise à jour, il télécharge généralement des trucs, puis pose une question, s'installe un peu, pose une question, etc. Je la laisse du jour au lendemain et trouve parfois que la mise à jour n'a pratiquement pas progressé. Je voudrais juste lancer le processus, m'en aller et le terminer après quelques heures. Je suis d'accord avec la mise à jour automatique des fichiers de configuration dans / etc et ainsi de suite. Alors, comment démarrer une mise à niveau sans assistance?
sudo apt-get install grub-emu
?Juste pour développer les réponses précédentes, voici comment faire à distance la même chose que la réponse acceptée, en utilisant une mise à niveau sans mot de passe sur ssh qui mettra votre box à niveau vers la dernière version. Il est copié sur ma propre entrée de blog .
Toutes ces étapes supposent que votre référentiel de packages fonctionne. Ce qui signifie que si vous exécutez la mise à jour apt-get, vous ne recevez pas beaucoup de 404 en raison d'une version obsolète. Vous devez d'abord corriger cela, alors voyez cette réponse pour cela.
0. Mettre à jour tous les packages existants
1. Configurer l'exécution sans mot de passe
Ajoutez-vous à la liste des utilisateurs qui peuvent exécuter do-release-upgrade en utilisant sudo sans entrer de mot de passe.
et en ajoutant la ligne suivante, en remplaçant mon-nom d'utilisateur par le vôtre bien sûr:
2. Lancer des mises à niveau incrémentielles
Déconnectez-vous et exécutez la commande suivante à partir de votre ordinateur. Il effectuera une mise à niveau sans vous demander d'entrer (en acceptant toutes les réponses par défaut), attendez que l'ordinateur redémarre, puis essayez à nouveau de mettre à niveau. Il s'exécute jusqu'à ce que vous soyez mis à niveau vers la dernière version.
3. Fixez les fichiers de configuration à leur état précédent
Ensuite, vous devrez déplacer les fichiers de configuration sauvegardés vers leur emplacement précédent car le processus de mise à niveau a mis les configurations par défaut à leur place.
Pas satisfait des réponses par défaut?
Ce type a un moyen de pré-préparer les réponses pour chaque invite, mais l'inconvénient est que vous devez savoir combien il y a d'invites…
la source
Pour confirmer ce que Thomas Ward déclare dans sa réponse et contredire la réponse acceptée,
do-release-upgrade -d -f DistUpgradeViewNonInteractive
NE FONCTIONNE PAS.En fait, à la toute première invite, il a cassé ma partition de test 16.04 à 18.04 cassée et j'ai dû la recloner. C'est là que le script se fige:
En raison des inhibiteurs d'entrée, ni le redémarrage ni l'arrêt ne fonctionneront après avoir tué le script. Vous devez faire un arrêt à froid (maintenez le bouton d'alimentation ~ 10 secondes).
Dieu merci, c'était une mise à niveau du clone 16.04 et non sur la vraie partition 16.04.
Pour rendre la vie encore plus intéressante, une nouvelle partition de 898 Mo a été ajoutée à mon SSD NVMe et mes partitions régulières ont été déplacées:
nvme0n1p5
l'habitude d'être où ma partition Ubuntu 16.04 résidait, mais maintenant il est surnvme0n1p7
nvme0n1p8
l'habitude d'être où ma partition de test 18.04 résidait, mais maintenant il est surnvme0n1p8
REMARQUE: J'ai également mis à niveau Windows 10 de la version 1709 vers la version 1803 cet après-midi, il est donc possible qu'il ait créé la nouvelle
nvme0n1p5
partition de 898 Mo auntfs
format.la source
Vous pouvez le faire via le terminal, en utilisant
sudo apt-get -y upgrade
. Cela répondra «oui» à toutes les invites. Cependant, il ne s'exécutera pas automatiquement, vous devez donc l'exécuter. Ça devrait marcher. AFAIK, il n'y a aucun moyen d'utiliser le gestionnaire de mise à jour de l'interface graphique pour effectuer des mises à niveau sans assistance du logiciel ( ce n'est PAS la même chose qu'une mise à niveau de version! )Si vous essayez de mettre à niveau vers une autre version d'Ubuntu (alias une mise à niveau de version , et généralement la prochaine version de la gamme de versions relative à votre version d'Ubuntu), vous devez l'activer manuellement .
sudo do-release-upgrade
peut fonctionner. Il n'y a cependant aucun moyen d'ignorer les invites. C'est pourquoi vous lancez des mises à niveau lorsque vous allez être présent pour de telles invites - il y aura des invites.la source
-f DistUpgradeViewNonInteractive
indicateur provoque le verrouillage du script à la première(Y/I/N/O/D/Z)
invite. Voir ma réponse que je viens de poster.Essayez d'ajouter une
-y
option àapt-get
mais sachez qu'elle répondra ày
toutes les requêtes.la source
apt-get dist-upgrade
devrait fonctionner correctement . Où étiez-vous ici, ça ne marche plus?apt-get dist-upgrade
ne fait pas et n'a jamais, sur aucun système d'exploitation, effectué de mise à niveau de sa propre version. Voirman apt-get
.upgrade
met uniquement à niveau les packages qui peuvent être mis à niveau sans qu'aucun package ne soit nouvellement installé ou désinstallé.dist-upgrade
met à niveau les packages même lorsque cela signifie que les packages sont supprimés ou ajoutés. Ceci est principalement utile pour effectuer des mises à jour ordinaires - par exemple,upgrade
ne mettra pas à jour les noyaux.sources.list
pour pointer vers les archives de la prochaine version puis son exécutionapt-get dist-upgrade
entraîneront, si elle réussit , une mise à niveau de la version. Ceci est supporté dans Debian mais il est recommandé de l'utiliser à laaptitude dist-upgrade
place en raison de sa résolution de dépendance plus avancée. Dans Ubuntu, rien de tout cela n'est pris en charge , bien qu'il puisse réussir. Au lieu de cela, pour effectuer une mise à niveau vers une version ultérieure de la ligne de commande,do-release-upgrade
est utilisé. Cet utilitaire ne prend pas d'-y
indicateur, donc cette réponse ne s'applique pas à la situation de la mise à niveau vers une nouvelle version .