Cara menemukan HD yang terkait dengan titik pemasangan

8

Saya menjalankan sistem Sun Solaris.

Saya ingin tahu yang berikut

  1. Bagaimana cara menemukan HD yang terkait dengan mountpoint?
  2. Bagaimana menemukan semua HD yang tersedia (yang digunakan dan tidak digunakan untuk mountpoint)?
  3. Bagaimana saya bisa menemukan penggunaan pengontrol IO untuk HD yang terkait dengan mountpoint? Saya mencoba mencari tahu apakah pengendali IO untuk HD yang terkait dengan mountpoints menangani terlalu banyak permintaan yang memaksa beberapa permintaan lain menunggu.
  4. Bagaimana saya dapat menemukan ruang kosong yang tersedia di setiap disk yang tersedia?
Abhinav
sumber
Abhinav, apakah Solaris9 atau Solaris10 ?. Apakah Anda menggunakan ZFS atau MD untuk mengelola hdds? jika ZFS, perintah zpool harus menunjukkan status dan ruang yang tersedia di bawah kolam. pool = kumpulan disk yang dikelola di bawah tudung tunggal untuk menunjukkan ruang logis total.
Nikhil Mulley

Jawaban:

10

untuk menemukan daftar titik pemasangan, dan disk mana yang digunakan dari masing-masing:

lihat /etc/vfstab- file ini menunjukkan sistem file apa yang dikonfigurasi pada sistem, termasuk disk mana yang digunakan pada titik mount mana. File ini tidak digunakan untuk sistem file 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

jalankan perintah zpool status- perintah ini akan mencetak daftar semua zpool yang dikonfigurasikan dan diimpor pada sistem, dan mencantumkan disk mana yang digunakan di setiap kumpulan, dan apa konfigurasi kumpulan tersebut, sejauh yang dicerminkan, atau raidz, dll.

# 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

jalankan perintah mount -p- ini akan menunjukkan daftar gaya file sistem vfstab Anda yang sudah terpasang pada server. Pentingnya ini, apakah ia dapat mengidentifikasi sistem file yang dipasang, tetapi tidak pernah ditambahkan ke / etc / vfstab, atau perubahan pada mount yang tidak dibuat persisten.

# 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

jalankan perintah cfgadm -al- ini akan memberi Anda daftar semua pengontrol pada sistem, bersama dengan semua perangkat yang terhubung ke pengontrol tersebut.

# 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

jalankan perintah format- untuk melihat detail semua disk yang diinstal dalam sistem, yang tidak disediakan oleh cfgadm -al. Khususnya, Anda ingin mencatat sub-perintah verifydan 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): 

Misalnya, pilih disk 0di menu di atas, dan jalankan inquiry:

format> inquiry
Vendor:   ATA     
Product:  Hitachi HUA72202
Revision: A3HA

dan 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

sekarang Anda memiliki make dan model, dan tabel partisi. dari ini, dikombinasikan dengan informasi yang diperoleh pada perintah sebelumnya, Anda dapat menyusun peta disk / partisi yang tersedia (disebut irisan di solaris), dan sistem file yang sesuai (jika ada). Anda juga akan tahu irisan mana yang tidak digunakan (ruang kosong).

Mengenai disk mana yang sedang sibuk, itulah perintah iostatuntuk:

# 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

Dimana:

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

Setelah Anda tahu apa yang hidup pada disk mana, Anda dapat mulai menentukan aplikasi mana yang menyebabkan I / O, dan dari sana, gali alasannya.

Cari di Google untuk solaris iostat brendan gregg dan Anda akan menemukan beberapa informasi yang bagus tentang penyelidikan masalah I / O, termasuk tautan ke K9Toolkit dan DTraceToolkit , yang masing-masing untuk Solaris <10, dan Solaris 10+, dan yang benar-benar dapat mempermudah penyelidikan. Masalah I / O.

Tim Kennedy
sumber
0

Apakah iostat -Enmemberi Anda hdds apa yang tersedia dan digunakan untuk Anda?

df -h /path/to/mountpoint/. biasanya mencetak semua yang Anda cari, ia mencetak harddisk / perangkat yang sedang digunakan di bawah mountpoint dan juga memberikan jumlah freespace / freeblocks yang tersedia di bawah tenda.

Nikhil Mulley
sumber
df pada mountpoint akan memberikan jumlah ruang kosong yang tersedia pada mountpoint / filesystem tetapi tidak pada total harddisk. Gunakan alat seperti fdisk untuk mengetahui total ruang disk yang tersedia pada disk tunggal.
Nikhil Mulley