viernes, 29 de julio de 2011

Feliz dia del Administrador de sistemas

Felicidades a todos /as administradores de sistemas.

Como cada último viernes del mes de Julio, es el dia del Administrador de sistemas.

http://www.sysadminday.com

miércoles, 27 de julio de 2011

RSS para Mediawiki

Hace poco necesitaba poder crear un RSS partiendo en los articulos creados en Mediawiki, asi que me puse manos a la obra. El RSS lee sólo los artículos, crea los enlaces correspondientes al wiki y muestra como contenido las categorias.

Os dejo el código:


Código:___________________________________

lunes, 18 de julio de 2011

Organización de los directorio en Linux

Hace ya tiempo que vi este articulo y como nunca va mal recordarlo, os lo dejo aqui:

Fuente: http://www.linux-es.org/node/112


En este articulo intentaremos explicar lo mas brevemente posible, como los directorios de un sistema Linux/Unix estan organizados y para que se usan. Uno de los problemas que tienen los nuevos usuarios de un sistema Linux/Unix es el no saber que significan y para que se utilizan los diferentes directorios del sistema. No preocuparos, en un principio puede pareceros dificil y sin logica, pero una vez que empeceis a usarlos os acostumbrais pronto.




Existe un estandard, el "Estándar de jerarquía de ficheros" (FHS - Filesystem Hierarchy Standard) que intenta definir unas bases, para que tanto los programas del sistema, como los usuarios y administradores, sepan donde encontrar lo que buscan. Este estandard se encuentra en su version 2.3 y el documento del mismo se puede encontrar en su totalidad en esta direccion: http://www.pathname.com/fhs/pub/fhs-2.3.html. Se recomienda su lectura a los deseen profundizar en el tema.



Este estandard esta mantenido por la 'Free Standards Group', una organización sin fines de lucro constituida por compañías de hardware y software como AMD, Computer Associates, Debian, Dell, Fujitsu, Google, HP, IBM, Intel, MySQL, NEC, Novell, Red Flag, Red Hat, Sun Microsystems, Veritas y otros muchos. La mayoría de las distribuciones de Linux, inclusive las que forman parte de Free Software Standards, no aplican de forma estricta y al 100% el estándar, aunque las diferencias son minimas.



Existen dos tipos de distinciones cuando hablamos del tipo de contenido de un directorio: Estaticos/dinamicos y compartibles/no compartibles.



Estaticos: Contiene binarios, bibliotecas, documentacion y otros ficheros que no cambian sin intervencion del administrador. Pueden estar en dispositivos de solo lectura (read-only) y no necesitan que se hagan copias de seguridad tan a menudo como con ficheros dinamicos

Dinamicos: Contiene ficheros que no son estaticos. Deben de encontrase en dispositivos de lectura-escritura (read-write). Necesitan que se hagan copias de seguridad a menudo

Compartibles: Contiene ficheros que se pueden encontrar en un ordenador y utilizarse en otro

No compartibles: Contiene ficheros que no son compartibles

A continuacion teneis algunos ejemplos para aclarar ideas:



Estaticos: /bin, /sbin, /opt, /boot, /usr/bin

Dinamicos: /var/mail, /var/spool, /var/run, /var/lock, /home

Compartibles: /usr/bin, /opt

No compartibles: /etc, /boot, /var/run, /var/lock

Todos los ficheros y directorios aparecen debajo del directorio raíz «/» (El equivalente en el mundo Unix al C:\ de Windows) aunque se encuentren en discos/dispositivos distintos. En Linux/Unix no existen letras de discos (C:, D:, etc) Los dispositivos se 'montan' (empiezan a formar parte) del arbol de directorios del sistema, pero esto lo explicaremos en otra ocasion.



A continuacion teneis una lista con los directorios mas importantes del sistema y para que se usan. Para acceder a los mismos podeis usar el comando cd 'nombre del directorio'. Para ver el contenido de los mismos podeis usar el comando ls -l 'nombre del directorio'.



Directorio Descripción



-----------------------------------------------------------------------------------------


/bin/ Comandos/programas binarios esenciales (cp, mv, ls, rm, etc.),


/boot/ Ficheros utilizados durante el arranque del sistema (núcleo y discos RAM)


/dev/ Dispositivos esenciales, discos duros, terminales, sonido,


video, lectores dvd/cd, etc






/etc/ Ficheros de configuración utilizados en todo el sistema y que


son específicos del ordenador






/etc/opt/ Ficheros de configuración utilizados por programas alojados dentro


