Articles Tagués ‘WMIC’

 

S’applique à : Windows Server 2008 /2008 R2, 2012 /2012 R2 et 2016 | Windows Seven, Windows 8/8.1 et Windows 10

La « Tip of the Week » est un HowTo pour afficher la date du dernier redémarrage de Windows (Server & Client).

Ayant travaillé sur plusieurs projets d’Audit Infrastructure (Windows Server, P2T, Active Directory…) ces dernières années, j’ai pu constater que la plupart des serveurs Windows Server présentant des problèmes de stabilités et/ou dysfonctionnement n’ont aucun « redémarrage périodique » de planifié. Si nécessaire, ces serveurs sont donc redémarrés manuellement.

Redémarrer une machine Windows consiste à faire deux clics de souris ou saisir 2 mots depuis le Menu « Démarrer », mais quand il s’agit d’un serveur de production, l’opération devient plus compliquée : négocier, planifier le redémarrage du serveur, astreinte possible, intervention post-redémarrage possible (si effets de bord post-reboot) …

C’est la raison pour laquelle, le redémarrage d’un serveur Windows Server est souvent une tâche oubliée par les IT Admin /Ing de prod allergiques à ce type d’opération et ne voulant pas prendre le risque, résultat : lors de plusieurs audits réalisés chez différents clients (Banques, Assurances, Grand groupes de l’industrie …), j’ai souvent constaté que :

Plusieurs serveurs (quelques dizaines voire des centaines) n’ont pas été redémarrés depuis plusieurs mois voire plusieurs années (côté Banques & Assurances)

Les serveurs « en attente de redémarrage » présentent toujours des problèmes de stabilité au niveau de certains Services /Fonctionnalités Windows /Couches Applicatives spécifiques

Les serveurs qui n’ont pas été redémarrés hébergent pour la plupart des services /applications critiques (Standards & Métiers)

De plus, un Serveur Windows Server en attente de redémarrage (suite à l’installation de mises à jour Windows par exemple) peut bloquer plusieurs actions telle que l’ajout de nouvelles fonctionnalités /Services /Rôles /Apps, bloque l’utilisation de certaines fonctions /options et ce au niveau de plusieurs Snap-ins, il peut également bloquer (dans certains cas) l’accès distant à différents services …

Vous aurez compris, connaître la date du dernier redémarrage d’un serveur est une information précieuse qui peut vous aider à cerner un ou plusieurs problèmes présents celui-ci.

Ci-après, les différentes techniques vous permettant d’afficher la date du dernier reboot de Windows Server et Client.

Vous pouvez connaître la date du dernier redémarrage d’un Windows (Server & Client) via l’utilisation de différents outils /méthodes, à savoir :

Outil WMIC.exe

Windows PowerShell

Outil SystemInfo.exe

Script PowerShell

 

Via l’outil « WMIC.exe »

Utilisez la commande suivante : WMIC OS Get LastBootUpTime

1

Via Windows PowerShell

Utilisez la commande suivante : Get-CimInstance -ClassName Win32_OperatingSystem | Select CSName, LastBootUpTime
2

Via l’outil « SystemInfo.exe »

Utilisez la commande suivante : SystemInfo | Find /i « Heure de démarrage du Système »

Note : pour les OS en EN utilisez plutôt la commande suivante : SystemInfo | Find /i « System Boot Time »

3

Via Script (PS)

Un script PowerShell a été uploadé par « Gary L Jackson« , sur  la TechNet Gallery et disponible en téléchargement ici.

 

J’espère que cette astuce pourra vous être utile J

A bientôt.

ScriptGuyPic

Publicités

 

Une question intéressante m’a été posée today suite à un problème lié à un compte de service utilisé par une Application métier.

Problématique

Mon client déploie une application métier basée sur l’utilisation d’un compte utilisateur local pour tourner en tant que Service Windows.

L’assistant d’installation de cette application crée un compte d’utilisateur local qui généralement expire après 120 jours.

Dépassé ce délais, l’application arrête de fonctionner et une intervention sur le serveur hébergeant l’application est nécessaire, le but étant de réinitialiser le password du compte utilisateur local utilisé par l’application.

Besoin

Le client me demande si un script magique qui permet d’automatiser la création de comptes utilisateurs locaux SANS EXPIRATION DE MOT DE PASSE peut être développé ?

La réponse est bien évidemment OUI :).

NET.exe est votre ami.

Solution

Le script suivant est basé sur l’outil NET.exe dans le contexte USER ainsi que l’outil WMIC pour forcer la désactivation de l’expiration de mot de passe.

copiez /collez le code suivant sur notepad ou un éditeur de texte équivalent, ensuite enregistrez le fichier sous format .BAT ou .CMD

Note : saisissez * au niveau de la variable « PWDCompte » pour éviter de saisir le mot de passe du compte en clair :).

@Echo off
Cls
Set /P NomCompte= Entrez le nom du compte de service a creer :
Set /P PWDCompte= Specifiez le mot de passe du compte de service :
Set /P DesCompte= Entrez une description du compte de service :
Net User %NomCompte% %PWDCompte% /Comment: »%DesCompte% » /passwordchg:no /add
WMIC USERACCOUNT WHERE « Name=’%NomCompte%' » SET PasswordExpires=FALSE
Pause

Après exécution du script, le message suivant est affiché :

AppLCLAccountApp0

Une fois créé, lancez l’outil LUSRMGR.msc et constatez l’apparition du compte utilisateur local créé via le script dans le dossier « Utilisateurs » :

AppLCLAccountApp1