Назад | Перейти на главную страницу

Мой Linux-сервер загружается больше часа. Предложения?

Я создаю систему CentOS 5.4, которая загружается с компактной флэш-карты с помощью устройства чтения карт, которое имитирует диск IDE. На загрузку уходит буквально около часа. Сверхмедленная часть происходит, когда Grub загружает ядро. Как только это будет сделано, остальная часть процесса загрузки займет около минуты, прежде чем появится приглашение для входа в систему. У кого-нибудь есть предложения?

Подозреваю, что это может быть связано с UDMA. Кажется, все, что связано с IDE в моем BIOS, проверяется. Производительность чтения hdparm сообщает мне 1,77 МБ / с. Ой! (Но даже при такой скорости распаковка и загрузка ядра все равно не займет часа)

 [root@server ~]# hdparm -tT /dev/hdc

/dev/hdc:
 Timing cached reads:   2444 MB in  2.00 seconds = 1222.04 MB/sec
 Timing buffered disk reads:    6 MB in  3.39 seconds =   1.77 MB/sec

Однако попытка включить DMA - непростая задача:

[root@server ~]# hdparm -d1 /dev/hdc

/dev/hdc:
 setting using_dma to 1 (on)
 HDIO_SET_DMA failed: Operation not permitted
 using_dma    =  0 (off)

Вот некоторые выходные данные команд, которые могут помочь:

Система

[root@server ~]# uname -a
Linux server.localdomain 2.6.18-164.el5xen #1 SMP Thu Sep 3 04:47:32 EDT 2009 i686 i686 i386 GNU/Linux

Информация о PCI:

[root@server ~]# lspci -v
00:00.0 Host bridge: Intel Corporation 82945G/GZ/P/PL Memory Controller Hub (rev 02)
        Subsystem: Intel Corporation 82945G/GZ/P/PL Memory Controller Hub
        Flags: bus master, fast devsel, latency 0
        Capabilities: [e0] Vendor Specific Information

00:02.0 VGA compatible controller: Intel Corporation 82945G/GZ Integrated Graphics Controller (rev 02) (prog-if 00 [VGA controller])
        Subsystem: Intel Corporation 82945G/GZ Integrated Graphics Controller
        Flags: bus master, fast devsel, latency 0, IRQ 10
        Memory at fdf00000 (32-bit, non-prefetchable) [size=512K]
        I/O ports at ff00 [size=8]
        Memory at d0000000 (32-bit, prefetchable) [size=256M]
        Memory at fdf80000 (32-bit, non-prefetchable) [size=256K]
        Capabilities: [90] Message Signalled Interrupts: 64bit- Queue=0/0 Enable-
        Capabilities: [d0] Power Management version 2

00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 01) (prog-if 00 [UHCI])
        Subsystem: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1
        Flags: bus master, medium devsel, latency 0, IRQ 16
        I/O ports at fe00 [size=32]

00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 01) (prog-if 00 [UHCI])
        Subsystem: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2
        Flags: bus master, medium devsel, latency 0, IRQ 17
        I/O ports at fd00 [size=32]

00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 01) (prog-if 00 [UHCI])
        Subsystem: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3
        Flags: bus master, medium devsel, latency 0, IRQ 18
        I/O ports at fc00 [size=32]

00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 01) (prog-if 00 [UHCI])
        Subsystem: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4
        Flags: bus master, medium devsel, latency 0, IRQ 19
        I/O ports at fb00 [size=32]

00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 01) (prog-if 20 [EHCI])
        Subsystem: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller
        Flags: bus master, medium devsel, latency 0, IRQ 16
        Memory at fdfff000 (32-bit, non-prefetchable) [size=1K]
        Capabilities: [50] Power Management version 2
        Capabilities: [58] Debug port

00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev e1) (prog-if 01 [Subtractive decode])
        Flags: bus master, fast devsel, latency 0
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=32
        I/O behind bridge: 0000d000-0000dfff
        Memory behind bridge: fde00000-fdefffff
        Prefetchable memory behind bridge: 00000000fdd00000-00000000fdd00000
        Capabilities: [50] #0d [0000]

00:1f.0 ISA bridge: Intel Corporation 82801GB/GR (ICH7 Family) LPC Interface Bridge (rev 01)
        Subsystem: Intel Corporation 82801GB/GR (ICH7 Family) LPC Interface Bridge
        Flags: bus master, medium devsel, latency 0
        Capabilities: [e0] Vendor Specific Information

00:1f.2 IDE interface: Intel Corporation 82801GB/GR/GH (ICH7 Family) SATA IDE Controller (rev 01) (prog-if 80 [Master])
        Subsystem: Intel Corporation 82801GB/GR/GH (ICH7 Family) SATA IDE Controller
        Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 17
        I/O ports at <unassigned>
        I/O ports at <unassigned>
        I/O ports at <unassigned>
        I/O ports at <unassigned>
        I/O ports at f800 [size=16]
        Capabilities: [70] Power Management version 2

