A veces necesitamos ( lo más usual en la via de un DBA), monitorear una actividad de respaldo o restauración, esto porque siempre nos están preguntando, cual es el avance, como vamos, como va el respaldo.
Y a simple vista, responder a dicha pregunta no es tan fácil, especialmente si son restauraciones o respaldo de bases de datos de gran tamaño.
Pero los scripts construidos con el poderoso SQL nunca nos abandonan, en este caso traemos uno utilísimo (a mi modo de ver), que permite contestar de gran manera (es una aproximación) las preguntas planteadas arriba.
El query a usar, que es totalmente personalizable se basa en la session longops:
El resultado seria similar a la siguiente salida, indicando, la Sesión o SID, la hora de inicio, el Porcentaje de avance, usualmente del Hilo o Sesión el restante en Segundos, Minutos y Horas, para aquello de los impacientes:
ORACLE RAC 11GR2 (2 Nodes) Completamente en modo Silencioso, sin usar interfaz grafica.
San Salvador, 25 de Marzo de 2023
#OracleACE
#OracleTipsSV
Hace algún tiempo, me enfrente a una situación de instalación de un producto Oracle llamado OAS, para los que lo conocieron fue el Servidor de Aplicaciones Caballo de Batalla de Oracle Corp, malo para mi modo de ver, Weblogic le gana por mucho.
Centrándose en la situación vivida, estaba instalando via VPN (2011), con un acceso a internet algo lento, y recuerdo que cuando lanzaba el modo gráfico de la instalación demoraba mucho tiempo en hacerme caso, y el proceso era lento en su totalidad, quede frustrado, después de horas y horas de búsqueda y nada.
Tiempo después, cuando me dio curiosidad el Examen de OCM, lei un tópico o requisito, saber Instalar todo producto Oracle involucrado en el examen en modo silencioso, sin uso de interfaz gráfica, y pensé que ser eso, y comencé a investigar y descubrí eso que tiempo tras me pudo haber permitido instalar el OAS sin complicación.
Oracle Corp, para todo producto, permite instalarlo de 2 formas, en modo interactivo en sus típicos instaladores bajo el estándar Oracle Universal Installer, que es un Tool creado en Java con toda una pila de subutilerias internas y scripts que se ejecutan cuando una persona lo esta utilizando, no es particularmente lento pero, al cargarlo de forma remota se complica la existencia.
El otro modo, el modo silencioso, particularmente complejo dado que la persona que lo use, debe saber rellenar las respuestas a las preguntas que el Wizard de Instalación o OUI realiza para poder completar una instalación. Todo producto Oracle viene con una plantilla que puede ser rellenada, en la mayoría de los mismos viene una sección de explicación para cada item a completar su valor.
Entrando en materia, vamos a ver los comandos necesarios para instalar un Oracle RAC de 2 nodos en version 11g( en realidad todas las versiones en esencia son iguales), usando el modo silencioso.
Vamos a asumir algunas consideraciones:
Tenemos el Hardware adecuado y correctamente configurado
Sistema operativo adecuado y correctamente configurado en los nodos involucrados
La mayoría o todos los elementos requisitos correctamente configurados, esto porque nunca es correcto dejando elementos con warning (para producción esto puede provocar fallas posteriores), o Error ( error ni siquiera se puede terminar la instalación)
Tenemos el Software correcto descargando y copiado al nodo inicial , también desempacado.
Hay que definir una variable para evitar errores durante la instalación:
export IGNORE_PREADDNODE_CHECKS=Y
Configuramos la equivalencia de usuarios entre los nodos:
Al iniciar nos indica el log donde se ve el avance, el mismo log nos indica que hay que ejecutar los scripts de root ( 2 el del inventario y el del OracleHome), también nos indicara cualquier error que haya que corregir, etc.
El mismo nos indicara cuando el proceso haya finalizado.
El OUI inicial solo crea y configura el diskgroup de ASM donde el OCR y los voting files son creados por lo cual cualquier diskgroup de ASM adicional debe configurarse posterior a dicho paso, aqui creamos un diskgroup de ASM:
Una vez el GI ha sido configurado de forma correcta, validamos su funcionamiento, apagando, encendiendo, reiniciando equipos, podemos parcharlo, etc , etc.
En este ejemplo usamos, separación de soles, por lo cual el Software de RDBMS se ejecuta con usuario oracle, solo instalaremos el RDBMS, no crearemos la BD, eso sera en un paso posterior:
El proceso de instalación completo la instalación y al finalizar debió ejecutarse el script de root del mismo Home, con esto podríamos crear la BD del mismo modo silencioso:
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Solaris: Version 11.2.0.3.0 - Production
Start Date 12-APR-2014 23:53:51
Uptime 0 days 2 hr. 50 min. 10 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/11.2.0/grid/network/admin/listener.ora
Listener Log File /u01/11.2.0/grid/log/diag/tnslsnr/racprod01/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.10.102)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.10.105)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM1", status READY, has 1 handler(s) for this service...
Service "mvadb" has 1 instance(s).
Instance "mvadb1", status READY, has 1 handler(s) for this service...
Service "mvadbXDB" has 1 instance(s).
Instance "mvadb1", status READY, has 1 handler(s) for this service...
The command completed successfully
------------------------
Alias LISTENER
Version TNSLSNR for Solaris: Version 11.2.0.3.0 - Production
Start Date 12-APR-2014 23:53:51
Uptime 0 days 2 hr. 50 min. 26 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/11.2.0/grid/network/admin/listener.ora
Listener Log File /u01/11.2.0/grid/log/diag/tnslsnr/racprod02/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.10.104)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.10.106)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM2", status READY, has 1 handler(s) for this service...
Service "mvadb" has 1 instance(s).
Instance "mvadb2", status READY, has 1 handler(s) for this service...
Service "mvadbXDB" has 1 instance(s).
Instance "mvadb2", status READY, has 1 handler(s) for this service...
The command completed successfully
Raul Antonio Molina Alvarenga – Oracle ACE Associate
04-dec-2022
No se si alguna vez les ha pasado que por algún error involuntario o una falla han perdido el spfile, pfile, o init temporal, representando alguna que otra sudoración por no poder encender la instancia y que la base de datos de servicio.
En este articulo vamos a simular una falla frecuente en el mundo de los dbas, que también puede venir acompañada de la ejecución de un establecimiento de parámetros que imposibilita el arranque de la instancia.
Primero validamos que tenemos nuestro spfile configurado y utilizado:
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /opt/oracle/product/19c/dbhome_1/dbs/spfileORCLCDB.ora
SQL>
SQL> show parameter name
NAME TYPE VALUE
db_namestring ORCLCDB
SQL>
Crearemos una copia del spfile como pfile.
Recordemos la definición:
pfile: archivo de parámetros en texto
spfile: archivo de parámetros en formato binario.
SQL> create pfile from spfile;
File created.
También crearemos un archivo de parámetros alterno, con nombre alterno.
SQL> create pfile='noperderpfile.ora' from spfile;
File created.
Es importante observemos donde esta el diag, la ruta de archivos de log y traces de la bd y el estado de la instancia:
SQL> show parameter diag
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
diagnostic_deststring /opt/oracle
SQL>select status from v$instance;
Ahora vamos a simular la falla de perder el spfileSID, borramos el spfileSID, note que hay un initSID, el archivo alterno de parámetros que nosotros creamos.
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string --> esta vacio, arranco con init
SQL>
Notese que la instancia arranco, sin spfile, porque por default en el orden de precedencia al no encontrar spfileSID, busca initSID
y para el caso lo encontró en el directorio $ORACLE_HOME/dbs.
Vamos a provocar la falla , borrando el initSID
[oracle@instance-20221204-1045 dbs]$ ls
hc_ORCLCDB.datinit.orainitORCLCDB.oralkORCLCDBnoperderpfile.oraorapwORCLCDB
[oracle@instance-20221204-1045 dbs]$ rm initORCLCDB.ora
[oracle@instance-20221204-1045 dbs]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Sun Dec 4 22:46:21 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle.All rights reserved.
Connected to an idle instance.
SQL> startupORA-01078: failure in processing system parametersLRM-00109: could not open parameter file '/opt/oracle/product/19c/dbhome_1/dbs/initORCLCDB.ora'SQL>
Puede observarse que al no encontrar spfile ni init, no arranco la instancia
[oracle@instance-20221204-1045 dbs]$ ls
hc_ORCLCDB.datinit.oralkORCLCDBnoperderpfile.oraorapwORCLCDB
Vamos a reconstruir nuestro spfile del init que guardamos previamente con nombre personalizado.
[oracle@instance-20221204-1045 dbs]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Sun Dec 4 22:46:44 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle.All rights reserved.
Connected to an idle instance.
SQL> create spfile from pfile='noperderpfile.ora';File created.SQL> startup
ORACLE instance started.
Total System Global Area473953632 bytes
Fixed Size 8897888 bytes
Variable Size 222298112 bytes
Database Buffers 234881024 bytes
Redo Buffers 7876608 bytes
Database mounted.
Database opened.
SQL>
Esto creo el spfile y se puede observar en el $OH/dbs
Otra forma utilísima de regenerar el init o spfile es usando los valores impresos en el alert en el diag repository.
[oracle@instance-20221204-1045 dbs]$ adrci
ADRCI: Release 19.0.0.0.0 - Production on Sun Dec 4 22:59:57 2022
Copyright (c) 1982, 2019, Oracle and/or its affiliates.All rights reserved.
ADR base = "/opt/oracle"
adrci> show alert
Choose the home from which to view the alert log:
1: diag/rdbms/orclcdb/ORCLCDB
2: diag/rdbms/dummy/ORCLCDB
3: diag/tnslsnr/instance-20221204-1045/listener
Q: to quit
Please select option: 1
Cuando Comenzó la tecnología de Multitenant, fue como un giro de timón, algo complejo de entender, y para mi existía una analogía que encontraba algo cierta, comparaba Multitenant como SQL Server, algo que un sostengo, aquí les explico mi analogía:
la CDB$ROOT, es como la master y msdb del SQLSERVER,
La instancia de la base de datos es como el motor en los Servicios de Windows ejecutandose si se apaga ninguna Base de Datos atachada se puede acceder
Las bases de datos , pueden desconectarse y posteriormente pegarse o atacharse, a la misma Instancia Principal o otra en otro servidor
Pueden crearse backups de las bases de datos
No deben existir Objetos de usuario en la CDB$ROOT y/o la master o msdb.
Habiendo aclarado mi analogía, expongo el acceso.
Parecía complejo y tedioso el conectarse a una PDB en el mismo servidor de Base de datos al inicio, pues si no usábamos TNSNAMES o easy connect, solo podíamos cambiándonos de contenedor en la sesión así:
[oracle@nodo1 ~]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Fri Oct 7 15:57:33 2022
Version 19.15.0.0.0
Copyright (c) 1982, 2022, Oracle.All rights reserved.
Connected to:
Oracle Database 19c EE Extreme Perf Release 19.0.0.0.0 - Production
Version 19.15.0.0.0
SQL> show pdbs;
CON_ID CON_NAME OPEN MODERESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEEDREAD ONLYNO
3 MYPLUGDB3_NEWREAD WRITE NO
SQL>
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL>
SQL> show pdbs;
CON_ID CON_NAME OPEN MODERESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEEDREAD ONLYNO
3 MYPLUGDB3_NEWREAD WRITE NO
SQL> alter session set container=MYPLUGDB3_NEW;
Session altered.
SQL> show con_name
CON_NAME
------------------------------
MYPLUGDB3_NEW
SQL>
Ahora bien, desde 18c, es posible definir una nueva variable de ambiente, que permita conectarse directamente a una Base de Datos sin necesidad de pasar primero por el contenedor raíz, así:
[oracle@nodo1 ~]$ export ORACLE_PDB_SID=MYPLUGDB3_NEW
[oracle@nodo1 ~]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Fri Oct 7 16:19:03 2022
Version 19.15.0.0.0
Copyright (c) 1982, 2022, Oracle.All rights reserved.
Connected to:
Oracle Database 19c EE Extreme Perf Release 19.0.0.0.0 - Production
Version 19.15.0.0.0
SQL> show con_name
CON_NAME
------------------------------
MYPLUGDB3_NEW
SQL>
Este formato permite, inclusive ejecutar expdp directamente en la PDB o Base de Datos pluggable sin necesidad de usar tnsnames.
Llevar a cabo el incremento o disminución del espacio asignado en un Diskgroup de ASM hoy en día es una tarea normal de la operación, lo que hace años haciamos con los FileSystems, Folders o Puntos de Montaje en Unix y Windows.
En un Sistema de Ingenieria de Oracle tampoco es la excepción, pues las bases de Datos o repositorios de Datos, estan en constante crecimiento basados en el Negocio o Rubro que Soportan.
Siendo las Bases de Datos de Empresas de Telecomunicaciones o Bancos las que Más Rapido crecen.
En esta oportunidad vamos a Incrementar el espacio de almacenamiento en un Diskgroup de ASM en un Sistema de Ingenieria Exadata.
IPS de las celdas
Debemos conocer las IPs de las Celdas de Almacenamiento porque, es necesario hacer ciertos pasos de procedimiento en dichos componenes, aunque podria hacerse con el utilitario dcli desde el Nodo de Procesamiento Database Machine, Prefiero hacerlo desde la propia celda.
Los nombres de Diskgroups, IPS , Bases de Datos, Hostname, etc son ficticios en el Articulo.
20.10.101.230 nodo01
20.10.101.231 nodo02
20.10.101.232 nodo03
Conectarse mediante SSH
Nos conectamos mediante SSH ya sea fuera del Exadata o desde un nodo de computo a las celdas.
Tarea de Redimensión del espacio actual
Lo que se redimensiona son los GridDisk, los GridDisk son las porciones en que se dividen los CELLDISK, el CELLDISK es el LUN, y el CELLDISK es tambien cada disco fisico en la Celda, existen N discos fisicos en las celdas existiendo un minimo de 6 discos, y todas las celdas tienen la misma candidad de discos.
Validamos el espacio libre de los CELLDISk, a ver si hay espacio para incrementar los GridDisk del cluster en estudio.
cellcli -e “list celldisk where name like ‘CD.*’ attributes name, size, freespace”
Ahora validamos el espacio que tiene cada GridDisk, observamos que el espacio que produce dicha configuración es de 1TB y se obtiene asi.
6 Discos de 58Gb por 3 celdas, 6*58G*3= 1044G aprox 1Tb , en los GridDisk del Diskgroup DATA
cellcli -e “list griddisk where name like ‘DATA.*’ attributes name, size” –> 1Tb
DATA_CD_00_celda01 58G
DATA_CD_01_celda01 58G
DATA_CD_02_celda01 58G
DATA_CD_03_celda01 58G
DATA_CD_04_celda01 58G
DATA_CD_05_celda01 58G
Vamos a trabajar tambien el diskgroup RECO
6 Discos de 14Gb por 3 celdas, 6*58G*3= 250G , en los GridDisk del Diskgroup RECO
cellcli -e “list griddisk where name like ‘RECO.*’ attributes name, size” –> 250GB
RECO_CD_00_celda01 14G
RECO_CD_01_celda01 14G
RECO_CD_02_celda01 14G
RECO_CD_03_celda01 14G
RECO_CD_04_celda01 14G
RECO_CD_05_celda01 14G
Debemos comprender que los dos GridDisk tanto del diskgroup DATA y RECO provienen del mismo CELLDISK, pero Oracle usa la logica del sector del disco que da vueltas más rapidas, ese sector al ser mas rapido es definido para DATA, y el sector más alejado o que da las vueltas más lentas, es definido para RECo, usando una propiedad definido en cilindros y llamada Interleave Disk(Puede que me equivoque).
Aqui hay imagenes al respecto:
Analizamos los diskgroups a aumentar el tamaño ( el proceso de reducir es exactamente igual al reves los pasos).
asmcmd lsdg
State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name
MOUNTED HIGH N 512 512 4096 4194304 1069056 172704 118784 17973 0 Y DATA/
MOUNTED HIGH N 512 512 4096 4194304 258048 63060 28672 11462 0 N RECO/
Necesitamos incrementar los griddisk de data a 116GB
Necesitamos incrementar los griddisk de reco a 58G
Consultamos el tamaño de cada Disco o GRIDDISK de ASM para RECO y DATA en cualquiera de los nodos de Computo o Database Machine del Cluster que estamos trabajando ( Virtual o BareMetal es indiferente).
SQL> select name, total_mb from v$asm_disk_stat where name like ‘%RECO%’;
NAME TOTAL_MB
—————————— ———-
RECO_CD_01_celda03 14336
RECO_CD_00_celda03 14336
RECO_CD_03_celda03 14336
RECO_CD_04_celda03 14336
RECO_CD_05_celda03 14336
RECO_CD_02_celda03 14336
RECO_CD_05_celda02 14336
RECO_CD_02_celda02 14336
RECO_CD_00_celda02 14336
RECO_CD_01_celda02 14336
RECO_CD_04_celda02 14336
RECO_CD_03_celda02 14336
RECO_CD_04_celda01 14336
RECO_CD_00_celda01 14336
RECO_CD_05_celda01 14336
RECO_CD_01_celda01 14336
RECO_CD_03_celda01 14336
RECO_CD_02_celda01 14336
QD_RECO_NODO1 128
QD_RECO_NODO1 128
20 rows selected.
SQL> c.RECO.DATA
1* select name, total_mb from v$asm_disk_stat where name like ‘%DATA%’
SQL> /
NAME TOTAL_MB
—————————— ———-
DATA_CD_02_NODO03 59392
DATA_CD_05_NODO03 59392
DATA_CD_04_NODO03 59392
DATA_CD_00_NODO03 59392
DATA_CD_03_NODO03 59392
DATA_CD_01_NODO03 59392
DATA_CD_04_NODO02 59392
DATA_CD_03_NODO02 59392
DATA_CD_01_NODO02 59392
DATA_CD_00_NODO02 59392
DATA_CD_02_NODO02 59392
DATA_CD_05_NODO02 59392
DATA_CD_03_NODO01 59392
DATA_CD_02_NODO01 59392
DATA_CD_04_NODO01 59392
DATA_CD_05_NODO01 59392
DATA_CD_00_NODO01 59392
DATA_CD_01_NODO01 59392
QD_DATA_NODO2 128
QD_DATA_NODO1 128
20 rows selected.
Para cada griddisk por celda primero los griddisk del diskgroup RECO
En cellcli, por Celda aumentar en Megabytes en Multiplos de 16MB dice la documentación.
Celda3
cellcli
cellcli>
alter griddisk RECO_CD_01_NODO03,RECO_CD_00_NODO03,RECO_CD_03_NODO03,RECO_CD_04_NODO03,RECO_CD_05_NODO03,RECO_CD_02_NODO03 size=59392M;
Celda2
cellcli
cellcli>
alter griddisk RECO_CD_05_NODO02,RECO_CD_02_NODO02,RECO_CD_00_NODO02,RECO_CD_01_NODO02,RECO_CD_04_NODO02,RECO_CD_03_NODO02 size=59392M;
Celda1
cellcli
cellcli>
alter griddisk RECO_CD_04_NODO01,RECO_CD_00_NODO01,RECO_CD_05_NODO01,RECO_CD_01_NODO01,RECO_CD_03_NODO01,RECO_CD_02_NODO01 size=59392M;
Luego DATA
Celda3
cellcli
cellcli>
alter griddisk DATA_CD_01_NODO03,DATA_CD_00_NODO03,DATA_CD_03_NODO03,DATA_CD_04_NODO03,DATA_CD_05_NODO03,DATA_CD_02_NODO03 size=118784M;
Celda2
cellcli
cellcli>
alter griddisk DATA_CD_05_NODO02,DATA_CD_02_NODO02,DATA_CD_00_NODO02,DATA_CD_01_NODO02,DATA_CD_04_NODO02,DATA_CD_03_NODO02 size=118784M;
Celda1
cellcli
cellcli>
alter griddisk DATA_CD_04_NODO01,DATA_CD_00_NODO01,DATA_CD_05_NODO01,DATA_CD_01_NODO01,DATA_CD_03_NODO01,DATA_CD_02_NODO01 size=118784M;
Los outputs, tener cuidado que el comando quede en una sola linea, el cellcli es como un prompt CLI ASMCMD o SQLPLUS.
GridDisk RECO_CD_04_nodo01 successfully altered
GridDisk RECO_CD_00_nodo01 successfully altered
GridDisk RECO_CD_05_nodo01 successfully altered
GridDisk RECO_CD_01_nodo01 successfully altered
GridDisk RECO_CD_03_nodo01 successfully altered
GridDisk RECO_CD_02_nodo01 successfully altered
GridDisk DATA_CD_04_nodo01 successfully altered
GridDisk DATA_CD_00_nodo01 successfully altered
GridDisk DATA_CD_05_nodo01 successfully altered
GridDisk DATA_CD_01_nodo01 successfully altered
GridDisk DATA_CD_03_nodo01 successfully altered
GridDisk DATA_CD_02_nodo01 successfully altered
GridDisk RECO_CD_05_nodo02 successfully altered
GridDisk RECO_CD_02_nodo02 successfully altered
GridDisk RECO_CD_00_nodo02 successfully altered
GridDisk RECO_CD_01_nodo02 successfully altered
GridDisk RECO_CD_04_nodo02 successfully altered
GridDisk RECO_CD_03_nodo02 successfully altered
GridDisk DATA_CD_05_nodo02 successfully altered
GridDisk DATA_CD_02_nodo02 successfully altered
GridDisk DATA_CD_00_nodo02 successfully altered
GridDisk DATA_CD_01_nodo02 successfully altered
GridDisk DATA_CD_04_nodo02 successfully altered
GridDisk DATA_CD_03_nodo02 successfully altered
GridDisk RECO_CD_01_nodo03 successfully altered
GridDisk RECO_CD_00_nodo03 successfully altered
GridDisk RECO_CD_03_nodo03 successfully altered
GridDisk RECO_CD_04_nodo03 successfully altered
GridDisk RECO_CD_05_nodo03 successfully altered
GridDisk RECO_CD_02_nodo03 successfully altered
GridDisk DATA_CD_01_nodo03 successfully altered
GridDisk DATA_CD_00_nodo03 successfully altered
GridDisk DATA_CD_03_nodo03 successfully altered
GridDisk DATA_CD_04_nodo03 successfully altered
GridDisk DATA_CD_05_nodo03 successfully altered
GridDisk DATA_CD_02_nodo03 successfully altered
Los celldisk despues del resize scaleup, vemos que ocupamos .10TB de cada CELLDISK
cellcli -e “list celldisk where name like ‘CD.*’ attributes name, size, freespace”