Update del sistema

Es una de las operaciones más frecuentes. Habitualmente cada mes Oracle genera una nueva versión del sistema operativo Solaris con nuevas funciones y con la resolución de determinados problemas. Aunque un update mensual es algo exagerado, la recomendación de actualización del sistema es de uno o dos updates al año. Para recibir mensualmente las nuevas versiones es necesario un contrato de soporte con Oracle.

Pruebas previas

Versión actual

root@server:~# pkg info entire

Repositorios

root@server:~# pkg publishers
PUBLISHER                   TYPE    STATUS  URI
solaris                     origin  online  http://pkg.oracle.com/solaris11/release/
root@server:~# 

Versión disponible en los repositorios.

root@server:~# pkg info -r entire

Se puede probar la nueva versión sin realizar el update. Esta prueba se suele hacer con anterioridad para comprobar que no hay problemas con la nueva versión

root@server:~# pkg update -nv

Este comando comprueba la actualización del software sin aplicarla.

Comprobar que no hay problemas hardware o software

root@server:~# fmadm faulty
root@server:~#

Comprobar que no hay servicios caídos

root@server:~# svcs -xv
root@server:~#

Espacio libre en rpool

root@server:~# zpool list
NAME    SIZE  ALLOC  FREE  CAP  DEDUP  HEALTH  ALTROOT
rpool   186G  75.2G  111G  40%  1.00x  ONLINE  -

Debemos tener más de 30G libres en rpool para evitar que se llene durante el proceso de actualización.

Actualización del software

Antes de comenzar se crea un nuevo boot enviroment que puedes servir para volver al estado previo si hay problemas. Normalmente, el comando de actualización, crea automáticamente un boot enviroment previo al update, pero por si acaso es mejor que también lo creemos nosotros

root@server:~# beadm create sol11.4.54prev

Este boot enviroment guarda el estado del zpool rpool donde está instalado el sistema operativo. No afecta a ningún otro zpool.

Para realizar la actualización se ejecuta el siguiente comando. Se crea un boot enviroment con el nombre sol11.4.72 en el que estará la nueva versión.

root@server:~# pkg update --accept --be-name sol11.4.72

Una vez terminado sin errores, para que aplique el nuevo boot enviroment es necesario reiniciar el sevidor

root@server:~# init 6

Una vez reiniciado el sistema arrancará con el nuevo boot enviroment activo y la nueva versión.

Chequeos posteriores

Comprobar la nueva versión

root@server:~# pkg info entire

Comprobar que no hay fallos

root@server:~# fmadm faulty

Comprobar que no se han caído ningún servicio

root@server:~# svcs -xv

Vuelta atrás

En el caso de que encontremos problemas podemos volver a la versión anterior gracias al boot enviroment que hemos salvado al principio. Lo primero es activar el boot enviroment

root@server:~# beadm activate sol11.4.54prev

A continuación reiniciamos el servidor para volver al estado cuando se creo el boot enviroment.

init 6

Esto afecta exclusivamente al zpool rpool que es donde está instalado el sistema operativo. No afecta a ningún otro zpool