para encontrar una lista de los puntos de montaje y qué discos se utilizan de cada uno:
observe /etc/vfstab
: este archivo muestra qué sistemas de archivos están configurados en el sistema, incluidos qué discos se utilizan en qué puntos de montaje. Este archivo no se usa para sistemas de archivos ZFS.
# cat /etc/vfstab
#device device mount FS fsck mount mount
#to mount to fsck point type pass at boot options
#
fd - /dev/fd fd - no -
/proc - /proc proc - no -
/dev/dsk/c1t0d0s1 - - swap - no -
/dev/dsk/c1t0d0s0 /dev/rdsk/c1t0d0s0 / ufs 1 no -
/dev/dsk/c1t1d0s0 /dev/rdsk/c1t1d0s0 /jumpserver ufs 1 yes -
/devices - /devices devfs - no -
ctfs - /system/contract ctfs - no -
objfs - /system/object objfs - no -
swap - /tmp tmpfs - yes -
#/jumpserver/install/SunOS/5.10/i386/u4/boot - /tftpboot/I86PC.Solaris_10-4 lofs - yes ro
#/jumpserver/install/SunOS/5.10/i386/u7/boot - /tftpboot/I86PC.Solaris_10-7 lofs - yes ro
/jumpserver/install/SunOS/5.10/i386/u9/boot - /tftpboot/I86PC.Solaris_10-9 lofs - yes ro
/jumpserver/install/SunOS/5.10/i386/u7/boot - /tftpboot/I86PC.Solaris_10-10 lofs - yes ro
ejecute el comando zpool status
: este comando imprimirá una lista de todos los zpools configurados e importados en el sistema, y enumera qué discos se usan en cada grupo y cuál es la configuración del grupo, en lo que respecta a la duplicación, o raidz, etc.
# zpool status
pool: rpool
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
rpool ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
c0t0d0s0 ONLINE 0 0 0
c0t1d0s0 ONLINE 0 0 0
errors: No known data errors
ejecute el comando mount -p
: esto le mostrará una lista de estilo vfstab de cualquier sistema de archivos que esté montado en el servidor. La importancia de esto es que puede identificar sistemas de archivos que se montaron, pero nunca se agregaron a / etc / vfstab, o cambios en los montajes que no se hicieron persistentes.
# mount -p
/dev/dsk/c1t0d0s0 - / ufs - no rw,intr,largefiles,logging,xattr,onerror=panic
/devices - /devices devfs - no
ctfs - /system/contract ctfs - no
proc - /proc proc - no
mnttab - /etc/mnttab mntfs - no
swap - /etc/svc/volatile tmpfs - no xattr
objfs - /system/object objfs - no
/usr/lib/libc/libc_hwcap1.so.1 - /lib/libc.so.1 lofs - no
fd - /dev/fd fd - no rw
swap - /tmp tmpfs - no xattr
swap - /var/run tmpfs - no xattr
/dev/dsk/c1t1d0s0 - /jumpserver ufs - no rw,intr,largefiles,logging,xattr,onerror=panic
/hgfs - /hgfs vmhgfs - no
/dev/lofi/1 - /mnt/s10u9x86 hsfs - no ro,noglobal,maplcase,rr,traildot
/dev/lofi/2 - /mnt/s10u9x86ccd hsfs - no ro,noglobal,maplcase,rr,traildot
/dev/lofi/3 - /mnt/s10u9 hsfs - no ro,noglobal,maplcase,rr,traildot
/jumpserver/install/SunOS/5.10/i386/u7/boot - /tftpboot/I86PC.Solaris_10-10 lofs - no ro
ejecute el comando cfgadm -al
: esto le proporcionará una lista de todos los controladores del sistema, junto con todos los dispositivos conectados a esos controladores.
# cfgadm -al
Ap_Id Type Receptacle Occupant Condition
c1 scsi-bus connected configured unknown
c1::dsk/c1t0d0 disk connected configured unknown
c1::dsk/c1t1d0 disk connected configured unknown
ejecute el comando format
: para ver detalles de todos los discos instalados en un sistema, que no son proporcionados por cfgadm -al
. En particular, querrás anotar los subcomandos verify
y inquiry
.
# format
Searching for disks...done
AVAILABLE DISK SELECTIONS:
0. c0t0d0 <DEFAULT cyl 60797 alt 2 hd 255 sec 252>
/pci@0,0/pci8086,340b@4/pci1028,1f10@0/sd@0,0
1. c0t1d0 <DEFAULT cyl 60797 alt 2 hd 255 sec 252>
/pci@0,0/pci8086,340b@4/pci1028,1f10@0/sd@1,0
2. c0t2d0 <DEFAULT cyl 60797 alt 2 hd 255 sec 252>
/pci@0,0/pci8086,340b@4/pci1028,1f10@0/sd@2,0
3. c0t3d0 <DEFAULT cyl 60478 alt 2 hd 255 sec 252>
/pci@0,0/pci8086,340b@4/pci1028,1f10@0/sd@3,0
Specify disk (enter its number):
Por ejemplo, seleccione el disco 0
en el menú de arriba y ejecute inquiry
:
format> inquiry
Vendor: ATA
Product: Hitachi HUA72202
Revision: A3HA
y verify
:
format> verify
Primary label contents:
Volume name = < >
ascii name = <DEFAULT cyl 60797 alt 2 hd 255 sec 252>
pcyl = 60799
ncyl = 60797
acyl = 2
bcyl = 0
nhead = 255
nsect = 252
Part Tag Flag Cylinders Size Blocks
0 root wm 1 - 60796 1.82TB (60796/0/0) 3906750960
1 unassigned wm 0 0 (0/0/0) 0
2 backup wm 0 - 60796 1.82TB (60797/0/0) 3906815220
3 unassigned wm 0 0 (0/0/0) 0
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 unassigned wm 0 0 (0/0/0) 0
7 unassigned wm 0 0 (0/0/0) 0
8 boot wu 0 - 0 31.38MB (1/0/0) 64260
9 unassigned wm 0 0 (0/0/0) 0
ahora tiene la marca y el modelo, y la tabla de particiones. a partir de esto, combinado con la información obtenida en los comandos anteriores, puede armar un mapa de discos / particiones disponibles (llamados cortes en solaris) y su sistema de archivos correspondiente (si lo hay). También sabrá qué sectores no se utilizan (espacio libre).
En cuanto a qué discos están ocupados, para eso está el comando iostat
:
# iostat -zxnM 5
extended device statistics
r/s w/s Mr/s Mw/s wait actv wsvc_t asvc_t %w %b device
0.0 29.3 0.0 0.5 0.0 2.2 0.0 76.7 0 33 c8t0d0
0.0 29.3 0.0 0.5 0.0 2.2 0.0 73.9 0 32 c8t1d0
Dónde:
r/s - Reads per second
w/s - Writes per second
Mr/s - Mbytes read per second
Mw/s - Mbytes written per second
wait - Average number of transactions that are waiting for service (queue length)
actv - Average number of transactions that are actively being serviced
svc_t - Average service time, in milliseconds
%w - Percentage of time that the queue is not empty
Una vez que sepa qué vive en qué discos, puede comenzar a determinar qué aplicación está causando la E / S y, a partir de ahí, profundizar en los motivos.
Busque en Google solaris iostat brendan gregg y encontrará buena información sobre la investigación de problemas de E / S, incluidos enlaces a K9Toolkit y DTraceToolkit , que son para Solaris <10 y Solaris 10+, respectivamente, y que realmente pueden simplificar la investigación Problemas de E / S.