Entradas

Mostrando las entradas etiquetadas como Windows

C elements of Style

Programar es análogo a escribir. De pequeños aprendemos poner letra tras letra para formar palabras y estas forman frases.  Análogamente quien aprende a programar escribe programas cortos, aprendiendo a manejar archivos o familiarizarse con las estructuras de control.  Cuando pasamos la etapa de programas cortos, de unos cientos del lineas, a programas más complejos, bibliotecas o sistemas completos es necesario aprender a estructurar estos programas.A lo largo del ciclo de vida un programa este va a sufrir modificaciones. Para poder modificar un programa es necesario entender su funcionamiento, hablamos allí de "código legible" . Hay quien compara el código difícil de leer con un plato de tallarines , hablamos de "spaghetti code" . En producción escrita se habla de "estilo" para redactar bien y con propiedad. Si hablamos de programar también se habla de estilo. Y pasa por cosas que escuchamos hasta el hartazgo: comentar el código, nombres de var...

Sketchup: CAD para los que no sabemos dibujar.

Imagen
Cada tanto, necesito esquemas o dibujos técnicos o un simple croquis . Por celeridad, suelo recurrir a lo que conozco. Usualmente termino en un bloc de papel , dibujando con regla y compás . Croquis de un armario (dibujado con regla y escuadra)  Alguna vez he utilizado el XFIG , un viejo programa de dibujo para Linux/UNIX. Difícil del aprender, con opciones intrincadas y poco claras. Con algo de esfuerzo se sacan gráficos claros. Pero claramente su fuerte no es hacer dibujos para asistir trabajos en construcción, instalaciones eléctricas o sanitarias ni carpintería. En varias oportunidades, intente por la mía aprender a utilizar paquetes de CAD, con resultados desastrosos. Encuentro útil que estos esquemas estén una computadora. Captura de pantalla de XFIG (De Wikipedia) Decidí darle una prueba a Sketchup. No es un paquete nuevo, esta en el mercado hace tiempo. Me lo menciono un amigo y colega , cuya esposa lo utilizaba bastante en arquitectura y construcción. Lo i...

getline y getdelim: alternativas a gets o fgets

Quiero leer archivos de texto linea a linea, desconozco el largo de la linea. Esto es útil tenerlo encapsulado en una función para procesar archivos de log u otros archivos con lineas de largo variable, usuales en sistemas que intercambian información mediante archivos de texto. La función gets(3) , deprecada por largo tiempo, no es una buena opción. Si la linea es mas larga que el buffer, esta función permite leer mas allá del final del buffer que recibe como parámetro. Esto se explotado para romper la seguridad de una computadora, en ataques de desbordamiento de buffers .  La función fgets(3) , es un remplazo "seguro" de gets. Esta función lee hasta que el buffer se llene o encuentre el fin de linea . Si la linea es más larga que el buffer, va a ser necesario otra lectura. Y no tenemos certeza de saber si la función terminó por llegar al final de la linea o por que se llenó el buffer. Buscando mejores alternativas encontré las funciones de biblioteca getl...

Ultimas versiones de SAMBA para OpenSuSE o SLES

SuSE cuenta con un muy buen buscador de Software , donde se puede encontrar paquetes compilados por para las versiones soportadas y otras distribuciones (Redhat, CENTOS, Debian). Hoy necesitaba bajar versiones actualizadas de Samba4, para SLES .  Hay un repositorio especifico para Samba , con los ultimos paquetes estables . Con algo de trabajo, por particularidades de SLES, tengo samba 4 instalado en un equipo.

El cambio a horario de verano que no fue ...

Imagen
A principios del pasado mes de octubre era la fecha programada para el cambio hora. Días después de la fecha en que debía hacerse el cambio seguían las repercusiones.  Foto de diario "El Pais" A nivel popular se sintió en muchos celulares , donde los proveedores de sistemas operativos para celulares no sacaron parches correctivos. Así que los usuarios de Android , Symbian y Blackberry debieron utilizar un paliativos: la zona horaria de Buenos Aires . Me consta que es necesario actualizar JAVA, no he escuchado mucho comentario al respecto. IBM sacó actualizaciones para algunas versiones de la JVM. Oracle provee una herramienta . Incluso hubo una disculpa publica de la telefonica estatal . Esta ultima empresa cargo culpas de una situación que no generó. La decisión política de dejar de hacer el cambio a horario de verano no se comunicó bien. No se generó conciencia del impacto de la misma.