de /opt/






/etc/X11/ Ficheros de configuración para el sistema X Window (Opcional)


/etc/sgml/ Ficheros de configuración para SGML (Opcional)


/etc/xml/ Ficheros de configuración para XML (Opcional)






/home/ Directorios de inicios de los usuarios (Opcional)


/lib/ Bibliotecas compartidas esenciales para los binarios de /bin/, /sbin/ y


el núcleo del sistema.






/mnt/ Sistemas de ficheros montados temporalmente.


/media/ Puntos de montaje para dispositivos de medios como unidades lectoras


de discos compactos.






/opt/ Paquetes de aplicaciones estáticas.


/proc/ Sistema de ficheros virtual que documenta sucesos y estados del


núcleo. Contiene principalmente ficheros de texto.






/root/ Directorio de inicio del usuario root (super-usuario) (Opcional)


/sbin/ Comandos/programas binarios de administración de sistema.


/tmp/ Ficheros temporales


/srv/ Datos específicos de sitio servidos por el sistema.


/usr/ Jerarquía secundaria para datos compartidos de solo lectura (Unix system


resources). Este directorio puede ser compartido por


múltiples ordenadores y no debe contener datos específicos del


ordenador que los comparte.






/usr/bin/ Comandos/programas binarios.


/usr/include/ Ficheros de inclusión estándar (cabeceras de cabecera utilizados


para desarrollo).






/usr/lib/ Bibliotecas compartidas.


/usr/share/ Datos compartidos independientes de la arquitectura del


sistema. Imágenes, ficheros de texto, etc.






/usr/src/ Códigos fuente (Opcional)


/usr/X11R6/ Sistema X Window, versión 11, lanzamiento 6 (Opcional)


/usr/local/ Jerarquía terciaria para datos compartidos de solo lectura


específicos del ordenador que los comparte.






/var/ Ficheros variables, como son logs, bases de datos, directorio raíz


de servidores HTTP y FTP, colas de correo, ficheros temporales, etc.






/var/cache/ Cache da datos de aplicaciones.


/var/crash/ Depósito de información referente a caidas del sistema (Opcional)






/var/games/ Datos variables de aplicaciones para juegos (Opcional)


/var/lib/ Información de estado variable. Algunos servidores como MySQL y


PostgreSQL almacenan sus bases de datos en directorios subordinados de éste.






/var/lock/ Ficheros de bloqueo.


/var/log/ Ficheros y directorios de registro del sistemas (logs).


/var/mail/ Buzones de correo de usuarios (Opcional)


/var/opt/ Datos variables de /opt/.


/var/spool/ Colas de datos de aplicaciones.


/var/tmp/ Ficheros temporales preservados entre reinicios.

viernes, 8 de julio de 2011

Comnados para Windows XP

En Windows XP han sido incluidas un gran número de utilidades de comando. Algunas de ellas han sido diseñadas para los administradores de red, eso si, abstenerse usuarios que dicen ser informaticos y solo saben usar el messenger o el word.


- defrag ..... herramienta para el intérprete de comandos que nos permitirá defragmentar volúmenes.

- diskpart ..... utilidad con la que administraremos las particiones de nuesrtros discos. Al introducir diskpart en el intérprete de comandos, nuestro prompt se cambiará por DISKPART>. Con diskpart /? obtendremos ayuda sobre esta utilidad.

- driverquery ..... obtendremos una lista de los controladores de sistema y sus propiedades.

- fsutil ..... con este comando podemos administrar muchos aspectos de nuestro sistema, desde consultar el espacio libre en un volumen, hasta administrar las cuotas de usuario.

- getmac ..... con esta utilidad obtendremos la dirección MAC (Media Access Control) del adaptador de red.

- gpresult ..... conseguiremos el RSOP (Resultant Set Of Policies), es decir, la configuración de directivas de grupo y la configuración del usuario.

- netsh ..... la herramienta de configuración de red. Escribiendo netsh entraremos en la herramienta y nuestro prompt se cambiará por NETSH>. Con netsh /? aprenderemos más sobre esta herramienta.

- openfiles ..... herramienta que permite al administrador mostrar o desconectar archivos abiertos a los que estén accediendo de forma remota otros usuarios.

- recover ..... con este comando intentaremos recuperar toda la información legible de un disco dañado.

- reg ..... la herramienta de edición del registro en modo texto. Con ella podremos exportar, copiar, restaurar, comparar registros y muchas otras tareas.

