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