LINUXSOFT.cz
Username: Password:     
    CZ UK PL

> Provozujeme linuxový server (7) - hardware II

V několika následujících dílech se vrátíme k hardware. Máme jej už jistě vybraný, tedy se nyní zabývejme jeho rozpoznáním, zprovozněním, testováním a diagnostikou.

18.8.2005 06:00 | Petr Houštěk | read 15607×

DISCUSSION   

V linuxovém systému existuje několik zdrojů informací o instalovaném hardware. Uvedl bych hlavní zdroje – obsah souborů v adresářích /proc/ a /sys/, nahrané moduly, logy kernelu a výstupy z různých utilit, které získávají data od jádra.

Disky

Prvním údajem o instalovných discích je jejich výrobce a model. Tyto informace se dají nalézt na více místech - např. v /proc a logu jádra. Při bootu se disky inicializují a informace se zaznamávají do logu. Nejjednodušší způsobem, jak tyto informace získat je z logu kernelu při bootu. Tento log se v mnoha distribucích ukládá do souboru /var/log/dmesg, dále je možné ho zobrazit pomocí příkazu dmesg, ten má ale omezený buffer, takže u počítačů, které jsou v chodu delší dobu může dojít k zaplnění tohoto bufferu jinými zprávami a údaje z bootu jsou zahozené. Z tohoto logu se dají vyčíst i jiné informace než o discích.

... 
VP_IDE: chipset revision 6
VP_IDE: not 100% native mode: will probe irqs later
VP_IDE: VIA vt8235 (rev 00) IDE UDMA133 controller on pci0000:00:11.1
    ide0: BM-DMA at 0xe400-0xe407, BIOS settings: hda:DMA, hdb:DMA
    ide1: BM-DMA at 0xe408-0xe40f, BIOS settings: hdc:DMA, hdd:DMA
Probing IDE interface ide0...
hda: WDC WD1200JB-00EVA0, ATA DISK drive
hdb: _NEC CD-RW NR-7800A, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Probing IDE interface ide1...
hdc: QUANTUM FIREBALLlct10 15, ATA DISK drive
hdd: DVD-RW IDE1108, ATAPI CD/DVD-ROM drive
ide1 at 0x170-0x177,0x376 on irq 15
hda: max request size: 1024KiB
hda: 234441648 sectors (120034 MB) w/8192KiB Cache, CHS=16383/255/63,
UDMA(100)
hda: cache flushes supported
 hda: hda1 hda2 hda3 hda4
hdc: max request size: 128KiB
hdc: 29336832 sectors (15020 MB) w/418KiB Cache, CHS=29104/16/63
hdc: cache flushes not supported
 hdc: hdc1 hdc2
...

Další informace jsou v adresáři /proc/ide/hd$/, např.

$ cat /proc/ide/hda/model
TOSHIBA MK4021GAS

Následující program - hdparm - se hlavně využívá pro konfiguraci parametrů disku, jeho další využití je ale také zístávání dalších hardwarových informací. Pro toto využití se volá s parametrem -i:

# hdparm -i /dev/hda

/dev/hda:

 Model=WDC WD1200JB-00EVA0, FwRev=15.05R15, SerialNo=WD-WCAEK1528410
 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }
 RawCHS=16383/16/63, TrkSize=57600, SectSize=600, ECCbytes=74
 BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=16
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=234441648
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes: pio0 pio1 pio2 pio3 pio4
 DMA modes: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 *udma5
 AdvancedPM=no WriteCache=enabled
 Drive Supports : Reserved : ATA-1 ATA-2 ATA-3 ATA-4 ATA-5 ATA-6

Informace o geometrii disku lze nalézt na /proc/ide/hd$/geometry, při použití programu fdisk ale můžeme zjistit i další informace, jako např. rozvržení diskových oddílů:

# fdisk -l

Disk /dev/hda: 16 heads, 63 sectors, 77520 cylinders
Units = cylinders of 1008 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1   *         1      7746   3903763+   7  HPFS/NTFS
Partition 1 does not end on cylinder boundary:
     phys=(485, 254, 63) should be (485, 15, 63)
