pour trouver une liste des points de montage et quels disques sont utilisés à partir de chacun:
regardez /etc/vfstab
- ce fichier montre quels systèmes de fichiers sont configurés sur le système, y compris quels disques sont utilisés à quels points de montage. Ce fichier n'est pas utilisé pour les systèmes de fichiers 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
exécutez la commande zpool status
- cette commande imprimera une liste de tous les zpools configurés et importés sur le système, et liste les disques utilisés dans chaque pool, et quelle est la configuration du pool, en ce qui concerne la mise en miroir, ou 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
exécutez la commande mount -p
- cela vous montrera une liste de style vfstab de tous les systèmes de fichiers montés sur le serveur. L'importance de cela, c'est qu'il peut identifier les systèmes de fichiers qui ont été montés, mais jamais ajoutés à / etc / vfstab, ou les changements de montages qui n'ont pas été rendus persistants.
# 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
exécutez la commande cfgadm -al
- cela vous fournira une liste de tous les contrôleurs du système, ainsi que tous les périphériques connectés à ces contrôleurs.
# 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
exécutez la commande format
- pour voir les détails de tous les disques installés dans un système, qui ne sont pas fournis par cfgadm -al
. En particulier, vous voudrez noter les sous-commandes verify
et 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):
Par exemple, sélectionnez disque 0
dans le menu ci-dessus et exécutez inquiry
:
format> inquiry
Vendor: ATA
Product: Hitachi HUA72202
Revision: A3HA
et 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
vous avez maintenant la marque et le modèle, et la table de partition. à partir de cela, combiné avec les informations glanées dans les commandes précédentes, vous pouvez créer une carte des disques / partitions disponibles (appelés tranches dans solaris), et leur système de fichiers correspondant (le cas échéant). Vous saurez également quelles tranches sont inutilisées (espace libre).
Quant aux disques occupés, c'est à cela que iostat
sert la commande :
# 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
Où:
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
Une fois que vous savez ce qui vit sur quels disques, vous pouvez commencer à déterminer quelle application est à l'origine des E / S et, à partir de là, rechercher les raisons.
Recherchez Google Solaris iostat brendan gregg et vous trouverez de bonnes informations sur les problèmes d'E / S, y compris des liens vers K9Toolkit et DTraceToolkit , qui sont pour Solaris <10 et Solaris 10+, respectivement, et qui peuvent vraiment simplifier les recherches Problèmes d'E / S.