- schtasks ..... esta herramienta ayudará al administrador a programar, ejecutar, cambiar y eliminar tareas en una máquina local o remota.

- sfc ..... el comprobador de archivos de sistema verificará todos los archivos críticos y reemplazará aquellos que nosotros o alguna aplicación hayan modificado o reemplazado con la versión oficial de Microsoft.

- systeminfo ..... información básica sobre la configuración del sistema, tal como el tiempo que lleva iniciado, el tipo de procesador, la versión de la BIOS, la cantidad total de memoria y la cantidad disponible, los ajustes de la memoria virtual y otros muchos datos.

- tasklist ..... obtendremos una lista de los procesos que se encuentran funcionando en el sistema en la actualidad.

- taskkill ..... tras usar tasklist quizás queramos terminar alguno de estos procesos. Introduciendo taskkill /? obtendremos una lección rápida sobre la sintaxis del comando, que consiste en que si el PID (identificador de proceso) del bloc de notas es 2148, según tasklist, introduciendo la orden taskkill /PID 2148 cerraremos el programa.

Aqui os dejo con otro enlace algo más completo:
http://www.comunicopy.com/foros/viewtopic.php?t=38

sábado, 2 de julio de 2011

Como obtener tolas las IPs en VB 2010 .NET

Tendremos que añadir al principio la siguiente linea, para que podamos usar las variables de red entre otras:

Imports System.Net

Ahora os dejamos el código que se puede emplear en un commandbutton y pegarlo en un textbox el resultado:

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

Dim i_cont As Integer
Dim Host As String
       
        If Environment.GetCommandLineArgs().Length > 1 Then
            Host = Environment.GetCommandLineArgs(1)
        Else
            Host = Dns.GetHostName
        End If

Dim IPs As IPHostEntry = Dns.GetHostByName(Host)
Dim Direcciones As IPAddress() = IPs.AddressList

        'Se despliega la lista de IP's

        i_cont = 0

ForEach IP As IPAddress in Direcciones



TextBox1.Text = TextBox1.Text & "IP " & IP.ToString & vbCrLf


Next




End Sub

Minimizar a la bandeja del sistema (system tray) con VB2010 .NET

Buscando por internet he encontrado este sencillo manual que habla de hacer lo mismo pero en C# .NET, como a mi no se me da nada bien el C, pues he pensado en Adaptarlo a Visual Basic .NET

Bien, empecemos con nuestro formulario
 localizamos el elemento "notifyIcon" dentro del menú de herramientas y lo arrastramos hasta el formulario.
Ahora ya nos deberia de aparecer el objecto NotifyIcon tal y como se nos muestra en la imagen:


Ahora haremos doble clic en el objeto NotifyIcon y en el metodo Doble clic escribiremos lo siguiente:



Private Sub NotifyIcon1_MouseDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles NotifyIcon1.MouseDoubleClick
'Hacemos visible el formulario
Me.Show()
Me.WindowState = FormWindowState.Normal
'Ocultamos el icono de la bandeja de sistema
NotifyIcon1.Visible = False
End Sub


Ahora volvemos a la pantalla de diseño de formulario. Pinchamos sobre el formulario y después sobre el botón Eventos de la pantalla de propiedades para desplegar esta vez los eventos asociados al formulario. Esta vez hacemos click sobre la acción "Resize" y completamos el método que ha generado Visual Studio .NET de la siguiente forma: 

Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Resize
        'Si el estado actual de la ventana es "minimizado"...
        If Me.WindowState = FormWindowState.Minimized Then

            'Ocultamos el formulario
            Me.Visible = False
            'Hacemos visible el icono de la bandeja del sistema
            NotifyIcon1.Visible = True
        Else

        End If

End Sub

Por último, compilamos el proyecto y ejecutamos para ver el resultado.

Tal y como habréis imaginado, cuando pulsamos sobre el boton "minimizar" del formulario, nuestro programa desaparece de la pantalla y de la barra de tareas pero se hace visible su icono en la bandeja de sistema. En cambio, cuando hacemos doble click sobre este icono, la ventana vuelve a aparecer en pantalla y en la barra de tareas pero desaparece el icono del área de notificación.

Pequeño anexo sobre los detalles del NotifyIcon



Icon - Es el icono que tendrá el NotifyIcon, sino establecemos icono, no nos aparecerá ningun icono.

Text - Es el texto que aparecerá cuando situemos el ratón por encima del icono

Creo que con estos 2 datos teneis suficiente para haceros una idea de como funciona