¿RAID 5 o RAID 10? He ahi la cuestion ....

En el trabajo estamos por instalar un nuevo storage , y surge la sana discusión de que forma utilizarlo mejor. Una de las discusiones fue que versión de RAID era más adecuada a nuestras necesidades. De los múltiples niveles de RAID disponibles nuestra discusión se centro en las ventajas y contras de RAID 5 y RAID 10 .  Para el que quiere repasar o conocer sobre los distintos niveles de RAID está el articulo de wikipedia que enlace más arriba. O este otro , de Linux Magazine . En equipos de escritorio (o servidores de gama baja) es habitual contar con Motherboards que soportan RAID 0, 1 y ocasionalmente RAID 10. Con las capacidades de los discos actuales vale la pena considerar utilizar discos en RAID 1 o RAID 10, quizás comparar con la opción de discos de estado solido . Si no se cuenta con soporte por hardware de RAID, se puede utilizar software RAID , soportado por muchos sistemas operativos. Este Paper dió inicio a nuestra discusion. Conversando con colegas y quien...

Actualizar Zonas Horaria de uruguay 2015

Muy sobre la fecha llega esta entrada, espero sea de utilidad  El pasado 29 de Junio de 2015 se resolvió en consejo de ministros no realizar el cambio a horario de verano en Uruguay a partir de Octubre de 2015. Muchos sistemas informaticos que soportan el cambio automatico a horario de verano es necesario actualizar la configuracion (o reglas) para que no se haga el cambio. Las actualizaciones deben aplicarse antes del 4 de Octubre, la fecha en que deberia realizarse el cambio de horario. En MacOS X, Linux y la mayoria de los UNIX el cambio consiste en actulizar un archivo donde estan las reglas para el país o zona horaria afectada. La IANA mantiene el archivo de timezones . En Windows cada zona horaria es una entrada en la registry . En dispositivos moviles y sistemas embebidos es necesario consultar al fabricante. Windows Las versiones 2008R2, 2012, 7, 8 y 8.1 tienen parches que actualizan las reglas para Uruguay. Más información: https://support.micro...

Ayuda para usar el vi

Esta no es una apología del vi , el editor de texto standard de Linux y UNIX.  Editar archivos de texto plano es una tarea frecuente, VI es el editor que se instala por defecto en ambientes UNIX (y UNIX like ). Tener un buen manejo de este editor es importante para trabajar en Linux, UNIX y afines ( *BSD ) o realiza tareas avanzadas en MacOS X . Para alguno de mis ocho lectores fanático de Emacs : no le tengo especial aprecio, tampoco lo rechazo. Me hice al habito de trabajar en vi, soy bastante productivo con el. El vim , una implantación de vi, ha reconciliado con vi a muchos de sus más acérrimos detractores. Contando con sintaxis coloreada para muchos lenguajes de programación y ayuda en linea. De todas formas, no se puede negar que la curva de aprendizaje es empinada. Hace muchos años con Enrique Verdes creamos una cartilla de VI , para facilitar el aprendizaje y uso. En la desaparecida revista Linux+ (edición española) se publicó un buen articulo para ...

X11 (X-Windows) redirigido via SSH

Imagen
A veces necesito ejecutar aplicaciones X-Windows en equipos remotos, a los que accedo via SSH . OpenSSH tiene la posibilidad de redirigir la aplicaciones ejecutadas en el equipo remoto, haciendo que se desplieguen en el equipo local.  El equipo al que nos conectamos debe tener su servidor SSH configurado para redirigir Puertos hacia el equipo donde iniciamos la conexión. El archivo a editar es sshd_config (usualmente esta en /etc/ssh ). Agregamos o cambiamos estas lineas:       AllowTcpForwarding yes       X11Forwarding yes       X11UseLocalhost no Es necesario instalar xauth y xhost (según la distribución varían el nombre de los paquetes). Si trabajamos desde un escritorio con Linux (o cualquier UNIX) basta con invocar ssh con el switch -X. Un ejemplo:         ssh -X miservidor.empresa.com . ¿Y en Windows ? Para quienes utilizan windows ...

Obtener DN en active Directory

