La Fibre

Télécom => Logiciels et systèmes d'exploitation => Windows Microsoft Windows => Discussion démarrée par: renaud07 le 25 mai 2019 à 04:19:17

Titre: Script batch : installer les correctifs par date
Posté par: renaud07 le 25 mai 2019 à 04:19:17
Bonsoir,

Je me suis mis en tête de récupérer toutes les MAJ de windows 2000 à POSReady 2009. Le site ici (http://update-old-wins.fr.nf/) pour les curieux (par contre c'est connexion ADSL, ne soyez pas pressé  ;)) Je ferais sans doute mieux de faire un miroir OneDrive ou similaire.

Cependant, je bloque sur un problème assez embêtant : l'ordre d'installation.

Pour l'instant je me contente d'un script qui exécute tout, mais ça se fait selon le classement par nom, du coup, vu que certaines MAJ doivent s'appliquer avant d'autres, ben ça marche pas... J'y ai remédié en créant des dossiers séparés et en vérifiant quelles MAJ windows update me reproposait d'installer après avoir redémarré.

Mais cette solution n'est pas très optimale, j'aimerais bien que tout s'installe d'un coup et redémarrer en une seule fois, comme le fait finalement WU.

Que faut-il rajouter ?

Pour l'instant mon script (très simple) ressemble à ça :
@echo off

echo INSTALLATION DES MISES A JOUR...

FOR %%a IN (*.exe) DO %%a /quiet /norestart

echo INSTALLATION TERMINEE VEUILLEZ REDEMARRER

pause

Merci
Titre: Script batch : installer les correctifs par date
Posté par: vivien le 25 mai 2019 à 06:53:40
Ça c'est une bonne idée !

Bien complèmentaire à https://soft.lafibre.info/ où je vais proposer des veilles versions de Windows (Windows 2000 et avant et peut être Windows XP si j'ai l'accord de Microsoft).
Titre: Script batch : installer les correctifs par date
Posté par: Garulf92 le 25 mai 2019 à 08:54:35
Hello,

Une piste serait de créer un fichier temporaire trié comme tu veux, puis passer le "FOR" sur ce fichier temporaire.
Par exemple, si trier par date de fichier résout ton problème (je doute que ce soit le cas mais c'est un exemple)
DIR /B /OD *.exe > %TMP%\listeUpdate.txt
FOR /F %%a in (%TMP%\listeUpdate.txt) DO %%a /quiet /norestart
Je n'ai pas testé, c'est juste une piste
Titre: Script batch : installer les correctifs par date
Posté par: renaud07 le 25 mai 2019 à 15:31:42
Ça c'est une bonne idée !

Je m'en doutais que tu serais intéressé  :)

Une piste serait de créer un fichier temporaire trié comme tu veux, puis passer le "FOR" sur ce fichier temporaire.
Par exemple, si trier par date de fichier résout ton problème (je doute que ce soit le cas mais c'est un exemple)
DIR /B /OD *.exe > %TMP%\listeUpdate.txt
FOR /F %%a in (%TMP%\listeUpdate.txt) DO %%a /quiet /norestart

Merci, je vais tester ça.
Titre: Script batch : installer les correctifs par date
Posté par: Free_me le 25 mai 2019 à 20:18:58
moi je ne comprend pas l'utilité de faire des trucs dans le genre pour des OS de 20 ans d'age ...
y en a qui utilisent encore windows 2000 ? Pire, y en a qui installent encore ca sur un PC ?
Titre: Script batch : installer les correctifs par date
Posté par: renaud07 le 25 mai 2019 à 21:16:57
Le retro computing ça te parle ? Y'en a qui aiment bien utiliser des vieux OS pour la nostalgie sur du matériel d'époque. Ou encore parce qu'ils ont des vieux programmes à faire tourner. Pire : Certains surfent avec  ;D

Tu trouveras pleins d’exemples sur le forum win3x.org (c'est d'ailleurs mon inscription là bas qui m'a donné l'idée de rassembler toutes ces MAJ)

Par exemple, j'ai chez moi un IBM de 1996 avec pentuim MMX et 64 Mo de RAM sous NT4. Ou encore un avec CPU en cartouche (celeron coppermine) sous windows 2000. Maintenant je regrette aussi de ne pas avoir gardé le tout premier PC familial (http://ru.pc-history.com/icl-ergo-pro-c433.html) équipé d'un 486 (https://fr.wikipedia.org/wiki/Intel_80486) et de windows 3.11 !

Ah... qu'est-ce que j'ai passé comme heures sur le paintbrush et le solitaire...
Titre: Script batch : installer les correctifs par date
Posté par: vivien le 25 mai 2019 à 21:54:46
Les vieux logiciels ou/et le vieux matériel peut être une passion.

En ce moment je m'amuse à mettre une machine capable de faire tourner Ubuntu 1804 comme Windows 3.1 je pense avoir trouvé : C'est un Pentium III tunné au maximum de la capacité RAM supporté par les chips (512 Mo) et une carte graphique supporté par Windows 3.1 et Ubuntu 18.04 (c'est pas facile à trouver ces perles) : Matrox Millennium II au format PCI (je n'ai pas de port AGP sur mon PC)

02:09.0 VGA compatible controller: Matrox Electronics Systems Ltd. MGA 2164W [Millennium II] (prog-if 00 [VGA controller])
   Subsystem: Matrox Electronics Systems Ltd. MGA-2164W Millennium II
   Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
   Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
   Latency: 64
   Interrupt: pin A routed to IRQ 10
   Region 0: Memory at 41000000 (32-bit, prefetchable) [size=16M]
   Region 1: Memory at 40800000 (32-bit, non-prefetchable) [size=16K]
   Region 2: Memory at 40000000 (32-bit, non-prefetchable) [size=8M]
   [virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
   Kernel modules: matroxfb_base


Je viens de réussir à lancer Ubuntu 18.04 (bien sur il faut un peu de buidouille, il n'y a plus de version 32bits, je suis donc passé par Ubuntu 16.04.6 server avant de mettre à jour vers Ubuntu 18.04.2 puis d'installer l'interface graphique.

$ lscpu
Architecture :                          i686
Mode(s) opératoire(s) des processeurs : 32-bit
Boutisme :                              Little Endian
Processeur(s) :                         1
Liste de processeur(s) en ligne :       0
Thread(s) par cœur :                    1
Cœur(s) par socket :                    1
Socket(s) :                             1
Identifiant constructeur :              GenuineIntel
Famille de processeur :                 6
Modèle :                                8
Nom de modèle :                         Pentium III (Coppermine)
Révision :                              10
Vitesse du processeur en MHz :          996.699
BogoMIPS :                              1993.39
Drapaux :                               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pse36 mmx fxsr sse cpuid


J'ai été étonné de voir que Firefox 67 fonctionne, alors que mon processeur n'a pas d'instructions SSE2 (A partir de Firefox 53 le support de SSE2 est nécessaire, cela ne dois concerner que Windows je suppose)
Titre: Script batch : installer les correctifs par date
Posté par: renaud07 le 25 mai 2019 à 23:08:13
Et bien on dirait que ça marche  :D
 
Il faut juste bien faire gaffe que les dates ne soient pas modifiées quand on extrait ou copie les fichiers. Je pense que je vais numéroter les MAJ et refaire installer par nom, comme ça plus de soucis de date qui se modifie pour un oui ou pour un non.

Par contre je suis toujours obligé de passer certaines MAJ après un premier reboot (en plus du windows media) mais bon vu que tout s'installe en même temps, en 3 reboot tout est ok, c'est quand même plus rapide qu'avant  :)

Titre: Script batch : installer les correctifs par date
Posté par: Aerendil le 28 mai 2019 à 11:37:19
Je pense que, de toute façon, tu ne peux pas t'affranchir de certains reboots, vu que certaines corrections viennent corriger des MAJ ;o)
Titre: Script batch : installer les correctifs par date
Posté par: Breizh 29 le 28 mai 2019 à 12:50:54
Si on va par là, je choisirai la Mandrake 8, mes cheveux sont courts depuis.  ;D
Titre: Script batch : installer les correctifs par date
Posté par: renaud07 le 28 mai 2019 à 17:31:54
Je pense que, de toute façon, tu ne peux pas t'affranchir de certains reboots, vu que certaines corrections viennent corriger des MAJ ;o)

C'est vrai qu'on est pas à un reboot près après tout... mais bon c'est quand même plus plaisant s'il y en a moins.
Titre: Script batch : installer les correctifs par date
Posté par: Aerendil le 29 mai 2019 à 11:29:40
C'est vrai qu'on est pas à un reboot près après tout... mais bon c'est quand même plus plaisant s'il y en a moins.

Je ne suis pas contre l'idée ! Bien au contraire !
Mais je ne pense pas que ce soit possible ;)
Titre: Script batch : installer les correctifs par date
Posté par: renaud07 le 29 mai 2019 à 16:07:49
Pourtant il me semble bien que lorsque on met à jour XP normalement, WU télécharge tout et installe à l'arrêt du système puis une fois rebooté tout est à jour, il ne demande pas d'installer des MAJ supplèmentaires... Il me semble aussi que ça fait la même chose si je passe par le SP4 non officiel.

Il doit y avoir une autre manière de faire visiblement. Comme pour le windows media par exemple, qui ne supporte pas les arguments /quiet /norestart, et pourtant il s'installe bien en tache de fond comme le reste. Il doit y avoir d'autres options à passer.

Enfin, c'est pas grave.

EDIT : ah d'accord je viens de vérifier  : pour le WMP il faut passer l'option /Q ou /q et non /quiet en entier... pouvaient pas mettre à jour l'installateur ?  :P
Titre: Script batch : installer les correctifs par date
Posté par: renaud07 le 29 mai 2019 à 19:15:52
J'ai un petit soucis avec la numérotation des MAJ, lorsque je lance le script il ne me les classe pas par ordre chronologique.

Si j'ai des MAJ de 1 à 15 il va les classer comme ça : 1. 10. 11. 12. 13. 14. 15. 2. 3. 4. etc... Si j'en ai une centaine ce sera 1. 10. 100. 101. etc...

En gros il ne prend en compte que le premier chiffre et pas l'autre alors que l'explorateur, lui, suit bien l'ordre chronologique. Pareil sous Linux.

Encore un bug étrange ou il faut un argument spécial ?

Titre: Script batch : installer les correctifs par date
Posté par: renaud07 le 29 mai 2019 à 20:37:55
Apparemment c'est normal... un ls -l me sort le même schéma. Il faut utiliser ls -v si je les veux dans l'ordre

Mais j'ai pas trouvé l'équivalent pour DOS...
Titre: Script batch : installer les correctifs par date
Posté par: vivien le 29 mai 2019 à 20:54:10
Pourtant il me semble bien que lorsque on met à jour XP normalement, WU télécharge tout et installe à l'arrêt du système puis une fois rebooté tout est à jour, il ne demande pas d'installer des MAJ supplèmentaires... Il me semble aussi que ça fait la même chose si je passe par le SP4 non officiel.
Non, quel que soit la version de Windows, il faudra plusieurs reboot pour tout installer : Exemple Windows update installe le Framework .net au reboot suivant tu aura les mises à jour pour le .net qui tu as installé avant.

Là-dessus linux a un vrai avantage en réalisant des go de mises à jour avec un seul reboot ou une mise à jour du système d'exploitation, en intégrant directement les derniers correctifs avec un seul reboot.
Titre: Script batch : installer les correctifs par date
Posté par: renaud07 le 29 mai 2019 à 21:56:14
Non, quel que soit la version de Windows, il faudra plusieurs reboot pour tout installer : Exemple Windows update installe le Framework .net au reboot suivant tu aura les mises à jour pour le .net qui tu as installé avant.

Ah oui, exact.


Là-dessus linux a un vrai avantage en réalisant des go de mises à jour avec un seul reboot ou une mise à jour du système d'exploitation, en intégrant directement les derniers correctifs avec un seul reboot.

C'est sûr que sous linux c'est un plaisir de les faire  :D

Microsoft a fait n'importe quoi avec windows update. Et le pire c'est qu'ils n'ont jamais remis à plat le système depuis 20 ans...
Titre: Script batch : installer les correctifs par date
Posté par: Free_me le 03 juin 2019 à 09:28:36
c'est pas windows update le soucis.
c'est l'organisation des services, le kernel de windows en embarque bcp plus que sur linux où tu peux quasiment tout restarter sans difficultés
Titre: Script batch : installer les correctifs par date
Posté par: renaud07 le 04 juin 2019 à 13:41:26
Ah... j'aurais jamais pensé que le noyau entrait autant en ligne de compte.
Titre: Script batch : installer les correctifs par date
Posté par: Harvester le 04 juin 2019 à 20:08:38
Une installation par ordre croissant de n° de KB suffit normalement, pas la peine de s'embêter à les classer par timestamp de sortie :)
Titre: Script batch : installer les correctifs par date
Posté par: renaud07 le 06 juin 2019 à 01:57:27
C'est vrai que ça fonctionne comme ça. Du coup je me suis sans doute fait ch*** à les numéroter pour rien...
Titre: Script batch : installer les correctifs par date
Posté par: Xcecil le 07 juin 2019 à 15:46:34
J'ai un petit soucis avec la numérotation des MAJ, lorsque je lance le script il ne me les classe pas par ordre chronologique.

Si j'ai des MAJ de 1 à 15 il va les classer comme ça : 1. 10. 11. 12. 13. 14. 15. 2. 3. 4. etc... Si j'en ai une centaine ce sera 1. 10. 100. 101. etc...

Le classement est par ordre numérique, donc 1, 10, 110, 2, c'est normal. Par contre 01, 02 , 03 seront avant le 10. Idem pour 001, 002 qui seront respectivement avant 010, 011, 100 etc...