Archivo del blog

Mostrando entradas con la etiqueta sysadmin. Mostrar todas las entradas
Mostrando entradas con la etiqueta sysadmin. Mostrar todas las entradas

01 abril 2025

馃殌 Automatiza la instalaci贸n de Windows como un PRO con Unattend Generator

Si alguna vez has tenido que instalar Windows repetidamente, sabr谩s lo tedioso que puede ser pasar una y otra vez por las mismas pantallas de configuraci贸n: elegir el idioma, aceptar los t茅rminos, seleccionar el disco, crear usuarios… ¡una p茅rdida de tiempo total!


Pero ¿y si te dijera que puedes automatizar todo el proceso con un simple archivo autounattend.xml? S铆, es posible, y gracias a Unattend Generator, hacerlo es m谩s f谩cil que nunca.

馃敟 ¿Por qu茅 esta herramienta es la leche?

馃挕 Sencillez absoluta: No necesitas aprender la sintaxis del autounattend.xml, ni romperte la cabeza con manuales de Microsoft. Solo seleccionas las opciones en la web y listo.


Ahorro de tiempo: Con un buen archivo de respuesta, puedes instalar Windows sin tocar una tecla. Perfecto para administradores de sistemas, t茅cnicos de IT o cualquier geek que quiera hacer las cosas bien.

馃捇 Compatible con diferentes versiones de Windows: Ya sea Windows 10, Windows 11 o versiones de servidor, este generador te permite configurar el XML de forma precisa.

馃敡 Opciones avanzadas: Desde definir la partici贸n del disco hasta preconfigurar usuarios, claves de producto y ajustes de red, tienes un control total sobre la instalaci贸n.


馃幆 ¿C贸mo se usa?

  1. Entra en Unattend Generator.

  2. Configura los par谩metros a tu gusto.

  3. Descarga el archivo autounattend.xml.

  4. Col贸calo en la ra铆z del USB de instalaci贸n de Windows.

  5. Arranca el equipo desde el USB y… ¡magia! Windows se instalar谩 sin intervenci贸n.

Si te dedicas a la administraci贸n de sistemas o simplemente quieres ahorrarte trabajo en cada instalaci贸n de Windows, esta herramienta es imprescindible.


Pru茅bala y dime qu茅 te parece. ¡A m铆 me ha salvado la vida m谩s de una vez! 馃殌

06 noviembre 2019

C贸mo borrar perfiles locales remotamente en Windows 7

Tras la incorporaci贸n al nuevo cliente el pasado enero, uno de los tickets m谩s recurrentes que ten铆amos era por culpa de los equipos de las salas de reuniones.

Todos los usuarios de la empresa pasaban tarde o temprano por alguna sala e incluso abr铆an el Outlook en el equipo de la sala, con la debida sincronizaci贸n del OST y claro tras 4 o 5 usuarios identificados en el equipo este se quedaba casi sin espacio en el disco, y as铆 con todos los equipos de salas.

Tras reunirnos para mirar de acotar y eliminar este problema de nuestra cola, optamos la inclusi贸n de estos equipos en una OU especial donde el SCCM se encargase de borrar los discos de estas m谩quinas cada semana aproximadamente. Dicho parche funcion贸 bien durante la menos 1 mes.

Otra vez ten铆amos encima de la mesa esta problem谩tica, lentitud en los equipos de reuni贸n, imposibilidad  de abrir el correo, modificar documentos...

Y entonces optamos por la ejecuci贸n remota de un script para borrar los perfiles de los equipos de reuni贸n. Al principio era una tarea ardua ya que en algunos equipos hab铆an m谩s de 20 usuarios con una media de 30 GB por cabeza, pero tras unas semanas ejecutando el parche semanalmente, y con la ayuda de las pol铆ticas del SCCM hemos podido acotar este tipo de tickets.

Fuente: Google y nuestro compa帽ero de WorkPlace.


C脫DIGO


#Prompt for a computer to connect to
$computer = Read-Host "Ingrese el Equipo donde quiere eliminar el perfil"
#Test network connection before making connection
If ($computer -ne $Env:Computername) {
    If (!(Test-Connection -comp $computer -count 1 -quiet)) {
        Write-Warning "$computer El PC no esta accesible , Verifique que este encendido."
        Break
        }
    }