/dev/hda2          7746     15492   3903795   83  Linux
Partition 2 does not end on cylinder boundary:
     phys=(971, 254, 63) should be (971, 15, 63)
/dev/hda3         15492     16655    586372+  82  Linux swap
Partition 3 does not end on cylinder boundary:
     phys=(1023, 254, 63) should be (1023, 15, 63)
/dev/hda4         16655     77520  30676117+  83  Linux
Partition 4 does not end on cylinder boundary:
     phys=(1023, 254, 63) should be (1023, 15, 63)

K dispozici máme opět i hdparm, tentokrát s parametrem -g. Pro SCSI řadiče a zařízení má hdparm jen omezené možnosti (primárně je určen pro práci s ATA), většinou ale pro zjištění potřebných informací stačí pohled do pseudosouboru /proc/scsi/scsi. Nejrůznější možnosti ovládáni a konfigurace SCSI zařízení pak umožňuje balík sg3_utils.

$ cat /proc/scsi/scsi

Attached devices:
Host: scsi0 Channel: 00 Id: 03 Lun: 00
  Vendor: BNCHMARK Model: DLT1             Rev: 5E40
  Type:   Sequential-Access                ANSI SCSI revision: 02
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: IBM      Model: SERVERAID        Rev: 1.00
  Type:   Direct-Access                    ANSI SCSI revision: 02
Host: scsi1 Channel: 00 Id: 01 Lun: 00
  Vendor: IBM      Model: SERVERAID        Rev: 1.00
  Type:   Direct-Access                    ANSI SCSI revision: 02
Host: scsi1 Channel: 00 Id: 02 Lun: 00
  Vendor: IBM      Model: SERVERAID        Rev: 1.00
  Type:   Direct-Access                    ANSI SCSI revision: 02
Host: scsi1 Channel: 00 Id: 15 Lun: 00
  Vendor: IBM      Model: SERVERAID        Rev: 1.00
  Type:   Processor                        ANSI SCSI revision: 02
Host: scsi1 Channel: 01 Id: 08 Lun: 00
  Vendor: IBM      Model: 02R0980a S320  1 Rev: 1
  Type:   Processor                        ANSI SCSI revision: 02

