# Emon ja prossun vaihto gentoo koneeseen?

## mgr_

Eli miten Gentoo reagoi ja mitä kaikkea pitää tehdä jos vaihdan vanhat roinat koneesta pois ja uutta rautaa tilalle?

Suunnitelmissa jouluksi päivittää konetta radikaalisti eli vaihdettaisiin:

AMD Athlon XP 3500+ prossu -> Intel Core 2 Duo E6600

Asus M2N-E emolevy -> DFI Infinity 975X/G (tai joku asuksen vastaava)

Minun täytyisi olla varma, että Gentoo lähtee vielä tämän vaihdon jälkeen käyntiin. Toki pitää ilmeisesti make.conffista pistää CHOST ja CFLAGS kohdalleen ja pistää emerge -uvDaN world tai jotain vastaavaa vaihdon jälkeen? 

Mutta kuinka siis käytännössä onko kellään kokemusta tällaisista vaihdoista, että tarvitseeko tehdä mitään erikoista ennen ja jälkeen kun vaihto-operaation käynnistää?

----------

## teidon

Kyllä se käyntiin lähtee. Kannattaa tosin ennen vaihtoa kerneliin lisätä uuden emon kiintolevyohjaimen ajuri ettei homma jää siitä kiinni.

Huomioi se että nykyinen prossusi on 32bit, ja siten järjestelmäsi (Gentoo) on 32bit. Uus prossusi on 64bit. 32bit järjestelmää ei voi muuttaa 64bittises. Huomioi tuo kun säädät make.confia. Eli Core 2 prossuille on sekä 32bit että 64bit asetukset. Sinä haluat 32bit asetukset. Uudistuksen jälkeen vedä emerge -e system && emerge -e world niin ei pitäs ongelmia tulla.

Jos 64bit järjestelmän haluat, joudut asentamaan Gentoon uusiks.

----------

## mgr_

 *teidon wrote:*   

> Kyllä se käyntiin lähtee. Kannattaa tosin ennen vaihtoa kerneliin lisätä uuden emon kiintolevyohjaimen ajuri ettei homma jää siitä kiinni.
> 
> Huomioi se että nykyinen prossusi on 32bit, ja siten järjestelmäsi (Gentoo) on 32bit. Uus prossusi on 64bit. 32bit järjestelmää ei voi muuttaa 64bittises. Huomioi tuo kun säädät make.confia. Eli Core 2 prossuille on sekä 32bit että 64bit asetukset. Sinä haluat 32bit asetukset. Uudistuksen jälkeen vedä emerge -e system && emerge -e world niin ei pitäs ongelmia tulla.
> 
> Jos 64bit järjestelmän haluat, joudut asentamaan Gentoon uusiks.

 

ai sori tuosta jätin sitten mainitsematta että prossu on 64bit 3500+ eli tuossa ei ole varmaan sitten tuota ongelmaa sillä järjestelmä on nyt jo 64bit. no mutta jos homma on tosiaan noin yksinkertainen niin ehkä jopa minä onnistun tuossa  :Smile: 

----------

## Make

Jos olet käyttänyt gcc:lle -march=athlon-xp, niin systeemisi ei todennäköisesti toimi prossun vaihdon jälkeen. Muuttaisin tilalle -mtune=i686 ennen prossun vaihtoa ja ajaisin emerge -e world.

   -- Markku

----------

## mgr_

 *Make wrote:*   

> Jos olet käyttänyt gcc:lle -march=athlon-xp, niin systeemisi ei todennäköisesti toimi prossun vaihdon jälkeen. Muuttaisin tilalle -mtune=i686 ennen prossun vaihtoa ja ajaisin emerge -e world.
> 
>    -- Markku

 

CFLAGS="-O3 -march=k8 -mmmx -msse -msse2 -m3dnow -pipe -fomit-frame-pointer"

CHOST="x86_64-pc-linux-gnu"

CXXFLAGS="${CFLAGS}"

ACCEPT_KEYWORDS="~amd64 amd64"

tuossa on rivit make.conffista jotka viittaa jotenkin tuohon amd:hen hmm.. miksihän oon laittanut tuohon -march=k8 siihen oli varmasti joku hyvä syy kun tätä gentoota asentelin  :Smile:  elikkäs meniskö noi muuten samalla tavalla mutta muutetaan -march=k8 tilalle -mtune=i686 mitäs tuolle ACCEPT_KEYWORDS:lle tehdään vai poistetaanko kokonaan?

----------

## teidon