Imagen
He migrado a zimbra los usuarios de un dominio. Y quiero autenticarlos contra active directory. Para esto necesito conocer el DN ( Distinguished Name ) de cada usuario en AD. Desde un equipo con Linux puedo usar las "LDAP Tools", conectarme al servidor con ldapsearch(1) . Otra alternativa es utilizar algo como JXPlorer, que en forma gráfica permite visualizar y editar los objetos almacenados en el árbol. En otras oportunidades hice todo lo anterior. Tenia curiosidad de saber si existía algo nativo en Windows para interactuar con Active Directory. En varios foros sugieren utilizar scripts en powershell, me pareció excesivo. Encontré una consola gráfica, el editor ADSI , esta muy bien. En realidad quiero algo de linea de comando similar a ldapsearch. La respuesta la encontré en la WIKI de Zimbra : dsquery. El editor ADSI. Si queremos saber el DN de un usuario, nos basta con ejecutar desde linea de comando: dsquery user forestroot -samid usuario El parámet...

Limpiar con BleachBit

Imagen
Muy a mi pesar tengo que dedicar tiempo a limpiar "basura" en diversas versiones de windows. Ya publiqué varias entradas del blog, con lo que he venido haciendo.  Buscando alguna herramienta adicional, encontré BleachBit . El punto fuerte de este paquete es la calidad de la información que borra, no tanto el volumen de disco recuperado. Sobre este punto los autores citan una recomendación de Bruce Schneier, alentando a utilizarlo.

Calcular sumas MD5 en Windows

Imagen
Las sumas MD5 son un medio habitual para comprobar la integridad de un archivo. El creador del archivo calcula la suma y la publica junto con el archivo. Esta practica es usual para evitar la distribución de archivos corruptos o conteniendo malware . Estoy trabajando con varios desarrolladores para resolver un problema con archivos de texto que se corrompen cuando son procesados. Los archivos se generan, intercambian y procesan en sistemas Linux. Los desarrolladores trabajan en Windows, la causa de la corrupción esta en el tratamiento del fin de linea en archivos de texto.Para tranquilidad de todos los involucrados, decidimos compartir los archivos junto con la suma MD5 de los mismos. En linux el comando md5sum es parte de la instalación usual de cualquier sistema. Hay herramientas de terceros para windows que calculan la suma. En general prefiero evitar esas herramientas, salvo que provengan de fuentes confiables y conocidas. Microsoft proporciona una herramienta para est...

Rotar pantalla de Windows

Cada tanto tengo que atender una llamada con este problema, un usuario que tiene la pantalla de su PC con windows "al reves" o "girada". Y nunca recuerdo como arreglarlo, asi que esta entrada del BLOG es para tener un recordatorio a la mano. Posicion Normal: Pulsar ctrl+alt+flecha arriba. Girado 90 º : ctrl+alt+flecha izquierda. Girado 180 º : ctrl+alt+flecha abajo. Girado 270 º : ctrl+alt+flecha derecha. Esto funciona con Windows vista o superiores. En XP se podría arreglar en "Propiedades de Adaptador".

¿PERL?

En el año que terminó recibí dos ofertas firmes de empleo, que involucraban este lenguaje. Es habitual que me llamen reclutadores , un par de veces al año, buscando gente con conocimiento de PERL . Me sorprendió las ofertas firmes de empleo, con salarios competitivos y en un caso un paquete de beneficios interesante. El PERL entró a mi vida hace unos 15 años, con un cambio de empleo . Entre mis tareas como administrador de sistemas debía realizar scripts para automatización de tareas. Muchos de esos scripts se hacían con herramientas de filtros ( SED , AWK ). Varios scripts se sustituyeron o hicieron desde cero en PERL. Con algunas ventajas frente a programar con filtros, por la claridad de a la hora de entender la lógica del programa. El lenguaje resultaba adecuado para el trabajo. Con otro cambio de empleo, empecé a trabajar como desarrollador WEB . Mi trabajo inicial era corregir bugs y agregar funcionalidades a KOHA , un sistema de gestión integrado para una bibliote...

Limpiar el directorio winsxs de Windows 2008R2

Muy a mi pesar, sigo lidiando con directorios llenos de basura en equipos con distintas versiones de Windows.  Hace unos meses compartía como limpiar el directorio software distribution . Hoy le tocó al  directorio winsxs. La receta no es original mía, esta inspirada fundamentalmente en el blog happysadm . ¿Que es el directorio winsxs? Es un intento de respuesta a los problemas de utilizar DLLs en Windows 98 , 2000 y posteriores. Uno de los problemas es justamente el crecimiento del directorio donde se guardan los manifiestos, esos archivos que especifican la versión correcta de una DLL para una aplicación determinada. Para poder hacer la limpieza es necesario ejecutar una shell como administrador . Y alli ejecutamos: DISM.exe /online /Cleanup-Image /spsuperseded Al menos en mi caso me permitío recuperar unos 3 GB de disco.No es mucho pero trabajando con maquinas virtuales con discos de 20 GB promedio, hace una diferencia.

