En aquest tema, explorarem com utilitzar PowerShell per a tasques d'administració del sistema. PowerShell és una eina potent que permet als administradors automatitzar i gestionar sistemes de manera eficient. Aprendrem a gestionar serveis, processos, usuaris, i altres components del sistema.
Objectius del Tema
- Comprendre com gestionar serveis i processos amb PowerShell.
- Aprendre a administrar usuaris i grups.
- Automatitzar tasques comunes d'administració del sistema.
- Gestió de Serveis
Llistar Serveis
Per llistar tots els serveis del sistema, utilitzem el cmdlet Get-Service.
Aturar i Iniciar Serveis
Podem aturar i iniciar serveis amb els cmdlets Stop-Service i Start-Service.
Canviar l'Estat d'Inici d'un Servei
Per canviar l'estat d'inici d'un servei, utilitzem el cmdlet Set-Service.
# Configurar un servei perquè s'iniciï automàticament
Set-Service -Name "wuauserv" -StartupType Automatic
- Gestió de Processos
Llistar Processos
Per llistar tots els processos en execució, utilitzem el cmdlet Get-Process.
Aturar Processos
Podem aturar processos amb el cmdlet Stop-Process.
# Aturar un procés per nom
Stop-Process -Name "notepad"
# Aturar un procés per ID
Stop-Process -Id 1234
- Administració d'Usuaris i Grups
Crear Usuaris
Per crear un nou usuari, utilitzem el cmdlet New-LocalUser.
# Crear un nou usuari local
New-LocalUser -Name "JohnDoe" -Password (ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force) -FullName "John Doe" -Description "Usuari de prova"Eliminar Usuaris
Per eliminar un usuari, utilitzem el cmdlet Remove-LocalUser.
Crear Grups
Per crear un nou grup, utilitzem el cmdlet New-LocalGroup.
Afegir Usuaris a Grups
Per afegir un usuari a un grup, utilitzem el cmdlet Add-LocalGroupMember.
- Automatització de Tasques Comunes
Crear un Script per a la Gestió de Serveis
Podem crear un script per automatitzar la gestió de serveis. A continuació es mostra un exemple de script que atura i inicia un servei.
# Script per aturar i iniciar un servei
# Nom del servei
$serviceName = "wuauserv"
# Aturar el servei
Stop-Service -Name $serviceName
# Esperar 10 segons
Start-Sleep -Seconds 10
# Iniciar el servei
Start-Service -Name $serviceName
Write-Output "El servei $serviceName ha estat reiniciat."Programar Tasques amb el Programador de Tasques
Podem utilitzar PowerShell per crear tasques programades amb el cmdlet New-ScheduledTask.
# Crear una acció per executar un script de PowerShell
$action = New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "-File C:\Scripts\RestartService.ps1"
# Crear un desencadenador per executar la tasca diàriament a les 3:00 AM
$trigger = New-ScheduledTaskTrigger -Daily -At 3:00AM
# Crear la tasca programada
Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "RestartServiceTask" -Description "Reinicia el servei diàriament a les 3:00 AM"Resum
En aquest tema, hem après a utilitzar PowerShell per a diverses tasques d'administració del sistema, incloent la gestió de serveis i processos, l'administració d'usuaris i grups, i l'automatització de tasques comunes. Aquestes habilitats són essencials per a qualsevol administrador de sistemes que vulgui millorar l'eficiència i la productivitat mitjançant l'automatització.
Curs de PowerShell
Mòdul 1: Introducció a PowerShell
- Què és PowerShell?
- Instal·lació i Configuració de PowerShell
- Consola i ISE de PowerShell
- Comandes i Sintaxi Bàsiques
- Sistema d'Ajuda en PowerShell
Mòdul 2: Scripting Bàsic
- Variables i Tipus de Dades
- Operadors en PowerShell
- Sentències Condicionals
- Bucles en PowerShell
- Funcions i Scripts
Mòdul 3: Treballant amb Objectes
- Comprensió dels Objectes
- Propietats i Mètodes dels Objectes
- Pipelines i Manipulació d'Objectes
- Filtratge i Selecció d'Objectes
- Ordenació i Agrupació d'Objectes
Mòdul 4: Tècniques Avançades de Scripting
- Gestió d'Errors
- Depuració de Scripts
- Expressions Regulars
- Treballant amb Fitxers i Directoris
- Ús de Mòduls i Snap-ins
Mòdul 5: Automatització i Programació de Tasques
- Introducció a l'Automatització
- Creació de Tasques Programades
- Ús de PowerShell per a l'Administració del Sistema
- Automatització de Tasques d'Active Directory
- Automatització de Tasques de Xarxa
Mòdul 6: Remotització amb PowerShell
- Introducció a la Remotització
- Configuració de la Remotització
- Ús d'Invoke-Command
- Gestió de Sessions
- Consideracions de Seguretat
Mòdul 7: Funcions Avançades de PowerShell
- Perfils de PowerShell
- Personalització de l'Entorn de PowerShell
- Creació i Ús de Classes
- Treballant amb XML i JSON
- Ús de PowerShell amb REST APIs
Mòdul 8: PowerShell i DevOps
- Introducció a DevOps
- Ús de PowerShell amb Pipelines CI/CD
- Infraestructura com a Codi (IaC)
- Gestió de Recursos al Núvol amb PowerShell
- PowerShell i Docker