Jotenkin aloinkin muisteleen että eikös 3200+ ollut paras Athlon XP prossu. Omassa koneessa kun oli sellanen ja päivitin sen juurikin Core 2 Duo E6600.

Veikkaisin kuitenki että eiköhän tuo sinunkin päivitys toimi ilman suurempia ongelmia. En kuitenkaan sata varma ole koska nykyinen prossusi on suunnilleen samaa "generaatiota" kuin uusi prossu, joten on mahdollista että siinä on joitain ominaisuuksia joita ei Core 2 prossuista löydy ja siten koneen käynnistys saattaa kompastua siihen päivityksen jälkeen. Jos varman päälle haluat pelata niin muuta CFLAGS geneeriseen i686 asentoon ja sitten vedä emerge -e world ennen kuin päivittelet koneesi. Veikkaan kuitenki että eiköhän se käynnisty ilman tuota temppua, jotkut ohjelmat vaan saattaa vähän sekoilla. Kerneli kannattanee kuitenkin kääntää ilman mitään Athlon optimointeja, eli kernelin asetuksista Processor type and features -> Processor family asentoon Generic-x86-64.

Ja ihan varmuuden vuoksi kannattaa hommata joku LiveLinux. Knoppix on hyvä jos et jo omista mitään LiveLinuxia. Sellanen on hyvä olla jokaisella Linuxistilla; sen avulla voi (kohtuu) helposti korjata kovalevylle asennetun Linuxin jos sille jotain ikävää tapahtuu.

Tässä meikäläisen make.confin oleelliset kohdat (prossuna siis sama kuin sinun hankintalistalla oleva):

```
CFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer"

CHOST="x86_64-pc-linux-gnu"

CXXFLAGS="${CFLAGS}"

MAKEOPTS="-j5"

PORTAGE_NICENESS="19"
```

PORTAGE_NICENESS on kiva asetus; voi käännellä ohjelmia samalla kun vaikka pelaa jotain 3D peliä.

 *Make wrote:*   

> Jos olet käyttänyt gcc:lle -march=athlon-xp, niin systeemisi ei todennäköisesti toimi prossun vaihdon jälkeen. Muuttaisin tilalle -mtune=i686 ennen prossun vaihtoa ja ajaisin emerge -e world. 
> 
>  -- Markku

 Kyllä tuo -march=athlon-xp kanssa toimi(s)i, minulla oli sama tilanne kun päivitin koneeni eikä siitä mitään ongelmia tullu. Mgr_:n prossu ei tosin ole Athlon XP vaan Athlon XP-64 mikä saattaa aiheuttaa ongelmia tässä tapauksessa.

 *Quote:*   

> mitäs tuolle ACCEPT_KEYWORDS:lle tehdään vai poistetaanko kokonaan?

 Anna olla samana. Vähän harhaan johtavahan se on, mutta Gentoossa amd64 tarkoittaa mitä tahansa 64bittistä prosessoria.

----------

## Make

 *teidon wrote:*   

> Kyllä tuo -march=athlon-xp kanssa toimi(s)i, minulla oli sama tilanne kun päivitin koneeni eikä siitä mitään ongelmia tullu. Mgr_:n prossu ei tosin ole Athlon XP vaan Athlon XP-64 mikä saattaa aiheuttaa ongelmia tässä tapauksessa.
> 
> 

 

Näin sanotaan gentoo optimization dokumentissa:

 *Quote:*   

> 
> 
> http://www.gentoo.org/doc/en/gcc-optimization.xml
> 
> On x86 and x86-64 CPUs, -march will generate code specifically for that CPU using all its available instruction sets and the correct ABI; it will have no backwards compatibility for older/different CPUs

 

Joten itse kääntäisin järjestelmän ensin -mtune optiolle.

  -- Markku

----------

## mgr_

Kiitoksia paljon, enköhän kumminkin varmuuden vuoksi käännä järjestelmän ensin tuolle -mtune optiolle ja samoin kernelin Generic-x86-64, että nyt ainakin varmasti sitten toimisi. Ei millään huvittais rueta aivan alusta asti gentoota asentelemaan kun tän nyt on saanut säädettyä melkein viimosen päälle kuntoonkin.

----------

## Zarhan

Toisaalta, uudelleenasennus ei ole mikään kummoinen juttu - /etc, /var ja /home talteen, asennus tyhjälle, ja palautus backupeista ja emerge -e world niin järjestelmä rakentaa itse itsensä takaisin kuten oli  :Smile: .

----------

## mgr_