Try {    
    #Verify that the OS Version is 6.0 and above, otherwise the script will fail
    If ((Get-WmiObject -ComputerName $computer Win32_OperatingSystem -ea stop).Version -lt 6.0) {
        Write-Warning "Sistema Operativo No soportado.`nClient: Vista and above`nServer: Windows 2008 and above."
        Break
        }
    }
Catch {
    Write-Warning "$($error[0])"
    Break
    }    
Do {    
#Gather all of the user profiles on computer
Try {
    [array]$users = Get-WmiObject -ComputerName $computer  
Get-CimInstance -ClassName Win32_UserProfile -filter "LocalPath Like 'C:\\Users\\%'" -ea stop
    }
Catch {
    Write-Warning "$($error[0]) "
    Break
    }    
#Cache the number of users
$num_users = $users.count
Write-Host -ForegroundColor Green "Perfiles Disponibles para eliminar $($computer):"
    #Begin iterating through all of the accounts to display
    For ($i=0;$i -lt $num_users; $i++) {
        Write-Host -ForegroundColor Green "$($i): $(($users[$i].localpath).replace('C:\Users\',''))"
        }
    Write-Host -ForegroundColor Green "q: Cancelar"
    #Prompt for user to select a profile to remove from computer
    Do {    
        $account = Read-Host "Seleccione el Numero del perfil a eliminar o 'q' para cancelar"
        #Find out if user selected to quit, otherwise answer is an integer
        If ($account -NotLike "q*") {
            $account = $account -as [int]
            }
        }        
    #Ensure that the selection is a number and within the valid range
    Until (($account -lt $num_users -AND $account -match "\d") -OR $account -Like "q*")
    If ($account -Like "q*") {
        Break
        }
    Write-Host -ForegroundColor red "Eliminando Perfil: $(($users[$account].localpath).replace('C:\Users\',''))"
    #Remove the local profile
    ($users[$account]).Delete()
    Write-Host -ForegroundColor Green "Perfil:  $(($users[$account].localpath).replace('C:\Users\',''))
Ha sido eliminado correctamente"
    #Configure yes choice
    $yes = New-Object System.Management.Automation.Host.ChoiceDescription "&Yes","Desea eliminar Otro Perfil."
    #Configure no choice
    $no = New-Object System.Management.Automation.Host.ChoiceDescription "&No","Salir/No eliminar Mas perfiles"
    #Determine Values for Choice
    $choice = [System.Management.Automation.Host.ChoiceDescription[]] @($yes,$no)
    #Determine Default Selection
    [int]$default = 0
    #Present choice option to user
    $userchoice = $host.ui.PromptforChoice("","Desea eliminar Otro Perfil?",$choice,$default)
    }
#If user selects No, then quit the script    
Until ($userchoice -eq 1)

11 junio 2013

Llibre oficial per 茅sser un admin de Debian.



Bona tarda,

A la plana web "Rinc贸n Inform谩tico" he trobat un llibre que m'ha semblat for莽a interessant. Si vols comen莽ar-hi al m贸n dels admins a Linux aquest llibre busca ensenyar-hi l'essencial per a qualsevol persona que vulgui convertir-se en un administrador de GNU / Linux Debian sigui efica莽 i independent.

Lo millor de tot i lo que m'ha semblat molt b茅 es que hi est脿 tradu茂t al idioma de Cervantes. Un treball que han fet un grup d'脿nimes que van ajudar a la traducci贸 del llibre a la nostra llengua.



Gracies a tots ells per haver-se prestat a la tasca de traducci贸 del handbook per a tota la comunitat,
per aix貌 teniu la meva m茅s sincera felicitaci贸!!

Mat铆as Bellone
Ismael de Andr茅s Presa
Ricardo Mendoza
Iv谩n Alemany
Marc Mezo
Norman Garcia
Tzihue Cisneros Perez
Dario Java
Jos茅 David Calder贸n Serrano
Roger Orellana

En realitat 茅s un llibre molt valu贸s i molt 煤til per a tots els sysadmin que vulguin aprendre quines s贸n les millors pr脿ctiques D'administraci贸, sense mes que dir deixo el enlla莽 de desc脿rrega per al llibre oficial de l'administrador de Debian en espanyol.



馃殌 Automatiza la instalaci贸n de Windows como un PRO con Unattend Generator

Si alguna vez has tenido que instalar Windows repetidamente, sabr谩s lo tedioso que puede ser pasar una y otra vez por las mismas pantallas d...