00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 01)
        Subsystem: Intel Corporation 82801G (ICH7 Family) SMBus Controller
        Flags: medium devsel, IRQ 17
        I/O ports at 0500 [size=32]

01:04.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
        Subsystem: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
        Flags: bus master, medium devsel, latency 32, IRQ 18
        I/O ports at de00 [size=256]
        Memory at fdeff000 (32-bit, non-prefetchable) [size=256]
        Capabilities: [50] Power Management version 2

01:06.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
        Subsystem: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
        Flags: bus master, medium devsel, latency 32, IRQ 17
        I/O ports at dc00 [size=256]
        Memory at fdefe000 (32-bit, non-prefetchable) [size=256]
        Capabilities: [50] Power Management version 2

01:07.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
        Subsystem: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
        Flags: bus master, medium devsel, latency 32, IRQ 19
        I/O ports at da00 [size=256]
        Memory at fdefd000 (32-bit, non-prefetchable) [size=256]
        Capabilities: [50] Power Management version 2

вывод hdparm:

[root@server ~]# hdparm  /dev/hdc   

/dev/hdc:
 multcount    =  0 (off)
 IO_support   =  0 (default 16-bit)
 unmaskirq    =  0 (off)
 using_dma    =  0 (off)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    = 256 (on)
 geometry     = 8146/16/63, sectors = 8211168, start = 0

[root@server ~]# hdparm -I /dev/hdc

/dev/hdc:

ATA device, with non-removable media
        Model Number:       InnoDisk Corp. - iCF4000 4GB            
        Serial Number:      20091023AACA70000753
        Firmware Revision:  081107  
Standards:
        Supported: 5 
        Likely used: 6
Configuration:
        Logical         max     current
        cylinders       8146    8146
        heads           16      16
        sectors/track   63      63
        --
        CHS current addressable sectors:    8211168
        LBA    user addressable sectors:    8211168
        device size with M = 1024*1024:        4009 MBytes
        device size with M = 1000*1000:        4204 MBytes (4 GB)
Capabilities:
        LBA, IORDY(can be disabled)
        Standby timer values: spec'd by Vendor
        R/W multiple sector transfer: Max = 2   Current = 2
        DMA: mdma0 mdma1 mdma2 udma0 udma1 *udma2 udma3 udma4 
             Cycle time: min=120ns recommended=120ns
        PIO: pio0 pio1 pio2 pio3 pio4 
             Cycle time: no flow control=120ns  IORDY flow control=120ns
Commands/features:
        Enabled Supported:
           *    Power Management feature set
           *    WRITE_BUFFER command
           *    READ_BUFFER command
           *    NOP cmd
           *    CFA feature set
           *    Mandatory FLUSH_CACHE
HW reset results:
        CBLID- above Vih
        Device num = 0
CFA power mode 1:
        enabled and required by some commands
        Maximum current = 100ma
Checksum: correct

Редактировать: Прохождение сообщения «GRUB loading stage 2 ...» занимает около 5 минут. Я пришел к выводу, что проблема либо в загрузчике, либо в BIOS / прошивке, либо в аппаратном обеспечении. Я безуспешно поиграл со всеми соответствующими настройками BIOS и заменил свой кабель IDE на случай, если он у меня неисправен. У меня есть заказ на новую компактную флеш-карту (другой марки), но до ее доставки осталось несколько дней. Я также в настоящее время запускаю Memtest86, чтобы узнать, есть ли у меня странные проблемы с моей оперативной памятью. Как только это будет сделано, я посмотрю, доступно ли обновление прошивки для моей материнской платы.

Задача решена!

Довольно странно, отключение UDMA в BIOS устранил проблему.

Спасибо этот поток Ubuntu за ответ. И спасибо всем присутствующим за их предложения!

Я чувствую, что ваш дисковый буфер очень медленный !! остальное мне кажется нормальным ..

Timing buffered disk reads:    6 MB in  3.39 seconds =   1.77 MB/sec

следующее из моего работающего сервера с SATA

[root@rajat Rajat]# hdparm -tT /dev/sda 

/dev/sda:
 Timing cached reads:   2368 MB in  2.00 seconds = 1184.65 MB/sec
 Timing buffered disk reads:  198 MB in  3.01 seconds =  65.73 MB/sec

Попробуйте GRUB testload команда в файле ядра - это тоже медленно?

Скорее всего, в ядре нет нужного драйвера. Кроме того, убедитесь, что ваш контроллер IDE включен в BIOS.

В противном случае опубликуйте содержимое / var / log / dmesg

Спасибо