Noniin, emolevy ja prossu on nyt vaihdettu emoksi tuli Abit AW9D-MAX ja prossuksi se E6600. Kaikkihan ei mennyt aivan kuin elokuvissa, kuten yleensä tapana on. Kone lähti kyllä käyntiin, mutta vain vanhalla 2.6.18 kernelillä enkä saa millään käännettyä tähän 2.6.23 kerneliä.. Vaan tulee seuraavanlainen valitus:

```
VFS: Cannot open root device "806" or unknown-block (8,6) 

Please append a correct "root=" boot option; here are the available partitions:

0300 312571224 hda-driver: ide-disk

0301 -numeroita- hda1

0302 -------------  hda2

0305 -------------  hda5

0306 -------------- hda6

0307 -------------- hda7

0308 -------------- hda8

0309 -------------- hda9

030a -------------- hda10

1600 hdc driver: ide-cdrom

Kernel panic - not syncing: VFS: unable to mount root fs on unknown-block(8,6) 
```

Miksi tuo puhuu tuossa hda-osioista vaikka minulla ei ole hda-kovoja?

```

lspci

00:00.0 Host bridge: Intel Corporation 82975X Memory Controller Hub (rev c0)

00:01.0 PCI bridge: Intel Corporation 82975X PCI Express Root Port (rev c0)

00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 01)

00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 01)

00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 01)

00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 01)

00:1c.4 PCI bridge: Intel Corporation 82801GR/GH/GHM (ICH7 Family) PCI Express Port 5 (rev 01)

00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 01)

00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 01)

00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 01)

00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 01)

00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 01)

00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev e1)

00:1f.0 ISA bridge: Intel Corporation 82801GB/GR (ICH7 Family) LPC Interface Bridge (rev 01)

00:1f.2 IDE interface: Intel Corporation 82801GB/GR/GH (ICH7 Family) SATA IDE Controller (rev 01)

00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 01)

01:00.0 VGA compatible controller: nVidia Corporation G70 [GeForce 7600 GT] (rev a1)

03:00.0 Mass storage controller: Silicon Image, Inc. SiI 3132 Serial ATA Raid II Controller (rev 01)

04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)

05:00.0 Mass storage controller: Silicon Image, Inc. SiI 3132 Serial ATA Raid II Controller (rev 01)

06:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)

07:02.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)

07:05.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
```

Kernelissä mm. seuraavaa:

```
gentoo linux-2.6.23 # cat .config | grep -i sata

CONFIG_BLK_DEV_IDE_SATA=y

CONFIG_SATA_AHCI=y

CONFIG_SATA_SVW=y

CONFIG_SATA_MV=y

CONFIG_SATA_NV=y

CONFIG_SATA_QSTOR=y

CONFIG_SATA_PROMISE=y

CONFIG_SATA_SX4=y

CONFIG_SATA_SIL=y

CONFIG_SATA_SIL24=y

CONFIG_SATA_SIS=y

CONFIG_SATA_ULI=y

CONFIG_SATA_VIA=y

CONFIG_SATA_VITESSE=y

CONFIG_SATA_INIC162X=y

```

