Как найти HD, связанные с точкой монтирования

8

Я работаю в системе Sun Solaris.

Я хотел бы знать следующее

  1. Как найти HD, связанные с точкой монтирования?
  2. Как найти все доступные HD (те, которые используются, а также не используются для точки монтирования)?
  3. Как я могу найти использование контроллеров ввода-вывода для HD, связанных с точкой монтирования? Я пытаюсь выяснить, обрабатывают ли контроллеры ввода-вывода для жестких дисков, связанных с точками монтирования, слишком много запросов, заставляя некоторые другие запросы ждать.
  4. Как найти свободное место на каждом доступном диске?
Abhinav
источник
Абхинав, это Солярис9 или Солярис10? Вы используете ZFS или MD для управления HDD? если ZFS, команда zpool должна показать вам статус и пространство, доступное под пулом. пул = коллекция дисков, управляемых под одним капотом, чтобы показать общее логическое пространство.
Nikhil Mulley

Ответы:

10

чтобы найти список точек монтирования и какие диски используются с каждого:

посмотрите /etc/vfstab- этот файл показывает, какие файловые системы настроены в системе, включая какие диски используются и в каких точках монтирования. Этот файл не используется для файловых систем 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

запустите команду zpool status- эта команда напечатает список всех zpools, настроенных и импортированных в систему, и перечислит, какие диски используются в каждом пуле, и какова конфигурация пула, зеркалирование или raidz и т. д.

# 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

запустите команду mount -p- это покажет вам список всех файловых систем, которые смонтированы на сервере, в стиле vfstab . Важность этого в том, что он может идентифицировать файловые системы, которые были смонтированы, но никогда не добавлены в / etc / vfstab, или изменения в монтировках, которые не были сделаны постоянными.

# 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

запустите команду cfgadm -al- она ​​предоставит вам список всех контроллеров в системе, а также всех устройств, подключенных к этим контроллерам.

# 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

запустите команду format- чтобы увидеть детали всех дисков, установленных в системе, которые не предоставлены cfgadm -al. В частности, вы захотите отметить подкоманды verifyи 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): 

Например, выберите диск 0в меню выше и запустите inquiry:

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

и 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

теперь у вас есть марка, модель и таблица разделов. Исходя из этого, в сочетании с информацией, полученной в предыдущих командах, вы можете составить карту доступных дисков / разделов (называемых слайсами в Solaris) и их соответствующей файловой системы (если есть). Вы также узнаете, какие ломтики не используются (свободное место).

Что касается того, какие диски заняты, вот для чего команда 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

Куда:

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

Как только вы узнаете, на каких дисках живет, вы можете начать определять, какое приложение вызывает ввод-вывод, и оттуда разобраться в причинах.

Поищите в Google информацию о Solaris iostat brendan gregg, и вы найдете полезную информацию о расследовании проблем ввода-вывода, включая ссылки на K9Toolkit и DTraceToolkit , которые предназначены для Solaris <10 и Solaris 10+, соответственно, и которые действительно могут упростить расследование. Проблемы ввода / вывода.

Тим Кеннеди
источник
0

Дает ли iostat -Enвам, какие HDD доступны и используются для вас?

df -h /path/to/mountpoint/. обычно печатает все, что вы ищете, он печатает жесткий диск / устройство, которое используется под точкой монтирования, а также дает количество свободного пространства / свободных блоков, доступных под капотом.

Никхил Мулли
источник
df в точке монтирования даст количество свободного места, доступного в точке монтирования / файловой системе, но не общий жесткий диск. Используйте такие инструменты, как fdisk, чтобы узнать общее дисковое пространство, доступное на одном диске.
Nikhil Mulley