Sin motivo alguno, tras funcionar durante meses de pronto un dia deja de iniciarse el JDownloader a traves de escritorio remoto.
Hay que aclarar tambien que es un Windows 7 con el parche para multiples sesiones concurrentes como un Terminal Server.
Parece que el problema es cuando incia el D3D asi que ahi va el comando para iniciar el JDownloader con el D3D desactivado.
java.exe -Xmx512m -Dsun.java2d.d3d=false -jar "C:\Program Files\JDownloader\JDownloader.jar"
Mostrando entradas con la etiqueta Linea de comandos. Mostrar todas las entradas
Mostrando entradas con la etiqueta Linea de comandos. Mostrar todas las entradas
sábado, 10 de julio de 2010
lunes, 3 de mayo de 2010
Listar / Modificar atributos objetos Active Directory
Para quitar permisos de marcado a todos los usuarios del dominio primero hacemos un listado para ver quien tiene esos permisos:
dsquery * -filter "&(msNPAllowDialin=TRUE)" -attr samaccountname
El reporte esta bien, pero a la hora de intentar modificar el atributo con dsmod resulta que no se pueden modificar mas que unos pocos atributos con esta herramienta.
Opciones:
Powershell, bastante tedioso hasta que salga el 2.0
Herramientas de terceros:
OJO, BACKUP PRIMERO, LOS RESULTADOS PUEDEN SER UN INFIERNO SI NOS EQUIVOCAMOS
adfind y admod.
Primero listado:
adfind -dn -f "&(msNPAllowDialin=TRUE)" > users.txt
No tengo tiempo de ver pq el output no es un DN puro.
Eliminar los dn: con los que comienza cada linea con un simple reemplazar del notepad
Cambiar el atributo que necesitamos en el listado de usuarios:
type users.txt | admod msNPAllowDialin::FALSE -safety (numero de registros)
type users.txt | admod msNPAllowDialin:- -safety (numero de registros)
OJO, SI QUEREMOS ELIMINAR EL VALOR DEL ATRIBUTO SIMPLEMENTE PONED -
SI QUEREMOS QUE SEA VERDADERO O FALSO :TRUE O :FALSE
Si queremos quitar atributos a una lista de usuarios y alguno ya tiene el atributo en blanco dara error. Rellenar con lo que sea primero o usad el parametro para continuar en caso de errores -cont
Ya que estamos pongo un par de consultas interesantes con el dsquery:
Ver todos los usuarios con su logon script asociado:
dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User))" -limit 0 -attr sAMAccountName sn distinguishedName scriptPath
Ver todos los grupos que no tienen miembros:
dsquery * -filter "&(objectCategory=group)(!member=*)" -limit 0 -attr groupType sAMAccountName distinguishedName
Ver cuando se creo un grupo y a que grupos pertenece
dsquery * -filter "&(objectCategory=group)" -limit 0 -attr whenCreated samaccountname memberof
Ver la fecha de expiracion de los usuarios de una OU
dsquery user "OU=XXX,DC=test,DC=com" dsget user -dn -acctexpires
dsquery * -filter "&(msNPAllowDialin=TRUE)" -attr samaccountname
El reporte esta bien, pero a la hora de intentar modificar el atributo con dsmod resulta que no se pueden modificar mas que unos pocos atributos con esta herramienta.
Opciones:
Powershell, bastante tedioso hasta que salga el 2.0
Herramientas de terceros:
OJO, BACKUP PRIMERO, LOS RESULTADOS PUEDEN SER UN INFIERNO SI NOS EQUIVOCAMOS
adfind y admod.
Primero listado:
adfind -dn -f "&(msNPAllowDialin=TRUE)" > users.txt
No tengo tiempo de ver pq el output no es un DN puro.
Eliminar los dn: con los que comienza cada linea con un simple reemplazar del notepad
Cambiar el atributo que necesitamos en el listado de usuarios:
type users.txt | admod msNPAllowDialin::FALSE -safety (numero de registros)
type users.txt | admod msNPAllowDialin:- -safety (numero de registros)
OJO, SI QUEREMOS ELIMINAR EL VALOR DEL ATRIBUTO SIMPLEMENTE PONED -
SI QUEREMOS QUE SEA VERDADERO O FALSO :TRUE O :FALSE
Si queremos quitar atributos a una lista de usuarios y alguno ya tiene el atributo en blanco dara error. Rellenar con lo que sea primero o usad el parametro para continuar en caso de errores -cont
Ya que estamos pongo un par de consultas interesantes con el dsquery:
Ver todos los usuarios con su logon script asociado:
dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User))" -limit 0 -attr sAMAccountName sn distinguishedName scriptPath
Ver todos los grupos que no tienen miembros:
dsquery * -filter "&(objectCategory=group)(!member=*)" -limit 0 -attr groupType sAMAccountName distinguishedName
Ver cuando se creo un grupo y a que grupos pertenece
dsquery * -filter "&(objectCategory=group)" -limit 0 -attr whenCreated samaccountname memberof
Ver la fecha de expiracion de los usuarios de una OU
dsquery user "OU=XXX,DC=test,DC=com" dsget user -dn -acctexpires
Etiquetas:
Active Directory,
Command Line,
Linea de comandos
lunes, 30 de noviembre de 2009
Envio mail a traves de telnet
ehlo o ehlo dominio.com (segun config)
MAIL FROM:alertas@dominio.com
RCPT TO:soporte@dominio.com
DATA
subject: Blabla
Cuerpo mensaje
.
Etiquetas:
Exchange 2000,
Exchange 2003,
Exchange 2007,
Linea de comandos
jueves, 26 de noviembre de 2009
Averiguar fabricante tarjeta red a traves de MAC
Con el comando: arp -a nos dira las macs que han tenido contacto con nuestra maquina.
Si no aparece en el listado, pues le tiras un ping y con eso ya aparecera.
Todos los fabricantes solicitan a la IEEE un OUI "Organizationally Unique Identifier" que son los 3 primeros octetos de la mac para asignarselos a sus tarjetas.
El listado lo teneis en:
Tomad los 6 primeros digitos de una mac y buscadlos en la lista.
00-0d-9d-d2-f6-14 -> 000d9dd2f614 -> 000d9d =
00-0D-9D (hex) Hewlett Packard 000D9D (base 16) Hewlett Packard 20555 State Highway 249 South mx070405 Houston TX 77070 UNITED STATES
martes, 4 de agosto de 2009
Parametros ACU CLI
En vista de que la GUI desasigna discos pero no es capaz de volver a asignarlos a otro server ya que da un error... ahi van los comandos para el CLI que son super intuitivos...
set target controller chassisname=8A24JN71F0VS (para seleccionar la controladora NAS)
show ssp (para ver los id de cada server)
ld 9 modify unmask=10000000C92B184D (para asignar el disco logico 9 al server x)
Suerte
set target controller chassisname=8A24JN71F0VS (para seleccionar la controladora NAS)
show ssp (para ver los id de cada server)
ld 9 modify unmask=10000000C92B184D (para asignar el disco logico 9 al server x)
Suerte
Etiquetas:
Command Line,
Hardware,
Linea de comandos
martes, 21 de julio de 2009
Listado recursivo solo subdirectorios 1 nivel
Excelente para listar los subdirectorios 0day de algun ftp (mapeando antes la unidad con Webdrive o Netdrive)
for /F "tokens=*" %a in ( ' dir /O /B ') do dir %a >>c:\0day.txt
for /F "tokens=*" %a in ( ' dir /O /B ') do dir %a >>c:\0day.txt
martes, 17 de marzo de 2009
Copia de ficheros con resume
Problema:
Equipo a 10,000km con el procesador quemado. A la que consume CPU se calienta y reinicia. Aguanta unos segundos en marcha. Hay que sacar la informacion de ese equipo hacia el nuevo y hay ficheros de varios GB.
copy /z hace resume al copiar ficheros en red :D
Equipo a 10,000km con el procesador quemado. A la que consume CPU se calienta y reinicia. Aguanta unos segundos en marcha. Hay que sacar la informacion de ese equipo hacia el nuevo y hay ficheros de varios GB.
copy /z hace resume al copiar ficheros en red :D
Importar logs spam Exchange 2007 en SQL
Ya que la importacion con formato w3c no le gusta, especificamos los parametros para interpretar los logs del agentlog como un TSV y meterlos en una BBDD.
Si no es un express simplemente poner la Ip.
LogParser "SELECT * INTO webLog FROM AgentLog20090310-1.LOG" -i:tsv -iseparator:','
-nSkipLines 5 -iHeaderFile 1.txt -o:SQL -server:.\sqlexpress -database:FrfServidor_Logs
-driver:"SQL Server" -username:usuario -password:pass -createTable:ON
Contenido de 1.txt = Los nombres de los campos ya que el simbolo # a principio de linea no le gusta:
Timestamp,SessionId,LocalEndpoint,RemoteEndpoint,EnteredOrgFromIP,MessageId,P1FromAddress,P2FromAddresses,Recipient,NumRecipients,Agent,Event,Action,SmtpResponse,Reason,ReasonData,Diagnostics
Etiquetas:
Exchange 2007,
Linea de comandos,
LogParser,
SQL
viernes, 23 de enero de 2009
Panel de control desde un XP limitado por politicas y usuario.
Escenario:
Tipico XP restringido por politicas y con explorer 7, asi que el viejo truquito de boton derecho ejecutar como en el IE y desde ahi lanzar el Panel de control ya no nos sirve.
Solucion:
runas /user:administrador "c:\windows\explorer.exe /separate"
Desconocia la opcion /separate asi que se me ejecutaba el explorer pero no abria la ventana.
Desde ahi podeis hacer lo que querais, incluido poner "Panel de control" en la barra de direcciones.
Tipico XP restringido por politicas y con explorer 7, asi que el viejo truquito de boton derecho ejecutar como en el IE y desde ahi lanzar el Panel de control ya no nos sirve.
Solucion:
runas /user:administrador "c:\windows\explorer.exe /separate"
Desconocia la opcion /separate asi que se me ejecutaba el explorer pero no abria la ventana.
Desde ahi podeis hacer lo que querais, incluido poner "Panel de control" en la barra de direcciones.
jueves, 23 de octubre de 2008
Cambiar prioridad a un proceso
Este script modificara la prioridad al proceso que especifiquemos, (queda en memoria por si se lanzan mas procesos).
En mi caso por ejemplo es para un antivirus que como es logico se lanza con la cuenta System, para tener permisos para cambiar la prioridad a este proceso lo mas comodo es crear una policita a nivel de maquina que cargue este script.
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' If a particular process is running, will change its priority to whatever
' the constant PRIORITY_LEVEL is set at. If you want to change which service
' this script looks for, change the strProcess variable to the name of the
' process it is associated with.
'
' Priority Level Values:
' - Normal 32
' - Low 64
' - Realtime 128
' - High 256
' - Below Normal 16384
' - Above Normal 32768
'
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Set vars
Const PRIORITY_LEVEL = 64
Const PROCESS = "msmpeng.exe"
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& strComputer & "\root\cimv2")
'Search for process, if it's running, update priority
Do
Set colProcesses = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = '" & PROCESS & "'")
For Each objProcess in colProcesses
objProcess.SetPriority(PRIORITY_LEVEL)
Next
Loop While 1
Otra opcion al ejecutar desde linea de comandos:
C:\WINDOWS\system32\cmd.exe /c start “loquesea” /belownormal “c:\loquesea”
Otra opcion es el programa ProcessTamer que al exceder un % de cpu baja la prioridad dinamicamente a los ejecutables para que no saturen el sistema.
En mi caso por ejemplo es para un antivirus que como es logico se lanza con la cuenta System, para tener permisos para cambiar la prioridad a este proceso lo mas comodo es crear una policita a nivel de maquina que cargue este script.
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' If a particular process is running, will change its priority to whatever
' the constant PRIORITY_LEVEL is set at. If you want to change which service
' this script looks for, change the strProcess variable to the name of the
' process it is associated with.
'
' Priority Level Values:
' - Normal 32
' - Low 64
' - Realtime 128
' - High 256
' - Below Normal 16384
' - Above Normal 32768
'
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Set vars
Const PRIORITY_LEVEL = 64
Const PROCESS = "msmpeng.exe"
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& strComputer & "\root\cimv2")
'Search for process, if it's running, update priority
Do
Set colProcesses = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = '" & PROCESS & "'")
For Each objProcess in colProcesses
objProcess.SetPriority(PRIORITY_LEVEL)
Next
Loop While 1
Otra opcion al ejecutar desde linea de comandos:
C:\WINDOWS\system32\cmd.exe /c start “loquesea” /belownormal “c:\loquesea”
Otra opcion es el programa ProcessTamer que al exceder un % de cpu baja la prioridad dinamicamente a los ejecutables para que no saturen el sistema.
lunes, 28 de julio de 2008
Restaurar politicas locales por defecto XP
Escenario:
Equipos recien migrados de dominio no permiten logear en la maquina debido a que el usuario no tiene permisos para inciciar sesion interactiva.
Resulta que algun iluminado habia agregado localmente en los equipos una politica que solo permitia logear a un usuario en concreto en la maquina.
Al intentar editar la politica no permitia modificarla para agregar mas usuarios.
Solucion:
SECEDIT /CONFIGURE /CFG "C:\Windows\Security\Templates\SETUP SECURITY.INF" /DB WAISAW.SDB /VERBOSE
De esta manera sobreescribimos las politicas con las predeterminadas del sistema contenidas en el fichero SETUP SECURITY.INF
La ruta cambia en 2k y existen mas ficheros por si fuera necesario restaurar otras ramas.
Equipos recien migrados de dominio no permiten logear en la maquina debido a que el usuario no tiene permisos para inciciar sesion interactiva.
Resulta que algun iluminado habia agregado localmente en los equipos una politica que solo permitia logear a un usuario en concreto en la maquina.
Al intentar editar la politica no permitia modificarla para agregar mas usuarios.
Solucion:
SECEDIT /CONFIGURE /CFG "C:\Windows\Security\Templates\SETUP SECURITY.INF" /DB WAISAW.SDB /VERBOSE
De esta manera sobreescribimos las politicas con las predeterminadas del sistema contenidas en el fichero SETUP SECURITY.INF
La ruta cambia en 2k y existen mas ficheros por si fuera necesario restaurar otras ramas.
Etiquetas:
Command Line,
Linea de comandos,
Politicas de Grupo
viernes, 20 de junio de 2008
Desinstalaciones por linea de comandos
msiexec /uninstall {44BB3D82-459A-4846-9CD3-1BAE569A6205} /passive /promptrestart
La key se puede sacar de la siguiente ruta:
HKLM\Software\Microsoft\Windows\Currentversion\Uninstall\a buscar cual es
Algunos programas crean la clave HKLM\Software\Microsoft\Windows\Currentversion\Uninstall\[name of> application]\UninstallString
En esa clave indica el comando a ejecutar para desinstalar el software, asi como lo hayan dispuesto los programadores.
La key se puede sacar de la siguiente ruta:
HKLM\Software\Microsoft\Windows\Currentversion\Uninstall\a buscar cual es
Algunos programas crean la clave HKLM\Software\Microsoft\Windows\Currentversion\Uninstall\[name of> application]\UninstallString
En esa clave indica el comando a ejecutar para desinstalar el software, asi como lo hayan dispuesto los programadores.
Suscribirse a:
Entradas (Atom)