Sunday, June 17, 2012

Como actualizar el repositorio local de solaris 11

En el articulo Como crear un repositorio local solaris 11 se creo el repositorio local, ahora vamos a actualizarlo a la última versión disponible.

Nota: Para tener acceso al patch se tiene que tener  una cuenta en M.O.S (My Oracle Support) y un contrato de mantenimiento.

Una vez obtenido el patch se copia a una carpeta temporal y se descomprime
root@sol11repo:/var/tmp/Repo# unzip p14050126_1100_SOLARIS64.zip

El archivo dejado es
root@sol11repo:/var/tmp/Repo# ls -ltr
total 17315023

-rw-r--r--   1 root     root     1017872384 May  7 13:12 sol-11-1111-sru7-05-incr-repo.iso

Montamos el iso en forma local
root@sol11repo:/var/tmp/Repo# mount -F hsfs sol-11-1111-sru7-05-incr-repo.iso /mnt


Ahora importamos los paquetes SRU al repositorio local
root@sol11repo:/var/tmp/Repo# pkgrecv -s /mnt/repo -d /export/repoSolaris11/ '*'
Processing packages for publisher solaris ...
Retrieving and evaluating 140 package(s)...
PROCESS                                         ITEMS     GET (MB)    SEND (MB)
Completed                                     140/140  874.3/874.3 2354.44

Tenemos que reconstruir los índices de búsquedas y reiniciamos el servicio
root@sol11repo:/var/tmp/Repo# pkgrepo rebuild -s /export/repoSolaris11/
Initiating repository rebuild.
root@sol11repo:/var/tmp/Repo# svcadm restart svc:/application/pkg/server:default

Ahora solo nos queda hacerle upgrade al sistema o solo a los paquetes que se necesiten, en este caso voy a hacer un upgrade completo.

root@sol11repo:~# pkg update

            Packages to update:  78

       Create boot environment: Yes

Create backup boot environment:  No



DOWNLOAD                                  PKGS       FILES    XFER (MB)

Completed                                78/78   1800/1800    58.2/58.2



PHASE                                        ACTIONS

Removal Phase                                544/544

Install Phase                                626/626

Update Phase                               2872/2872



PHASE                                          ITEMS

Package State Update Phase                   156/156

Package Cache Update Phase                     78/78

Image State Update Phase                         2/2

Después toca reiniciar el sistema. Pero cuidado!, porque al reiniciar vamos a utilizar otro BE (Boot Environments) así que cualquier cambio que se haga aquí, instalación de paquetes, configuración, se va a perder en el nuevo BE.


Tuesday, May 22, 2012

Shut Down Solaris 11

Para apagar solaris 11 sin que pida la confirmación con el comando init 5

shutdown -y -i5 -g0

Donde:

shutdown: Es el comando para apagar la máquina.

-y: Confirmación vía parámetro de que "SI" se quiere apagar la máquina

-i5: El nivel del  init, en este caso 5

-g0: Apaga la máquina inmediatamente sin un periodo de gracia. Se puede colocar n segundos para dar mas tiempo al  apagado.

Como instalar java 1.7 en debian

Debian squeeze viene con java 1.6 en el repositorio
aptitude show sun-java6-jdk
Package: sun-java6-jdk
New: yes
State: not installed
Version: 6.26-0squeeze1
Si quisieran instalar una versión mas reciente de java (otro release del 1.6 o el 1.7) aquí está el ejemplo. Descarguen el java que necesiten, en este caso es el 1.7
wget -c http://download.oracle.com/otn-pub/java/jdk/7u4-b20/jdk-7u4-linux-x64.tar.gz

tar zxvf jdk-7u4-linux-x64.tar -C /usr/lib/jvm
Luego en vez de colocar directamente un enlace en bin, debian tiene un manejador de script para mantener diferentes versiones de un programa.
update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0_04/bin/java 1 --slave /usr/local/man/man1/java.1 java.1 /usr/lib/jvm/jdk1.7.0_04/man/man1/java.1

