# bootloader impotenti

## zoto

Dopo varie peripezie attraverso knoppix riesco ad installare gentoo sul pc, ma al riavvio, con bootloader lilo, mi aspetta una "bella" sorpresa: kernel panic.

Praticamente il kernel di knoppix (prima di lui anche livecd) riconosce i dischi del mio laptop come sda*, mentre il kernel gentoo che ho installato (2.6.22-r5) riconosce i dischi come hda*

Questi sono fstab e lilo.conf precedenti:

lilo.conf

```

#

# Start LILO global section

#

# MBR to install LILO to:

boot = /dev/sda

prompt

delay = 70

default = gentoo

lba32

# VESA console with size 1024x768x16:

vga = 791

menu-scheme=Wb

#

# End LILO global section

#

#

# Linux bootable partition config begins

#

image = /boot/kernel-2.6.22-r5

        root = /dev/sda6

        #root = /devices/discs/disc0/part3

        label = gentoo

        read-only # read-only for checking

#

# Linux bootable partition config ends

#

#

# DOS bootable partition config begins

#

other = /dev/sda2

        #other = /devices/discs/disc0/part1

        label = windows

        table = /dev/sda

#

# DOS bootable partition config ends

#

```

fstab

```

/dev/sda3       /boot           ext3    defaults,noauto,noatime 1 2

/dev/sda5       none            swap    sw              0 0

/dev/sda6       /               ext3    noatime         0 1

/dev/sda7       /home           ext3    noatime         0 1

/dev/cdrom      /mnt/cdrom      auto    noauto,user     0 0

```

per quanto riguarda windows non ci sono problemi, penso allora di cambiare fstab e lilo.conf mettendo al posto di sda hda, ma nel momento in cui faccio partire lilo mi ritrovo un bell'errore in quanto hda6 (root per gentoo) non è corretto.

Mi dicono di passare a grub per evitare il problema sd* vs hd*

allora, lasciando fstab aggiornato

```

/dev/hda3       /boot           ext3    defaults,noauto,noatime 1 2

/dev/hda5       none            swap    sw              0 0 

/dev/hda6       /               ext3    noatime         0 1

/dev/hda7       /home           ext3    noatime         0 1

/dev/cdrom      /mnt/cdrom      auto    noauto,user     0 0 

```

scrivo questo grub.conf

```

default 0

timeout 70

splashimage=(hd0,2)/boot/glub/splash.xpm.gz

title=gentoo

root (hd0,2)

kernel /boot/kernel-2.6.22-r5 root=/dev/hda6 ro

title=windows

rootnoverify (hd0,1)

makeactive

chainloader +1

```

Risultato: grub all'avvia non mi fa vedere alcuna schermata, ma automaticamente carica windows...

ora sono alla frutta. Non ho più alcuna idea.

Ultime informazioni sulle partizioni:

hda1 usata dalla toshiba

hda2 win

hda3 boot

hda4

- hda5 swap

- hda6 /

- hda7 home

----------

## zoto

aggiungo che il disco è sata, quindi penso dovrebbe essere riconosciuto come sd*

per ora tuttavia è importante che gentoo almeno parta!

----------

## MeMyselfAndI

Se il disco e' riconosciuto come sd* allora perche' usi hda nel tuo file di configurazione di grub ?

----------

## zoto

Il fatto è che quando riavvio il kernel ricosce il disco come hda e non più come sda...

del resto mi è venuto anche il sospetto che il problema sia del kernel: con lilo infatti il kernel veniva caricato, ma poi non trovava più i dischi e andava in panic.

----------

## MeMyselfAndI

puoi postare un 

```
ls /dev/sd*
```

 e un 

```
ls /dev/hd*
```

 ?

----------

## Tigerwalk

ciao, anch'io ho avuto un problema simile con un laptop toshiba. l'ho risolto dando una label alla mia / con tune2fs e compilando con genkernel.

Anche a me i dischi con cfdisk vengono visti come hd e non sd, ma nel mio /etc/fstab

```
/dev/sda2               /boot           ext2    defaults,noatime          1 2

LABEL=lacie             /               ext3    noatime                 0 1

/dev/sda3               swap            swap    defaults,sw             0 0

/dev/cdrom              /mnt/cdrom      auto    noauto,user,ro          0 0

LABEL=LACIE             /media          vfat    quiet,umask=0           0 1

proc                    /proc           proc    nodev,nosuid,noexec     0 0

shm                     /dev/shm        tmpfs   nodev,nosuid,noexec       0 0
```