Mnoho se dá zjistit i z informací o řadiči - rychlost, přístupové časy, ... Tyto informace jsou v souboru /proc/ide/_značka_řadiče_ (případně /proc/scsi/_značka_řadiče/*).

$ cat /proc/ide/via

----------VIA BusMastering IDE Configuration----------------
Driver Version:                     3.38
South Bridge:                       VIA vt8235
Revision:                           ISA 0x0 IDE 0x6
Highest DMA rate:                   UDMA133 
BM-DMA base:                        0xe400
PCI clock:                          33.3MHz
Master Read  Cycle IRDY:            0ws
Master Write Cycle IRDY:            0ws 
BM IDE Status Register Read Retry:  yes
Max DRDY Pulse Width:               No limit
-----------------------Primary IDE-------Secondary IDE------
Read DMA FIFO flush:          yes                 yes
End Sector FIFO flush:         no                  no
Prefetch Buffer:               no                  no
Post Write Buffer:             no                  no
Enabled:                      yes                 yes
Simplex only:                  no                  no
Cable Type:                   80w                 80w
-------------------drive0----drive1----drive2----drive3-----
Transfer Mode:       UDMA      UDMA      UDMA      UDMA
Address Setup:      120ns     120ns     120ns     120ns
Cmd Active:          90ns      90ns      90ns      90ns
Cmd Recovery:        30ns      30ns      30ns      30ns
Data Active:         90ns      90ns      90ns      90ns
Data Recovery:       30ns      30ns      30ns      30ns
Cycle Time:          22ns      60ns      30ns      30ns
Transfer Rate:   88.8MB/s  33.3MB/s  66.6MB/s  66.6MB/s

Dalším nezbytným údajem o disku je informace o jeho obsazení a volném místě. K tomuto účelu slouží utilita df. Užití je přímočaré:

$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/hda4              29G   17G   12G  57% / 
/dev/hda1             3.7G  3.4G  366M  91% /win
     
$ df -m
Filesystem           1M-blocks      Used Available Use% Mounted on
/dev/hda4                29942     16988     12955  57% /
/dev/hda1                 3812      3447       366  91% /win

Nakonec bych zde pro referenci uvedl smartctl. Technologie S.M.A.R.T. se používá hlavně pro monitorování disků a budeme se tímto tématem zabývat v dalších dílech.

Paměť

Pro zjištění údajů o paměti můžeme použít utilitu free nebo nalézt hledané informace v souboru /proc/meminfo. Použití free je podobné jako u programu df - paramtry určují jednotky výpisu:

$ free -m
             total       used       free     shared    buffers     cached
Mem:           218        215          2          0         16         61
-/+ buffers/cache:        137         80
Swap:          572          0        572

Zajímavý je druhý řádek, ten říká, kolik paměti a je využito procesy a kernelem, avšak nejedná se o buffery a keš, což jsou zjednodušene řečeno vycpávky, kterými se využívá volná paměť a které lze v případě potřeby rychle uvolnit.

Pro zjištění využití paměti jednotlivými programy je pravděpodobně nejjednodušší program top.

Procesor

K identifikaci procesoru, jeho taktovací frekvence a dalších vlastností slouží soubor /proc/cpuinfo, kde nalezneme téměř veškeré hledané informace. Další údaje, jako je např. teplota procesoru lze získat při funkčním acpi ze souborů v adresáři /proc/acpi/cpu/. Ukázkový výstup z /proc/cpuinfo může vypadat takto:

cpu             : TI UltraSparc IIi (Sabre)
fpu             : UltraSparc IIi integrated FPU
promlib         : Version 3 Revision 15
prom            : 3.15.2
type            : sun4u
ncpus probed    : 1
ncpus active    : 1
Cpu0Bogo        : 665.19
Cpu0ClkTck      : 0000000013d92d40
MMU Type        : Spitfire

A ještě jedna ukázka z o něco typičtějšího linuxového serveru

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 15
model           : 2
model name      : Intel(R) Xeon(TM) CPU 2.80GHz
stepping        : 9
cpu MHz         : 2800.171
cache size      : 512 KB
physical id     : 0
siblings        : 2
runqueue        : 0
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
  mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
bogomips        : 5583.66

PCI příslušenství

Pro identifikaci nainstalovaných PCI příslušenství lze použít příkaz lspci. Jeho výstup závisí na parametrech, nejzákladnější bude -v pro podrobnější výstup. K získání více informací je ale nutné vlastnit privilegia root uživatele.

$ lspci

0000:00:00.0 Host bridge: VIA Technologies, Inc. VT8366/A/7 
[Apollo KT266/A/333]
0000:00:01.0 PCI bridge: VIA Technologies, Inc. VT8366/A/7 
[Apollo KT266/A/333 AGP]
0000:00:0a.0 Multimedia audio controller: Ensoniq ES1371 
[AudioPCI-97] (rev 06)
0000:00:0b.0 Multimedia video controller: Brooktree Corporation Bt878 
Video Capture
0000:00:0b.1 Multimedia controller: Brooktree Corporation Bt878 
Audio Capture (rev 11)
0000:00:0d.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M 
[Tornado] (rev 78)
0000:00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 
Controller
0000:00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 
Controller
0000:00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 
Controller
0000:00:10.3 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 82)
0000:00:11.0 ISA bridge: VIA Technologies, Inc. VT8235 ISA Bridge
0000:00:11.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686
/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06)   
0000:00:11.5 Multimedia audio controller: VIA Technologies, Inc. 
VT8233/A/8235/8237 AC97 Audio Controller (rev 50)   
0000:01:00.0 VGA compatible controller: nVidia Corporation NV18 
[GeForce4 MX 4000 AGP 8x]

Obdobné informace jsou k dispozici v souboru /proc/pci.

USB

Pomocí lspci zjistíme parametry USB slotů na základní desce, k identifikaci připojených zařízení existuje příkaz lsusb, případně další informace jsou (v neupravené podobě) v adresáři /proc/bus/usb/

$ lsusb

Bus 003 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000  
Bus 001 Device 003: ID 046d:c03e Logitech, Inc.
Bus 001 Device 001: ID 0000:0000  

Všeobecný přehled hardware

Dalším způsobem, jak získat informace o hardware je dekódovat údaje uložené v BIOSu. Tento program netestuje systém a nehledá hardware, pouze vypisuje informace o hardware, který je BIOS zná. Spolu s utilitou dmidecode je v balíku i biosdecode, která vypisuje nastavení BIOSu. Tyto nástroje dokáží zobrazit informace jako typ základní desky, přesné označení typu serveru, obsazení jednotlivých PCI slotů, paměťových modulů a mnoho dalšího. Pro ilustraci si prohlédněte počátek výpisu pořízeného na starším serveru IBM.

# dmidecode

SMBIOS 2.3 present.
58 structures occupying 3225 bytes.
Table at 0x000FA45B.
Handle 0x0000
        DMI type 0, 19 bytes.
        BIOS Information
                Vendor: IBM
                Version: -[JJE118AUS-1.04]-
                Release Date: 08/28/2002
                Address: 0xF1930
                Runtime Size: 59088 bytes
                ROM Size: 2048 kB
                Characteristics:
                        PCI is supported
                        BIOS is upgradeable
                        BIOS shadowing is allowed
                        Boot from CD is supported
                        Selectable boot is supported
                        3.5"/720 KB floppy services are supported (int 13h)
                        Print screen service is supported (int 5h)
                        8042 keyboard services are supported (int 9h)
                        Serial services are supported (int 14h)
                        Printer services are supported (int 17h)
                        CGA/mono video services are supported (int 10h)
                        ACPI is supported
                        USB legacy is supported
                        I2O boot is supported
Handle 0x0001
        DMI type 1, 25 bytes.
        System Information
                Manufacturer: IBM
                Product Name: IBM eserver xSeries 220 -[864652X]-
                Version: Not Specified
                Serial Number: 555563R
                UUID: 2E7A23C8-38B4-4A12-82AC-01E0E06830D6
                Wake-up Type: Unknown
...

Nakonec si uvedeme utilitu, která kombinuje většinu dříve uvedených způsobů. Jedná se o nástroj, který vytvoří seznam téměř veškerého instalovaného hardware v jednotné formě. Nejběžnějším využitím pak může být vytváření seznamu hardware pro více počítačů a jejich následné ukládání do databáze. Použití je jednoduché:

# lshw
# lshw -X
# lshw -html
# lshw -xml

Tato utilita se dá stáhnout např. na sourceforge.

Nyní jsme schopni identifikovat většinu instalovaného hardware. V příštích dílech se pak zaměříme na jeho zprovoznění, testování a monitorování.

 

DISCUSSION

For this item is no comments.

Add comment is possible for logged registered users.
> Search Software
> Search Google
1. Pacman linux
Download: 2561x
2. FreeBSD
Download: 6619x
3. PCLinuxOS-2010
Download: 6038x
4. alcolix
Download: 8300x
5. Onebase Linux
Download: 7078x
6. Novell Linux Desktop
Download: 0x
7. KateOS
Download: 3763x

1. VFU File Manager
Download: 1354x
2. LeftHand Mała Księgowość
Download: 4925x
3. MISU pyFotoResize
Download: 680x
4. Lefthand CRM
Download: 1617x
5. MetadataExtractor
Download: 0x
6. RCP100
Download: 1099x
7. Predaj softveru
Download: 0x
8. MSH Free Autoresponder
Download: 0x
9. Guitar Scale Expert
Download: 1167x
10. Jinja24Doc
Download: 0x
11. Čistič
Download: 1236x
12. BASH History Suggest Box
Download: 5216x
©Pavel Kysilka - 2003-2017 | mailatlinuxsoft.cz | Design: www.megadesign.cz