Buscar aquí

31 enero 2012

Obtener velocidad de tarjeta de red en HPUX

En HPUX, una forma de obtener la velocidad de conexión de la tarjeta de red (que en linux podemos usar mii-tool) es utilizar el comando lanadmin con el parametro -x y el indice de la tarjeta que se quiere revisar.  Ahora si no se sabe cual tarjeta... una opción es usar el comando netstat -i nos muestra la estadísticas de red:

 netstat -i
Name      Mtu  Network         Address         Ipkts              Ierrs Opkts              Oerrs Coll
lan0      1500 10.181.23.0     prd1149         1624149909         0     2348185029         0     0
lo0      32808 loopback        localhost       10500568           0     10500568           0     0
lan4      1500 10.181.10.0     rsp1149         5177904            0     151                0     0

entonces si se ejecuta lanadmin -x 0:

lanadmin -x 0
Speed = 1000 Full-Duplex.
Autonegotiation = On.

24 enero 2012

Depurar scripts en HP-UX o linux

Una de las ventajas de los sistemas *nix, es que se puede hacer una depuración de los script usados en el shell de manera muy simple, mostrando línea a línea lo que ocurre, así por ejemplo, mostrará valores que toman las variables, las ejecuciones de comando, etc... esto sirve para bash, ksh y sh (si no saben que shell están corriendo pueden hacer un echo $SHELL o print $SHELL) la depuración consiste en agregar a la primera línea del script donde se encuentra algo como:

#!/usr/bin/ksh , o
#!/bin/sh , o
#!/bin/bash

le agregamos un -x, quedando #!/usr/bin/ksh -x con esto, la siguiente ejecución mostrará algo como:

> cat test_script.ksh
#!/usr/bin/ksh -x

QTY=1

while [ $QTY -lt 3 ]
do
    print "vez " $QTY
    QTY=$(( QTY + 1))
done

> test_script.ksh
+ QTY=1
+ [ 1 -lt 3 ]
+ print vez  1
vez  1
+ QTY=2
+ [ 2 -lt 3 ]
+ print vez  2
vez  2
+ QTY=3
+ [ 3 -lt 3 ]

Sin -x muestra por pantalla:
vez 1
vez 2

20 enero 2012

como ver el contenido de un paquete instalado en HP-UX

Si el paquete fue agregado con swinstall, se puede revisar con swlist -l file

Obtener información de hardware en HP-UX

En HP-UX, existe una serie de comandos que entregan información muy detallada del sistema:
  • cstm, interfaz de comando que permite obtener la información del sistema, se ingresa a una shell y se debe ingresar:
    • map all, con esto muestra una lista de todos los dispositivos del sistema.
    • selall, con esto se seleciona todo
    • infolog, muestra el log recopilado, con pausas y al final ofrece la opción de guardar el log (SaveAs) o no hacer nada (Done)
Si se tiene HP-UX 11.25, en cstm no muestra la información del clock de los procesadores, para ello es bueno ejecutar: /usr/contrib/bin/machinfo, que entrega información formateada, que probablemente sea suficiente.  Además aquí aparece información de los procesadores.

Si cstm no es capaz de recopilar la información, tambien se puede utilizar print_manifest, que arroja una salida formateada bastante util.  Ojo, que tal vez no este en el PATH, de ser así, en man print_manifest saldrá la ruta, en este caso para HP-UX 11.31 es /opt/ignite/bin/print_manifest.


También se puede utilizar ioscan, para obtener la lista completa, basta ioscan -f, con eso entrega la lista completa de hardware instalado en la máquina.

19 enero 2012

Cómo ver los procesos en forma de árbol, en Solaris y HPUX?

El comando ptree, tanto en Solaris y HP-UX sirve para obtener una lista jerarquizada de los procesos que están ejecutandose en el momento, por ejemplo, en HPUX donde estoy usando screen luce algo así:

PID         COMMAND
29501      screen -h 10000 -S amardone
 29503      /usr/bin/sh
  27588      telnet prd1082
 20897      /usr/bin/sh
 19846      /usr/bin/sh

La identación no es mucha, pero clarifica cual es padre y los hijos no? así se observa que dentro de screen hay tres consolas (/usr/bin/sh) y en una de ellas un telnet.

En particular HP UX, también se puede conseguir un resultado similar con el parámetro H, entonces el comando sería algo como:

ps -feH


Si al ejecutar arroja un error como éste:

ps: illegal option -- H
usage: ps [-edaxzflP] [-u ulist] [-g glist] [-p plist] [-t tlist] [-R prmgroup] [-Z psetidlist]


es porque no está la variable de ambiente UNIX95 que afecta a algunos comando como ps, de hecho si revisan la ayuda de ps, verán que en la opción -H dice (UNIX Standard Only.) esto significa que se debe asignar un valor a la variable UNIX95, que se hace con un tradicional export o setenv dependiendo del shell.

export UNIX95=1

con esto se obtiene el resultado esperado, aunque la salida tal como dije antes, es menos gráfica, algo como esto:

root      1806        1  0  May  1  ?        00:01:26   /usr/sbin/stm/uut/bin/sys/diagmond
root      2194  1806  0  May  1  ?        00:03:31     diaglogd
root      2195  1806  0  May  1  ?        00:17:04     psmctd

Si observan bien, hay un par de espacios de identación a la derecha para señalar los procesos hijos y para los que no sepan, la tercera columna es el ppid, el parent pid o pid padre.