Desbloquear ficheros masivamente (y recursivamente) en windows

En alguna ocasion nos hemos podido encontrar que se nos han bloqueado los ficheros en un directorio y en sus directorios recursivos.

Volver a desbloquearlos puede ser una tarea bastante tediosa.

Desbloquear archivos descargados de Internet en Windows 8.1. - Microsoft  Community
Fichero desbloqueado manualmente.

Pero con este sencillo comando powershell, puedes desbloquear ficheros masiva y recursivamente desde un directorio origen.

Get-ChildItem -Path 'rota_origen' -Recurse | Unblock-File

No arranca xampp error: Port 80 in use by “Unable to open process” with PID 4!

El otro dia me sucedio una cosa extraña y era que no me arrancaba el apache en el XAMPP, al parecer habia el PID4 estaba utilizando el puerto 80.

En el al adminsitrador de tareas y observe que el PID4 pertenecia al sistema, con lo que no se trataba de una aplicación en concreto.

Investigando me encuentro con que hay un servicio llamado BranchCache que es el que esta utilizando el puerto 80, con lo que para solucionarlo, solo he tenido que parar y deshabilitar el servicio con los siguientes pasos.

Buscador de  Windows > Servicios > Click botón derecho > Ejecutar como administrador

 Click botón derecho BranchCache > Propiedades > Tipo de inicio > Deshabilitado

Con estos pasos ya solucione el error y pude arrancar el apache del XAMPP.

Cómo mover base de datos temporal ‘TempDB’ a una nueva unidad en SQL Server

En ocasiones el espacio en disco es limitado y se nos llenan las unidades y puede ocasionar una parada de servicio.

Con esta entrada voy a explicar como mover base de datos temporal ‘TempDB‘ a una nueva unidad en SQL Server realizando los siguientes pasos.

Identificamos la ubicación de los datos y archivos de registro de la base de datos temporal TempDB.

SELECT 
name AS [LogicalName]
,physical_name AS [Location]
,state_desc AS [Status]
FROM sys.master_files
WHERE database_id = DB_ID(N'tempdb');

Cambiamos la ubicación de los archivos de registro y datos de TempDB mediante ALTER DATABASE.

ALTER DATABASE tempdb 
MODIFY FILE (NAME = tempdev, FILENAME = 'T:\MSSQL\DATA\tempdb.mdf');

ALTER DATABASE tempdb 
MODIFY FILE (NAME = templog, FILENAME = 'T:\MSSQL\DATA\templog.ldf');

Detenemos y reiniciamos el servicio de SQL Server (desde el cmd)

net stop mssqlserver

net start mssqlserver

Verificamos el cambio de la ubicación de los ficheros.

SELECT 
name AS [LogicalName]
,physical_name AS [Location]
,state_desc AS [Status]
FROM sys.master_files
WHERE database_id = DB_ID(N'tempdb');

Y por ultimo eliminamos los archivos antiguos tempdb.mdf y templog.ldf.

Solucionar error: corrección de oráculo de cifrado credssp en escritorio remoto RDP

Seguimos con los errores extraños y en este caso se trata de los enredos de los windows.

Voy a explicar como resolver el error “corrección de oráculo de cifrado credssp” al intentar concectar por remoto (RDP) a un equipo windows.

Porque por mucho que lo parezca ni el oraculo ni creed tienen que ver con Rocky y Matrix.

Para solucionar pulsamos window + R y ejecutamos el gpedit.msc

A continuación clicamos en Directiva Equipo Local > Configuración del equipo > Plantillas Administrativas > Sistema > Delegación de credenciales. y editamos la directiva de grupo local llamada Corrección del oráculo de cifrado.

Y aplicamos y aceptamos la opción habilitado y mitigado.

Con esto ya podemos acceder por remoto (RDP) sin problemas.

Como borrar ficheros del directorio windows\System32\Config\TxR

El otro dio me sucedio un problema y es que me encontre el disco duro casi sin espacio.

Investigando me di cuenta de que tenia 50gb en ficehros en el directorio windows\System32\Config\TxR.

Esto se debe a las diferentes actulizaciones de windows update, que deja registro de las transacciones y nunca libera el espacio (maldito windows).