update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_04/bin/javac 1 --slave /usr/local/man/man1/javac.1 javac.1 /usr/lib/jvm/jdk1.7.0_04/man/man1/javac.1
Y el resultado es el siguiente
java -version
java version "1.7.0_04"
Java(TM) SE Runtime Environment (build 1.7.0_04-b20)
Java HotSpot(TM) 64-Bit Server VM (build 23.0-b21, mixed mode)

Tuesday, February 28, 2012

Como configurar el dns solaris 11

En solaris 10 bastaba con configurar manualmente el archivo /etc/resolv.conf. En solaris 11 este es un archivo legacy que a pesar de que existe después de configurar el dns, no se edita directamente, porque una vez que sea configurado mediante el configurador de servicios (svccfg) se perderán todos los cambios hechos.

Yo tengo configurado mi dns en debian lenny (el cual debo llevar a squeeze). Pero en este post hablaré solamente del cliente solaris 11

La forma en como se configura es la siguiente:

1.- Se ejecuta por medio del comando svccfg
svccfg
select dns/client
setprop config/domain= astring: ("debian.lan")
setprop config/nameserver = net_address: ( 192.168.111.139 )
select dns/client:default
refresh
validate
select name-service/switch
setprop config/host = astring: "files dns"
select system/name-service/switch:default
refresh
validate
exit

2.- Habilitamos el servicio de dns y refrescamos
root@sol11repo:~# svcadm enable dns/client

root@sol11repo:~# svcadm refresh name-service/switch

root@sol11repo:~# grep host /etc/nsswitch.conf

hosts:  files dns


3.- Validamos el archivo /etc/resolv.conf
root@sol11repo:~# cat /etc/resolv.conf


# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.

# _AUTOGENERATED_FROM_SMF_V1_

#

# WARNING: THIS FILE GENERATED FROM SMF DATA.

#   DO NOT EDIT THIS FILE.  EDITS WILL BE LOST.

# See resolv.conf(4) for details.

domain  debian.lan

nameserver      192.168.111.139

4.- Validamos la respuesta del dns
root@sol11repo:~# nslookup sol11repo
Server:         192.168.111.139

Address:        192.168.111.139#53



Name:   sol11repo.debian.lan

Address: 192.168.111.142


Wednesday, February 15, 2012

Como crear un repositorio local solaris 11

Solaris 11 está disponible desde septiembre de 2011 y los cambios han sido interesantes, definitivamente se puede percibir la influencia de Open Solaris (R.I.P) a nivel del manejador de paquetes.

Como muchas de las empresas los servidores no tienen acceso a la red, nosotros creamos un repositorio local en un server y todos los demás se conectan para realizar la instalación.

Es necesario descargar las imágenes del repositorio en la página de oracle

El procedimiento es sencillo

Lo primero es hacer un merge de ambos isos en uno solo
 
unzip sol-11-1111-repo-full.iso-a.zip 

unzip sol-11-1111-repo-full.iso-b.zip 

cat sol-11-1111-repo-full.iso-a sol-11-1111-repo-full.iso-b > soll-11-1111-repo-full.iso

Luego movemos el iso al lugar definitivo
 
mv sol-11-1111-repo-full.iso /export/repoSolaris11/


Habilitamos el servicio de servidor de paquetes

svcadm enable application/pkg/server 


Montamos el iso, copiamos todo el repositorio y construimos el índice de búsqueda  (este paso puede tardar dependiendo de la velocidad del disco)

mount -F hsfs /export/repoSolaris11/soll-11-1111-repo-full.iso /mnt

cd /mnt/repo; tar cf - . | (cd /export/repoSolaris11; tar xfp -)

pkgrepo info -s /export/repoSolaris11

PUBLISHER PACKAGES STATUS           UPDATED

solaris   4292     online           2011-10-26T17:17:30.230911Z


Configuramos unos parámetros

1.- Para apuntar al repositorio

svccfg –s application/pkg/server setprop pkg/inst_root=/export/repoSolaris11 


2.- Para colocar el repositorio en solo lectura

svccfg –s application/pkg/server setprop pkg/readonly=true


Colocamos nuestro servidor como repositorio local