```
gentoo linux-2.6.23 # cat .config | grep -i ide

# CONFIG_ACPI_VIDEO 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=y

# CONFIG_BLK_DEV_HD_IDE is not set

CONFIG_BLK_DEV_IDEDISK=y

CONFIG_IDEDISK_MULTI_MODE=y

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_IDEPNP=y

CONFIG_BLK_DEV_IDEPCI=y

CONFIG_IDEPCI_SHARE_IRQ=y

CONFIG_IDEPCI_PCIBUS_ORDER=y

CONFIG_BLK_DEV_IDEDMA_PCI=y

CONFIG_BLK_DEV_IDEDMA_FORCED=y

CONFIG_IDEDMA_ONLYDISK=y

# CONFIG_IDE_ARM is not set

CONFIG_BLK_DEV_IDEDMA=y

CONFIG_IDEDMA_IVB=y

# CONFIG_IEEE1394_VIDEO1394 is not set

CONFIG_VIDEO_DEV=m

CONFIG_VIDEO_V4L1=y

CONFIG_VIDEO_V4L1_COMPAT=y

CONFIG_VIDEO_V4L2=y

CONFIG_VIDEO_CAPTURE_DRIVERS=y

CONFIG_VIDEO_ADV_DEBUG=y

CONFIG_VIDEO_HELPER_CHIPS_AUTO=y

CONFIG_VIDEO_TVAUDIO=m

CONFIG_VIDEO_TDA7432=m

CONFIG_VIDEO_TDA9840=m

CONFIG_VIDEO_TDA9875=m

CONFIG_VIDEO_TEA6415C=m

CONFIG_VIDEO_TEA6420=m

CONFIG_VIDEO_MSP3400=m

CONFIG_VIDEO_WM8775=m

CONFIG_VIDEO_BT819=m

CONFIG_VIDEO_BT856=m

CONFIG_VIDEO_KS0127=m

CONFIG_VIDEO_SAA7110=m

CONFIG_VIDEO_SAA7111=m

CONFIG_VIDEO_SAA7114=m

CONFIG_VIDEO_SAA711X=m

CONFIG_VIDEO_TVP5150=m

CONFIG_VIDEO_VPX3220=m

CONFIG_VIDEO_CX25840=m

CONFIG_VIDEO_CX2341X=m

CONFIG_VIDEO_SAA7185=m

CONFIG_VIDEO_ADV7170=m

CONFIG_VIDEO_ADV7175=m

CONFIG_VIDEO_VIVI=m

CONFIG_VIDEO_BT848=m

CONFIG_VIDEO_BT848_DVB=y

CONFIG_VIDEO_SAA6588=m

CONFIG_VIDEO_CPIA=m

CONFIG_VIDEO_CPIA_USB=m

CONFIG_VIDEO_CPIA2=m

CONFIG_VIDEO_SAA5246A=m

CONFIG_VIDEO_SAA5249=m

CONFIG_VIDEO_STRADIS=m

CONFIG_VIDEO_ZORAN_ZR36060=m

CONFIG_VIDEO_ZORAN=m

CONFIG_VIDEO_ZORAN_BUZ=m

CONFIG_VIDEO_ZORAN_DC10=m

CONFIG_VIDEO_ZORAN_DC30=m

CONFIG_VIDEO_ZORAN_LML33=m

CONFIG_VIDEO_ZORAN_LML33R10=m

CONFIG_VIDEO_ZORAN_AVS6EYES=m

CONFIG_VIDEO_SAA7134=m

CONFIG_VIDEO_SAA7134_ALSA=m

CONFIG_VIDEO_SAA7134_DVB=m

CONFIG_VIDEO_MXB=m

CONFIG_VIDEO_DPC=m

CONFIG_VIDEO_HEXIUM_ORION=m

CONFIG_VIDEO_HEXIUM_GEMINI=m

CONFIG_VIDEO_CX88=m

CONFIG_VIDEO_CX88_ALSA=m

CONFIG_VIDEO_CX88_BLACKBIRD=m

CONFIG_VIDEO_CX88_DVB=m

CONFIG_VIDEO_CX88_VP3054=m

# CONFIG_VIDEO_IVTV is not set

# CONFIG_VIDEO_CAFE_CCIC is not set

CONFIG_VIDEO_PVRUSB2=m

# CONFIG_VIDEO_PVRUSB2_29XXX is not set

CONFIG_VIDEO_PVRUSB2_24XXX=y

CONFIG_VIDEO_PVRUSB2_SYSFS=y

CONFIG_VIDEO_PVRUSB2_DEBUGIFC=y

CONFIG_VIDEO_EM28XX=m

# CONFIG_VIDEO_USBVISION is not set

CONFIG_VIDEO_USBVIDEO=m

CONFIG_VIDEO_OVCAMCHIP=m

CONFIG_VIDEO_SAA7146=m

CONFIG_VIDEO_SAA7146_VV=m

CONFIG_VIDEO_TUNER=m

CONFIG_VIDEO_BUF=m

CONFIG_VIDEO_BUF_DVB=m

CONFIG_VIDEO_BTCX=m

CONFIG_VIDEO_IR=m

CONFIG_VIDEO_TVEEPROM=m

# CONFIG_FB_TRIDENT is not set

CONFIG_VIDEO_SELECT=y

# CONFIG_SND_RIPTIDE is not set

# CONFIG_SND_TRIDENT is not set

```

```
gentoo ~ # cat /etc/lilo.conf

boot=/dev/sda

prompt

timeout=50

lba32

compact

default=Gentoo

image=/boot/2.6.18-gentoo-r6

  label=Gentoo

  read-only

  root=/dev/sda6

image=/boot/linux-2.6.23

  label=Gentoo2.6

  read-only

  root=/dev/sda6
```