Cientos de ficheros, llenando el disco

Para poder borrqarlso bastas con abrir el cmd como administrador y ejecutar estos comandos.

cmd como administrador
attrib -r -s -h %SystemRoot%\System32\Config\TxR\*
del %SystemRoot%\System32\Config\TxR\*

Reiniciamos el sistema y ya habremos liberado todos los GB.

Importar máquina virtual en vmware esxi

Desde la aparición de la versión 6.7 de esxi, se puede utilizar el navegador web para administrar los virtualizadores de vmware.

Pero me he encontrado con un problema bastante común a la hora de importar las máquinas virtuales y es que aparece un error inesperado y no se puede realizar la importación de la máquina virtual.

En este caso es necesario utilizar la herramienta ovftool https://my.vmware.com/web/vmware/details?downloadGroup=OVFTOOL400&productId=353  que permite importan las máquinas virtuales desde línea de comando, con un sencillo comando de este tipo.

ovftool.exe --datastore=discoduroESXI --name=nombreMaquina --network="RED" -- G:\ovas\maqueta.ova vi://root@ip

Ejemplo con valores reales:

 C:\Program Files\VMware\VMware OVF Tool>
ovftool.exe --datastore=datastore --name=miMaquina --network="VLAN100" G:\ovas\maqueta.ova vi://root@192.168.1.10

Con este sencillo método puedes importar tus maquinas desde línea de comandos.

Solucionar error “425 Can’t open data connection” en filezilla server

No soy muy amante de Windows server, pero me he visto obligado a utilizar un numerosas ocasiones por diferentes motivos.

El otro día me encontré con el típico poltergeist de Windows y no me permita listar los ficheros de un usuario ftp.

El ftp funcionaba bajo filezilla server con los puertos abiertos, sorprendentemente dejaba al usuario loguear pero no listar sus ficheros.

Mostrando el siguiente error:

“425 Can’t open data connection”

Para solucionar tuve que darle permisos al programa desde el firewall.

Clicando en Firewall -> Permitir un programa o una características a través de firewall de windows -> Permitir otro programa -> C:\Program Files (x86)\FileZilla Server\filezillaserver.exe

Con este pequeño cambio ya se listan los directorios y ficheros del usuario ftp.

¿Como listar el tamaño de los directorios en windows?

En sistemas linux listar el tamaño de los directorios se realiza de una manera muy sencilla con el comando du, pero en sistemas windows se complica un poco la cosa.

Utilizando un poco los recursos que ofrece windows sobre powershell en este enlace https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-powershell-1.0/ff730945(v=technet.10)?redirectedfrom=MSDN

Podremos obtener el listado de los directorios y su tamaño con este “corto” comando:

Get-ChildItem |
Where-Object { $_.PSIsContainer } |
ForEach-Object {
  $_.Name + ": " + (
    Get-ChildItem $_ -Recurse |
    Measure-Object Length -Sum -ErrorAction SilentlyContinue
  ).Sum
}

Obtiendo el tamaño en bytes de la carpeta c:\xammp\apache por ejemplo

PS C:\xampp\apache> Get-ChildItem |
>> Where-Object { $_.PSIsContainer } |
>> ForEach-Object {
>>   $_.Name + ": " + (
>>     Get-ChildItem $_ -Recurse |
>>     Measure-Object Length -Sum -ErrorAction SilentlyContinue
>>   ).Sum
>> }
bin: 43546245
conf: 296841
error: 223398
icons: 441289
include: 1674556
lib: 3924595
logs: 29455226
manual: 22458703
modules: 5769728
scripts: 407

Y si nos nos gusta en bytes podemos utilizar este comando para obtener el tamaño en megabytes.

Get-ChildItem | Where-Object { $_.PSIsContainer } | ForEach-Object { $_.Name + ": " + "{0:N2}" -f ((Get-ChildItem $_ -Recurse | Measure-Object Length -Sum -ErrorAction SilentlyContinue).Sum / 1MB) + " MB" }

Con estos “cortitos” comando podeis consultar el tamaña de los directorios de forma sencilla, cuando quieres saber por donde se escapa el tamaño del disco.