pkg set-publisher -G http://pkg.oracle.com/solaris/release/ -g http://nombre_servidor/ solaris


Y de ultimo refrescamos el servicio

svcadm refresh application/pkg/server

Friday, March 11, 2011

NFS en Solaris 10

Este sencillo post es para crear un NFS (Network File System) entre 2 servidores solaris 10.

Primero se debe validar que el servicio de nfs este corriendo
sseserver:~# svcs |grep -i nfs/server
online Nov_12 svc:/network/nfs/server:default

En caso de no estar activo ejecuta el comando
sseserver:~# svcadm enable svc:/network/nfs/server:default

luego para compartir el filesystem es con el siguiente comando
share -F nfs -o rw /directorio_a_compartir


Nota: Para que este cambio se permanente agregar la linea al archivo /etc/dfs/dfstab

y en el cliente se monta de la siguiente forma
mount -F nfs servidor:/directorio_a_compartir /punto_de_montura


Nota: Para que este cambio se permanente agregar la linea al archivo /etc/vfstab
servidor:/directorio_a_compartir - /punto_de_montura nfs - yes rw,soft

Tuesday, November 30, 2010

Salida de vmstat y su significado

vmstat - informa las estadísticas de memoria virtual del proceso, la memoria virtual en disco, la trampa (trap), y la actividad de la CPU.
El output del vmstat es el siguiente:

[root@bdvdesa2.banvenez.com]:/>vmstat 2 100
kthr memory page disk faults cpu
r b w swap free re mf pi po fr de sr s1 sd sd sd in sy cs us sy id
0 0 0 47129112 9777528 151 240 920 5 5 0 0 4 0 3 1 11322 16613 9885 13 5 82
1 0 0 43698888 6434416 55 325 185 0 0 0 0 0 0 6 0 20071 21303 14620 31 7 62
1 0 0 43698888 6434832 41 297 16 0 0 0 0 0 0 1 1 20844 16560 13627 33 7 60
0 0 0 43698888 6434632 37 176 0 0 0 0 0 0 0 1 1 20117 20836 14337 34 7 59
1 0 0 43698952 6434664 87 482 0 0 0 0 0 0 0 2 0 20316 17144 12939 32 6 62
3 0 0 43698952 6434648 0 122 0 0 0 0 0 0 0 0 1 21292 46150 20754 42 13 45
2 0 0 43698952 6434632 101 426 0 0 0 0 0 0 0 0 1 20392 11789 11221 58 5 37
0 0 0 43694008 6431928 0 31 0 0 0 0 0 0 0 0 0 20592 21992 15038 28 7 65
0 0 0 43694008 6431912 0 0 0 0 0 0 0 0 0 6 1 20060 7605 11122 7 4 89
0 0 0 43693568 6431344 93 573 0 0 0 0 0 0 0 0 1 20842 16496 12914 8 6 86

Pero que significa cada columna?

procs
r: en la cola de ejecución
b: bloqueado por los recursos de E / S, la paginación, etc
w: intercambiado
memoria: (en Kbytes)
swap: la cantidad de espacio de intercambio disponibles en la actualidad
free: tamaño de la lista libre

page (en unidades por segundo).
re: Página de volver reclama - ver la opción -S de cómo este campo es modificado.
mf: faltas leves - ver la opción-S de cómo este campo es modificado.
pi: kilobytes paged in
po: kilobytes paged out
fr: kilobytes liberados
de: déficit previsto de la memoria a corto plazo (Kbytes)
sr: páginas escaneadas por el algoritmo del reloj

disk (de operaciones por segundo)
Hay ranuras para hasta cuatro discos, etiquetados con una sola letra y número.
La letra indica el tipo de disco (S = SCSI, i = IPI, etc.)
El número es el número de unidad lógica.

faults
in:(non clock) dispositivo de interrupciones
sy: sistema de llamadas
cs: CPU context switches

CPU - desglose del uso de porcentaje de tiempo de CPU.
En multiprocesadores se trata de un un media de todos los procesadores.
us: timpo de usuario
sy: hora del sistema
id: tiempo de inactividad