Il mio grub.conf

```
title Gentoo Linux 2.6.22-r5

   root (hd1,1)

   kernel /boot/kernel-genkernel-x86-2.6.22-gentoo-r5 root=/dev/ram0 ramdisk=8192 real_root=LABEL=lacie quiet init=/linuxrc udev doscsi 

   initrd /boot/initramfs-genkernel-x86-2.6.22-gentoo-r5
```

root (hd1,1), ho la / nella seconda partizione del secondo hd (hd esterno)

----------

## Manwhe

Ciao

Domanda "probabilmente" stupida, quando hai compilato il kernel hai settato le libata?

Ciao

----------

## zoto

 *MeMyselfAndI wrote:*   

> puoi postare un 
> 
> ```
> ls /dev/sd*
> ```
> ...

 

ecco

```

(chroot) Knoppix / # ls dev/sd*

dev/sda   dev/sda2  dev/sda4  dev/sda6

dev/sda1  dev/sda3  dev/sda5  dev/sda7

```

```

(chroot) Knoppix / # ls dev/hd*

dev/hdc

```

----------

## zoto

inoltre nel frattempo ho provato con questo conf di grub

```

default 0

timeout 7

color light-gray/blue yellow/blue

#splashimage=(hd0,2)/boot/glub/splash.xpm.gz

title gentoo

root (hd0,2)

kernel /kernel-2.6.22-r5 root=/dev/sda6 ro vga=791

title windows

rootnoverify (hd0,1)

makeactive

chainloader +1

boot

```

ma con pessimi risultati per linux:

```

root (hd0, 2)

filesistem type is ext2fs partitio type 0x83

kernel /kernel-2.6.22-r5 root=/dev/sda6 ro vga=791

error 22: no such partition

```

mentre per win tutto ok

----------

## MeMyselfAndI

 *zoto wrote:*   

> inoltre nel frattempo ho provato con questo conf di grub
> 
> ```
> 
> default 0
> ...

 

Mi pare sbagliato: il kernel sta in "/boot" di solito non in "/" prova a correggere la riga

----------

## zoto

fatto, ma se non ricordo male, avendo fatto la partizione di boot separata, non cambia nulla

----------

## zoto

con questa configurazione

```

default 0

timeout 7

color light-gray/blue yellow/blue

title gentoo

root (hd0,2)

kernel /boot/kernel-2.6.22-r5 root=/dev/sda6 ro vga=791

title windows

rootnoverify (hd0,1)

makeactive

chainloader +1

boot

```

nel frattempo mi è stato consigliato di grub/device.map da (hd0)   /dev/sda a (hd0)   /dev/hda, ricercando il kernel un hd*, ma il risultato è stato che grub non carica nulla.

Viene riportato il seguente errore:

/dev/sda does not have any corresponding BIOS drive.

Sono ancora in alto mare.

----------

## zoto

 *Manwhe wrote:*   

> Ciao
> 
> Domanda "probabilmente" stupida, quando hai compilato il kernel hai settato le libata?
> 
> 

 

ho attivato seria ATA driver e i supporti per SATA

```

#

# Device Drivers

#

#

# Generic Driver Options

#

CONFIG_STANDALONE=y

CONFIG_PREVENT_FIRMWARE_BUILD=y

CONFIG_FW_LOADER=y

# CONFIG_DEBUG_DRIVER is not set

# CONFIG_DEBUG_DEVRES is not set

# CONFIG_SYS_HYPERVISOR is not set

#

# Connector - unified userspace <-> kernelspace linker

#

# CONFIG_CONNECTOR is not set

# CONFIG_MTD is not set

#

# Parallel port support

#

# CONFIG_PARPORT is not set

#

# Plug and Play support

#

CONFIG_PNP=y

# CONFIG_PNP_DEBUG is not set

#

# Protocols

#

CONFIG_PNPACPI=y

#

# Block devices

#

CONFIG_BLK_DEV_FD=y

# CONFIG_BLK_CPQ_DA is not set

# CONFIG_BLK_CPQ_CISS_DA is not set

# CONFIG_BLK_DEV_DAC960 is not set

# CONFIG_BLK_DEV_UMEM is not set

