Cómo encontrar discos HD asociados con un punto de montaje

8

Estoy corriendo en el sistema Sun Solaris.

Me gustaria saber lo siguiente

  1. ¿Cómo encontrar los HD asociados con un punto de montaje?
  2. ¿Cómo encontrar todos los HD disponibles (aquellos que se usan y no se usan para el punto de montaje)?
  3. ¿Cómo puedo encontrar el uso de los controladores IO para los HD asociados con un punto de montaje? Estoy tratando de averiguar si los controladores IO para los HD asociados con los puntos de montaje están manejando demasiadas solicitudes obligando a otras solicitudes a esperar.
  4. ¿Cómo puedo encontrar el espacio libre disponible en cada disco disponible?
Abhinav
fuente
Abhinav, ¿es Solaris9 o Solaris10 ?. ¿Está utilizando ZFS o MD para administrar los discos duros? si es ZFS, el comando zpool debería mostrarle el estado y el espacio disponible en el grupo. pool = colección de discos administrados bajo una sola campana para mostrar un espacio lógico total.
Nikhil Mulley

Respuestas:

10

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 verifyy 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 0en 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.

Tim Kennedy
fuente
0

¿ iostat -EnLe da cuáles son los discos duros disponibles y que se utilizan para usted?

df -h /path/to/mountpoint/. generalmente imprime todo lo que está buscando, imprime el disco duro / dispositivo que se está utilizando debajo del punto de montaje y también proporciona la cantidad de espacio libre / bloque libre disponible debajo del capó.

Nikhil Mulley
fuente
df en el punto de montaje daría la cantidad de espacio libre disponible en el punto de montaje / sistema de archivos, pero no el disco duro total. Use herramientas como fdisk para averiguar el espacio total en disco disponible en un solo disco.
Nikhil Mulley