Mardi, Décembre 21, 2021
Améliorer le prompt PowerShell
Script pour améliorer le prompt de PowerShell de Windows en 3 étapes:
- Création du fichier de profile si il n’existe pas
- puis configuration
- et enfin chargement du nouveau profile.
# Création du fichier si il n'est pas présent
if (Test-Path $PROFILE) {Write-Host "file present"} else {New-Item -Type File -path $PROFILE -Force}
#
$content = '
function prompt
{
# affichage de la version de PowerShell
Write-Host ("PS " + $(($PSVersionTable).PSVersion)) -nonewline -foregroundcolor Magenta
# affichage de la date et de l'heure
Write-Host (" " + $(get-date) +" ") -nonewline -foregroundcolor Cyan
# affichage de l'utilisateur
Write-Host ($(whoami)) -nonewline -foregroundcolor Gray
# affichage du caractere arobase @
Write-Host ("@") -nonewline -foregroundcolor Red
# affichage du hostname de la machine
Write-Host ($(hostname) +" ") -nonewline -foregroundcolor Yellow
# affichage du répertoire courant
Write-Host ("$pwd`n>") -nonewline -foregroundcolor Green
# retour à la ligne
return " "
}
'
$content | Out-File $PROFILE
# on recharge le profile pour prendre en compte le nouveau profile
. $PROFILE
Jeudi, Décembre 9, 2021
Configurer les services en démarrage automatique
Récemment un service critique d’un de mes serveurs s’est arrêté. En voulant le redémarrer j’ai constaté que le service était en StartType à Disabled, autrement dit il n’y avait aucune chance pour que le service puisse être démarré même manuellement.
En investiguant 30 sec :) je me suis aperçu que plusieurs autres services essentiels, qui étaient encore démarrés, avaient potentiellement le même problème à savoir le StartType à Disabled.
Plutôt que de cliquer sur chaque service pour le reconfigurer via l’interface Services de Windows, j’ai préféré utiliser la ligne de commande. Et ça marche bien :)
Voici la commande utilisée pour reconfigurer tous les services impactés de mon serveur:
Get-Service | Where-Object {$_.DisplayName -like 'SolarWinds*' -and $_.StartType -like 'Disabled'} | Select Name | Set-Service -StartType Automatic
Ensuite pour confirmer que la manipulation a bien fonctionné
Get-Service | Where-Object {$_.DisplayName -like 'SolarWinds*' -and $_.StartType -like 'Disabled'} | Select Name
Et voilà maintenant les services sont configurés correctement !