# CONFIG_BLK_DEV_COW_COMMON is not set

CONFIG_BLK_DEV_LOOP=y

# CONFIG_BLK_DEV_CRYPTOLOOP is not set

# CONFIG_BLK_DEV_NBD is not set

# CONFIG_BLK_DEV_SX8 is not set

# CONFIG_BLK_DEV_UB is not set

CONFIG_BLK_DEV_RAM=y

CONFIG_BLK_DEV_RAM_COUNT=16

CONFIG_BLK_DEV_RAM_SIZE=4096

CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024

# CONFIG_CDROM_PKTCDVD is not set

# CONFIG_ATA_OVER_ETH is not set

#

# Misc devices

#

# CONFIG_IBM_ASM is not set

# CONFIG_PHANTOM is not set

# CONFIG_SGI_IOC4 is not set

# CONFIG_TIFM_CORE is not set

# CONFIG_MSI_LAPTOP is not set

# CONFIG_SONY_LAPTOP is not set

# CONFIG_THINKPAD_ACPI is not set

CONFIG_IDE=y

CONFIG_BLK_DEV_IDE=y

#

# Please see Documentation/ide.txt for help/info on IDE drives

#

# CONFIG_BLK_DEV_IDE_SATA is not set

# CONFIG_BLK_DEV_HD_IDE is not set

CONFIG_BLK_DEV_IDEDISK=y

CONFIG_IDEDISK_MULTI_MODE=y

# CONFIG_BLK_DEV_IDECS is not set

# CONFIG_BLK_DEV_DELKIN is not set

CONFIG_BLK_DEV_IDECD=y

# CONFIG_BLK_DEV_IDETAPE is not set

# CONFIG_BLK_DEV_IDEFLOPPY is not set

# CONFIG_BLK_DEV_IDESCSI is not set

CONFIG_BLK_DEV_IDEACPI=y

# CONFIG_IDE_TASK_IOCTL is not set

CONFIG_IDE_PROC_FS=y

#

# IDE chipset support/bugfixes

#

CONFIG_IDE_GENERIC=y

# CONFIG_BLK_DEV_CMD640 is not set

# CONFIG_BLK_DEV_IDEPNP is not set

CONFIG_BLK_DEV_IDEPCI=y

# CONFIG_IDEPCI_SHARE_IRQ is not set

CONFIG_IDEPCI_PCIBUS_ORDER=y

# CONFIG_BLK_DEV_OFFBOARD is not set

# CONFIG_BLK_DEV_GENERIC is not set

# CONFIG_BLK_DEV_OPTI621 is not set

# CONFIG_BLK_DEV_RZ1000 is not set

CONFIG_BLK_DEV_IDEDMA_PCI=y

# CONFIG_BLK_DEV_IDEDMA_FORCED is not set

# CONFIG_IDEDMA_ONLYDISK is not set

# CONFIG_BLK_DEV_AEC62XX is not set

# CONFIG_BLK_DEV_ALI15X3 is not set

CONFIG_BLK_DEV_AMD74XX=y

# CONFIG_BLK_DEV_ATIIXP is not set

# CONFIG_BLK_DEV_CMD64X is not set

# CONFIG_BLK_DEV_TRIFLEX is not set

# CONFIG_BLK_DEV_CY82C693 is not set

# CONFIG_BLK_DEV_CS5520 is not set

# CONFIG_BLK_DEV_CS5530 is not set

# CONFIG_BLK_DEV_CS5535 is not set

# CONFIG_BLK_DEV_HPT34X is not set

# CONFIG_BLK_DEV_HPT366 is not set

# CONFIG_BLK_DEV_JMICRON is not set

# CONFIG_BLK_DEV_SC1200 is not set

CONFIG_BLK_DEV_PIIX=y

# CONFIG_BLK_DEV_IT8213 is not set

# CONFIG_BLK_DEV_IT821X is not set

# CONFIG_BLK_DEV_NS87415 is not set

# CONFIG_BLK_DEV_PDC202XX_OLD is not set

# CONFIG_BLK_DEV_PDC202XX_NEW is not set

# CONFIG_BLK_DEV_SVWKS is not set

# CONFIG_BLK_DEV_SIIMAGE is not set

# CONFIG_BLK_DEV_SIS5513 is not set