```
gentoo ~ # fdisk -l

Disk /dev/sda: 320.0 GB, 320072933376 bytes

240 heads, 63 sectors/track, 41345 cylinders

Units = cylinders of 15120 * 512 = 7741440 bytes

Disk identifier: 0x00000001

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1          13       98248+  83  Linux

/dev/sda2              14       41345   312469920    5  Extended

/dev/sda5              14          79      498928+  82  Linux swap / Solaris

/dev/sda6              80        3308    24411208+  83  Linux

/dev/sda7            3309        5891    19527448+  83  Linux

/dev/sda8            5892       25267   146482528+  83  Linux

/dev/sda9           25268       35601    78125008+  83  Linux

/dev/sda10          35602       41345    43424608+  83  Linux

```

Ja olen kokeillut myöskin kopioida vanhasta 2.6.18 kernelistä .config tiedoston uuteen ja lisännyt uudet emon sata-ohjaimet eikä vaan pelittänyt. Tuossa 2.6.18 -> 2.6.23 välissä on tapahtunut jokin radikaali muutos sata-ohjaimissa eli ne on varmaankin vaihtunut omaan alihakemistoonsa tai jotain vastaavaa.. Kokeilin myös genkernelillä, mutta silläkin tulee vain sama ilmoitus.

Kiitoksia vastaajille!

----------

## Paapaa

Ota turhat tuet pois ja laita tuki vain sille tavaralle, jota oikeasti käytät. Tulee ongelmien metsästyksestä helpompaa. Eli kaikki geneeriset ja turhat ajurit hiiteen ja vain Intelin ICH7/8 -tuki päälle SCSI-tuen kera.

----------

## Make

 *mgr_ wrote:*   

> 
> 
> Ja olen kokeillut myöskin kopioida vanhasta 2.6.18 kernelistä .config tiedoston uuteen ja lisännyt uudet emon sata-ohjaimet eikä vaan pelittänyt. 
> 
> 

 

Kun kopioit .config:n, niin ajoithan make oldconfig.

  -- Markku

----------

## teidon

Sinä ilmeisesti käytät vanhoja kiintolevyajureita. Minun kernel conffi näyttää tälle kiintolevyjen suhteen (merkkaamattomat kohdat poistettu):

```
Device Drivers -->

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

     SCSI device support  --->

          [*] legacy /proc/scsi/ support  

          <*> SCSI disk support 

          <*> SCSI CDROM support 

          <*> SCSI generic support 

          [*] Asynchronous SCSI scanning

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

          <*>   AHCI SATA support

          <*>   Generic ATA support

          <*>   Emon kiintolevylaiteajurit (PATA ja SATA)

```

----------

## mgr_

 *Quote:*   

> Kun kopioit .config:n, niin ajoithan make oldconfig. 

 

Tuosta en kyllä ole 100% varma vois kopsata uudestaan ja ajaa tuon.

 *teidon wrote:*   

> Sinä ilmeisesti käytät vanhoja kiintolevyajureita. Minun kernel conffi näyttää tälle kiintolevyjen suhteen (merkkaamattomat kohdat poistettu):
> 
> ```
> Device Drivers -->
> 
> ...

 

Laitoin kerneliin samalla tavalla, muuten kyllä sama ilmoitus, mutta jäi vain välistä pois ne "hda" tekstit. Mikähän tässä mättää...

```

VFS: Cannot open root device "806" or unknown-block (8,6)

Please append a correct "root=" boot option; here are the available partitions:

Kernel panic - not syncing: VFS: unable to mount root fs on unknown-block(8,6) 
```

Uusia ehdotuksia otetaan vastaan!

----------

## teidon

Kokeileppa muuttaa lilo.confissa root= riviä silleesti että kokeilet vuoron perään sdb, sdc, sdd, hda, hdb jne. Voi olla että aseman nimi on muuttunu uuden ajurin myötä. Itsellä ainakin kerran yhden kernel päivityksen kanssa kävi että sda laite saikin nimen hdc (tai hdb tjsp).

Varmista myös samalla että uudessa kernelissä varmasti on tuki tarvittaville tiedostojärjestelmille (ext2, ext3...).

----------

## mgr_

Jee! se toimii viimeinkin!

Käänsin kernelin vielä kerran ja lisäsin siihen CONFIG_ATA_PIIX=y ja CONFIG_SATA_SIL=y Jompikumpi tai molemmat noista vaikutti siihen, että kerneli pääsi yli tuosta virheilmoituksesta. On ollut kyllä aiemminkin nuo päällä, mutta varmaan vanhat/turhat kiintolevyohjaimet sotki kernelin tiedäppä sitä sitten?

----------