Limpiar directorio SoftwareDistribution

Buscando solución a un problema de respaldos encontré este directorio consumiendo casi 2GB de disco. La mayoría de los archivos aparentaba estar allí hace mucho, decidí borrar ese directorio. Una búsqueda en los foros de soporte de microsoft me llevo a armar el procedimiento que detallo acá: Ir a Inicio, opción ejecutar. Allí poner cmd y dar enter. En la línea de comando ejecutar  net stop wuauserv . Renombrar el directorio c:\windows\softwaredistribution a c:\windows\softwaredistribution.old . Iniciar nuevamente el servicio: net start wuauserv . Cerrar la ventana El procedimiento es simple, permite recuperar algo del espacio desperdiciado. Hay más, tendré que dedicar futuras entradas del blog a esto. 

Restringir login en Windows con Active Directory

Imagen
En un dominio necesité restringir el acceso de un usuario a ciertos equipos. Cuando se crea el usuario active directory este queda habilitado para acceder a todos los equipos del dominio. Si se quiere restringir a un equipo en particular, se listan los equipos a los que puede acceder.  Una pista de que esta restricción está activa puede ser un mensaje como este: La configuracion de su cuenta no permite que use este equipo. Pruebe con otro equipo . Habilité a un usuario a acceder a un equipo adicional, no recordaba que había configurado esta restricción, de ahi este post..

Diagramas de Red con Software libre

Imagen
El blog viene quieto, con poca actividad. Lejos de poder sentarme a escribir, los últimos meses han venido bastante atareados. Hoy leí a Suren , en Google+ , me hizo acordar algo interesante a compartir. En mayor o menor medida, muchos tenemos necesidad de representar gráficamente topologias de redes o arquitecturas física de soluciones a desplegar. El estándar de facto para esta tarea es Visio , un paquete opcional para de Microsoft Office. Con todas las contras que esto tiene, empezando por el costo.  Una de las primeras herramientas que utilicé es Xfig , un programa bastante antiguo. Tiene una buena biblioteca para dibujar diagramas. Es capaz de exportar SVG, que ayuda a integrar esos diagramas en otros documentos. La interface de usuario es difícil de aprender, hay opcionesmodernas y amigables al usuario. Circuito dibujado en XFig   DIA es una opción muy popular, ademas de ser pensado como una alternativa a Visio. Kivio/Calligra Flow es otra alternativa, a...

Activar Journal en filesystems NTFS

A raiz de un problema con los respaldos, encontré que tenia que activar el change journal de un servidor Windows. Esta bitacora puede ser utilizada por sistemas de respaldo, para saber que archivos y directorios cambiaron desde el ultimo respaldo.  Para activarla basta con ejecutar: fsutil usn createjournal m=1000 a=100 C: Y para saber si esta activa:   fsutil usn queryjournal C:  Cuando esta activa, la salida es algo como esto:        Id. de diario de USN    : 0x01cd32a607fbd462        Primer USN              : 0x00000000e9300000        Siguiente USN           : 0x00000000eb522420        USN mínimo válido       : 0x0000000000000000        USN máxim...

Configurar programas y Servicios en el arranque de Windows

Imagen
En otra entrada del blog , comentaba como mejorar la experiencia de usuario en PCs que utilizan Windows . En ese post no trate en detalle como controlar programas y servicios en el arranque del sistema operativo. La herramienta para esta tarea es MSConfig . Es parte integral de Windows desde Windows 98 , pero es posible instalarlo en Windows 2000 y 95 . Su nombre oficial es Configuración del Sistema en Windows Vista,7 y 8. En versiones anteriores se llama Utilitario de Configuración del Sistema . Desde esta utilidad se pueden configurar muchas cosas, voy a enfocar las que me interesan: programas del arranque y servicios.En las respectivas pestañas, es posible elegir que queremos que se ejecute en el inicio del sistema.  Pestaña de programas Servicios en el arranque De aqui podemos eliminar programas como los "controles de actualizaciones"; que pueden ser muy útiles. Pero no dejan de ser molestos e inconvenientes en algunos contextos.