# CONFIG_BLK_DEV_SLC90E66 is not set

# CONFIG_BLK_DEV_TRM290 is not set

# CONFIG_BLK_DEV_VIA82CXXX is not set

# CONFIG_BLK_DEV_TC86C001 is not set

# CONFIG_IDE_ARM is not set

CONFIG_BLK_DEV_IDEDMA=y

# CONFIG_IDEDMA_IVB is not set

# CONFIG_BLK_DEV_HD is not set

#

# SCSI device support

#

# CONFIG_RAID_ATTRS is not set

CONFIG_SCSI=y

CONFIG_SCSI_TGT=y

# CONFIG_SCSI_NETLINK is not set

# CONFIG_SCSI_PROC_FS is not set

#

# SCSI support type (disk, tape, CD-ROM)

#

CONFIG_BLK_DEV_SD=y

# CONFIG_CHR_DEV_ST is not set

# CONFIG_CHR_DEV_OSST is not set

# CONFIG_BLK_DEV_SR is not set

# CONFIG_CHR_DEV_SG is not set

# CONFIG_CHR_DEV_SCH is not set

#

# Some SCSI devices (e.g. CD jukebox) support multiple LU

Ns

#

CONFIG_SCSI_MULTI_LUN=y

CONFIG_SCSI_CONSTANTS=y

# CONFIG_SCSI_LOGGING is not set

# CONFIG_SCSI_SCAN_ASYNC is not set

CONFIG_SCSI_WAIT_SCAN=m

#

# SCSI Transports

#

CONFIG_SCSI_SPI_ATTRS=y

# CONFIG_SCSI_FC_ATTRS is not set

# CONFIG_SCSI_ISCSI_ATTRS is not set

# CONFIG_SCSI_SAS_ATTRS is not set

# CONFIG_SCSI_SAS_LIBSAS is not set

#

# SCSI low-level drivers

#

# CONFIG_ISCSI_TCP is not set

# CONFIG_BLK_DEV_3W_XXXX_RAID is not set

# CONFIG_SCSI_3W_9XXX is not set

# CONFIG_SCSI_ACARD is not set

# CONFIG_SCSI_AACRAID is not set

# CONFIG_SCSI_AIC7XXX is not set

# CONFIG_SCSI_AIC7XXX_OLD is not set

# CONFIG_SCSI_AIC79XX is not set

# CONFIG_SCSI_AIC94XX is not set

# CONFIG_SCSI_DPT_I2O is not set

# CONFIG_SCSI_ADVANSYS is not set

# CONFIG_SCSI_ARCMSR is not set

# CONFIG_MEGARAID_NEWGEN is not set

# CONFIG_MEGARAID_LEGACY is not set

# CONFIG_MEGARAID_SAS is not set

# CONFIG_SCSI_HPTIOP is not set

# CONFIG_SCSI_BUSLOGIC is not set

# CONFIG_SCSI_DMX3191D is not set

# CONFIG_SCSI_EATA is not set

# CONFIG_SCSI_FUTURE_DOMAIN is not set

# CONFIG_SCSI_GDTH is not set

# CONFIG_SCSI_IPS is not set

# CONFIG_SCSI_INITIO is not set

# CONFIG_SCSI_INIA100 is not set

# CONFIG_SCSI_STEX is not set

# CONFIG_SCSI_SYM53C8XX_2 is not set

# CONFIG_SCSI_IPR is not set

# CONFIG_SCSI_QLOGIC_1280 is not set

# CONFIG_SCSI_QLA_FC is not set

# CONFIG_SCSI_QLA_ISCSI is not set

# CONFIG_SCSI_LPFC is not set

# CONFIG_SCSI_DC395x is not set

# CONFIG_SCSI_DC390T is not set

# CONFIG_SCSI_NSP32 is not set

# CONFIG_SCSI_DEBUG is not set

# CONFIG_SCSI_SRP is not set

```

direi che qui ci sia tutto

----------

## zoto

[per la cronaca]

tornando al vecchio fstab (con sda* al posto di hda*) grub carica il kernel il quale a sua volta continua ad andare in panic

----------

## Manwhe

Ciao

Magari sono sguercio ma non vedo ne l'attivazione dei driver stata ne le libata  :Smile: 

----------

## zoto

la stanchezza. sorry!

comunque stamattina mi sono detto: perche' non provare con il kernel precedente? Fatto. Ho messo su il kernel 2.6.21-r4, stesso config e tutto ha funzionato.

A questo punto mi chiedo se non sia stata messa qualche opzione nuova che bisogna abilitare e non me ne sia accorto.

----------

## Tigerwalk

 *zoto wrote:*   

> la stanchezza. sorry!
> 
> comunque stamattina mi sono detto: perche' non provare con il kernel precedente? Fatto. Ho messo su il kernel 2.6.21-r4, stesso config e tutto ha funzionato.
> 
> A questo punto mi chiedo se non sia stata messa qualche opzione nuova che bisogna abilitare e non me ne sia accorto.

 

potresti fare un diff tra i .config dei due kernel.

----------

## noice

 *Tigerwalk wrote:*   

> 
> 
> potresti fare un diff tra i .config dei due kernel.

 

si, secondo me ti conviene fare cosi':

copiati i due .config nella tua home e rinominali come kern1 e kern2 poi:

```
$cd /home/zoto (suppongo)

$cat kern1 |grep -vh '^[[:space:]]*\(#\|$\)' "$@" > kernel1

$cat kern2 |grep -vh '^[[:space:]]*\(#\|$\)' "$@" > kernel2

$diff -u kernel1 kernel2 > differenze

$cat differenze

```

 :Wink: 

----------

## Kernel78

 *noice wrote:*   

>  *Tigerwalk wrote:*   
> 
> potresti fare un diff tra i .config dei due kernel. 
> 
> si, secondo me ti conviene fare cosi':
> ...

 

Perchè usi cat e grep ? non puoi usare solo grep ?

P.S. io continuo a preferire il comando che ho in firma io  :Wink: 

----------

## noice

 *Kernel78 wrote:*   

> 
> 
> Perchè usi cat e grep ? non puoi usare solo grep ?

 

non sapevo bastasse solo grep  :Rolling Eyes:  grazie per l'info

 *Quote:*   

> 
> 
> P.S. io continuo a preferire il comando che ho in firma io 

 

si credo che sia piu' completo  :Very Happy: 

----------

## Tigerwalk

@zoto

invece di diff da terminale, puoi usare kdiff3, una comoda interfaccia grafica!

----------

## wildancer

Comunque si, i nuovi kernel hanno i driver sata nuovi... c'ho perso un po di tempo anche io per capire...

```

.config - Linux Kernel v2.6.22-suspend2-r2 Configuration

 ──────────────────────────────────────────────────────────────────────────────

  ┌──────────────────────────── Device Drivers ─────────────────────────────┐

  │  Arrow keys navigate the menu.  <Enter> selects submenus --->.          │  

  │  Highlighted letters are hotkeys.  Pressing <Y> includes, <N> excludes, │  

  │  <M> modularizes features.  Press <Esc><Esc> to exit, <?> for Help, </> │  

  │  for Search.  Legend: [*] built-in  [ ] excluded  <M> module  < >       │  

  │ ┌────^(-)─────────────────────────────────────────────────────────────┐ │  

  │ │        Connector - unified userspace <-> kernelspace linker  --->   │ │  

  │ │    <M> Memory Technology Device (MTD) support  --->                 │ │  

  │ │        Parallel port support  --->                                  │ │  

  │ │        Plug and Play support  --->                                  │ │  

  │ │        Block devices  --->                                          │ │  

  │ │        Misc devices  --->                                           │ │  

  │ │    <*> ATA/ATAPI/MFM/RLL support  --->                              │ │  

  │ │        SCSI device support  --->                                    │ │  

  │ │    <*> Serial ATA (prod) and Parallel ATA (experimental) drivers  --│ │  <------------- Eccoli!

  │ │        Multi-device support (RAID and LVM)  --->                    │ │  

  │ └────v(+)─────────────────────────────────────────────────────────────┘ │  

  ├─────────────────────────────────────────────────────────────────────────┤  

  │                    <Select>    < Exit >    < Help >                     │  

  └─────────────────────────────────────────────────────────────────────────┘  

    

```

Okkio mi è sembrato di capire che siano in conflitto con quelli vecchi......

[OT]

@ noice: IMHO grep, sed e awk... Imparare ad usarli come dio comanda ha un po'  l'effetto delle regexp di perl.... Fanno anche il caffè   :Wink: 

[/OT]

----------

