# Przejscie z Linux Headers 2.4 na 2.6

## Woocash

WSTĘP

Standardowo w Gentoo są nagłówki 2.4.x. Zrobimy więc 2.6.x  :Smile:  Cała czynność jest podzielona na cztery etapy

Pierwszy etap

Najpierw musimy usunąć stary ebuild wpisując

```
emerge -C linux-headers
```

Drugi etap

Następnie musimy ręcznie zemergować linux-headers-2.6.x. Wchodzimy do katalogu /usr/portage/sys-kernel-linux26-headers, wpisując :

```
ebuild linux26-headers-2.6.7-r1.ebuild merge
```

Trzeci etap

Najpierw należy utworzyć katalog /etc/portage

W tym katalogu tworzymy plik package.mask

W tym pliku wpisujemy :

```
<sys-kernel/linux-headers-2.6.0
```

Czwarty etap

Zróbmy plik /etc/portage/package.keywords

A w nim :

```
sys-kernel/linux26-headers  -*
```

Po tym wszystkim powinniśmy przekompilować glibc'a

I powinniśmy mieć najnowsze nagłówki  :Smile: 

W razie wątpliwości, ptyań, uwag służe uprzejmnie pomocą 

GG : 6420748 JID : woocash@chrome.plLast edited by Woocash on Fri Sep 24, 2004 5:59 pm; edited 6 times in total

----------

## arsen

może i te Howto będzie działać, ale niezbyt postępowania w nim są prawidłowe.

 *Quote:*   

> 
> 
> Pierwsza część
> 
> Najpierw należy utworzyć katalog /etc/portage
> ...

 

mozna przeciez zapisac to duzo prosciej, a mianowice:

```

<sys-kernel/linux-headers-2.6.0

```

 *Quote:*   

> 
> 
> Druga część
> 
> Wyedytujemy o to te pliki:
> ...

 

I tu też sie da to rozwiązać w prostrzy sposób, zamiast edytować ebuildy można zrobić to o wiele prościej (zmiany w ebuildach i tak znikną po emerge sync).

a mianowicie:

```

/etc/portage/package.keywords

```

torzymy taki o to wpis

```

sys-kernel/linux-headers  -*

```

jak dodasz takie poprawki to Howto bedzie dużo bardziej zrozumiałe, mniejsze i prawidłowe  :Smile: 

Pozdrawiam  :Smile: 

----------

## Woocash

Dzięki za cenne uwagi  :Smile: 

Ps. Teraz może być ?

----------

## arsen

już lepiej  :Smile: 

----------

## rofro

ja od początku mam kernela 2.6 więc chyba nie muszę nic robić?

----------

## fallow

 *rofro wrote:*   

> ja od początku mam kernela 2.6 więc chyba nie muszę nic robić?

 

```

emerge -p linux-headers

```

i sie dowiesz  :Smile: 

pozdro  :Smile: 

----------

## rofro

no dobra. emerguję  sys-kernel/linux-headers-2.6.7-r1 (kernel mam r7)

ale co to daje?

----------

## jackie

a jak się to wszystko ma do glibc w opisie poinstalacyjnym pisze jeszcze że po instalacji wskazane jest reinstalować glibc.

"Kernel headers are usually only used when recompiling glibc, as such, following the installation of newer headers, it is advised that you re-merge glibc as follows:

	emerge glibc

Failure to do so will cause glibc to not make use of newer features present in the updated kernel headers."

----------

## Joystick

Ja mam taki problem.

Updatowalem linux-headers do 2.6.7-r1, w  /etc/portage mam package.mask (<=sys-kernel/linux-headers-2.6.0, a wlasnie, woocash pisze ze z <=, a arsen ze tylko <) package.keywords (sys-kernel/linux-headers -*). Wlasnie zoriblem emerge rsync i  emerge -pU world i :

 *Quote:*   

> 
> 
> These are the packages that I would merge, in order:
> 
> Calculating world dependencies /
> ...

 

Dupa... pozmienialem nazwy package.mask i package.keywords to dostaję:

 *Quote:*   

> 
> 
> These are the packages that I would merge, in order:
> 
> Calculating world dependencies ...done!
> ...

 

Ekhm... też źle. Zahaszowalem /var/cache/edb/world i virtuals tam gdzie jest linux-headers... to samo. Co zrobić??

Pozdrawiam...

----------

## Woocash

Zaglądałem do /usr/portage/sys-kernel/linux-headers i aż mnie oczy wyszły  :Neutral:  Nie ma ani jednego ebuilda do linux-headers-2.6

ChangeLog

linux-headers-2.4.21.ebuild

linux-headers-2.4.25.ebuild

files

linux-headers-2.4.21-r1.ebuild

linux-headers-2.4.26.ebuild

linux-headers-2.0.40.ebuild 

linux-headers-2.4.22.ebuild

Manifest

linux-headers-2.2.26.ebuild 

linux-headers-2.4.23.ebuild 

metadata.xml

----------

## Pepek

A nie zauważyłeś, że dla linux-headers w wersji 2.6.x jest już zrobiony nowy katalog? Teraz trzeba tych ebuildów szukać nie w sys-kernel/linux-headers, ale w sys-kernel/linux26-headers.

Pozdrówki.  :Cool: 

----------

## Woocash

Oki dzięki

----------

## cin0l

 *Quote:*   

> A nie zauważyłeś, że dla linux-headers w wersji 2.6.x jest już zrobiony nowy katalog? Teraz trzeba tych ebuildów szukać nie w sys-kernel/linux-headers, ale w sys-kernel/linux26-headers.

 

pozamienialem sciezki w package.umask i keywords, no i teraz jak daje emerge -pU world dostaje:

```
[ebuild     UD] sys-kernel/linux-headers-2.4.22 [2.6.7-r1]
```

czemu chce mi powrocic do 2.4?

----------

## Woocash

Dobra znam rozwiązanie  :Very Happy:  :Very Happy:  :Very Happy: 

Najpierw trzeba usunąć starego ebuilda

```
emerge -C linux-headers
```

Następnie musimy emergować ze ścieżki

Przechodzimy do katalogu /usr/portage/sys-kernel/linux26-headers

i wpisujemy

```
ebuild linux26-headers-2.6.7-r1.ebuild merge
```

Później musimy edytować plik /etc/portage/package.keywords

```
sys-kernel/linux26-headers  -*
```

I teraz poprostu spróbować 

```
emerge -pu world
```

U mnie to podziałało

----------

## arsen

 *Woocash wrote:*   

> Dobra znam rozwiązanie 
> 
> Najpierw trzeba usunąć starego ebuilda
> 
> ```
> ...

 

troche masz to nie poprawnie.....nie po kolei...

najpierw dodac do packages.keywords:

```

sys-kernel/linux26-headers -*

```

a potem normalnie:

```

emerge linux26-headers

```

jak zainstalujesz poprzez:

```

ebuild linux26-headers-2.6.7-r1.ebuild merge

```

to pakiet nie trafi do worlda..i trzeba go wtedy jeszcze dodac do world

tak btw. poprzez:

```

ebuild foo.ebuild merge

```

sie instalowalo pakiety w pierwszych wersjach gentoo jak jeszcze nie bylo emerge  :Smile: 

----------

## Joystick

Yeeest  :Very Happy:  działa, zrobiłem:

 *Quote:*   

> 
> 
> emerge -C linux-headers
> 
> w package.keywords zmienilem na linux26-headers
> ...

 

Działa, dzięki  :Smile: 

----------

## quat

to moze by tak uaktualnic to how-to na "gorze"?

wiem ze i tak sie czyta calosc ale duzo bardziej elegancko by wygladalo jakby how-to bylo aktualne a nie kilka postow pozniej.

no ale to kwesta gustu a na ich temat sie podobno nie polemizuje.

pozdr

----------

## Woocash

Jest uaktualnione

----------

## quat

no a to co napisal arsen^

 *arsen^ wrote:*   

> 
> 
> jak zainstalujesz poprzez:
> 
> ```
> ...

 

bo chyba ma troszke racji arsen^ ze tak

 *arsen^ wrote:*   

> 
> 
> sie instalowalo pakiety w pierwszych wersjach gentoo jak jeszcze nie bylo emerge 

 

no ale jak uwazasz. Jak dla mnie lepiej uzywac wersji z emerge bo jest bardziej elegancka. Ale przyznaje ze Twoja tez dziala bo pocztakowo tak zrobilem.

pozdr  :Smile: 

----------

## joker

ja bym sie tak tymi headersami nie podniecal. nie wiem jak jest teraz, ale kiedys juz sie przesiadlem na wersje 2.6 i czesto mialem problemy z kompilacja roznych pakietow, nawet bardzo czesto, ogolnie opinie o nich byly niezbyt pozytywne. no chyba ze teraz juz jest wszystko w porzadku to smialo.

----------

## Yaro

Witam.

Co daje zmiana tych naglówków? I o jakie wogóle naglówki chodzi?

----------

## nelchael

 *Yaro wrote:*   

> I o jakie wogóle naglówki chodzi?

 

O te w /usr/include/linux/

----------

## quat

 *joker wrote:*   

> ja bym sie tak tymi headersami nie podniecal. nie wiem jak jest teraz, ale kiedys juz sie przesiadlem na wersje 2.6 i czesto mialem problemy z kompilacja roznych pakietow, nawet bardzo czesto, ogolnie opinie o nich byly niezbyt pozytywne. no chyba ze teraz juz jest wszystko w porzadku to smialo.

 

nie wiem ale ja z kolei nie mialem zadnych problemow z nowymi naglowkami.  Wszystko kompiluje sie bez problemow, a przybajmniej bez problemow ze strony naglowkow. no i jak robie upgrade to mi nie sciaga kernela 2.4.x bo po co sie cofac?   :Wink: 

no ale kazdy robi jak lubi.

pozdr

----------

## mkay

 *Woocash wrote:*   

> 
> 
> Drugi etap
> 
> Następnie musimy ręcznie zemergować linux-headers-2.6.x. Wchodzimy do katalogu /usr/portage/sys-kernel-linux26-headers, wpisując :
> ...

 

przede wszystkim nie powinno sie instalowac niczego poprzez podanie nazwy ebuilda (zreszta ta funkcja bedzie najprawdopodobniej niedlugo wylaczona z portage). poza tym wystarczy zwykle 

```
emerge linux26-headers
```

co do tych maskowan - nie jestem pewien gdzie, ale na 100% mialem odmaskowane tylko w jednym miejscu, a pozniej chyba juz w ogole. teraz nie sprawdze, bo uzywam nowego portage'a i profilow kaskadowych (tam sprawa zalatwiana jest profilem)

----------

## jackie

Odnosze wrazenie ze czesc ludzi robi ta zmiane na pałę nie mając pojęcia co to są linux-headers i czym to się je. ( https://forums.gentoo.org/viewtopic.php?t=227374 lub pare postow wyzej). Tak ze ja bym proponowal zeby wstep delikatnie rozbudowac o wyjasnienie co to jest i co to nam daje. 

Następna uwaga to ciągle brakuje mi tego że na końcu procesu powinno się reemergować glibc.

----------

## mkay

 *jackie wrote:*   

> Tak ze ja bym proponowal zeby wstep delikatnie rozbudowac o wyjasnienie co to jest i co to nam daje. 

 

hmm - nie wiem czy to potrzebne.. to raczej niczego nie zepsuje, a jezeli ktos chce wiedziec wiecej awsze moze pogooglac..

 *jackie wrote:*   

> 
> 
> Następna uwaga to ciągle brakuje mi tego że na końcu procesu powinno się reemergować glibc.

 

a z tym sie zgodze. co prawda portage napisze po zainstalowaniu naglowkow, zeby przekompilowac glibc, ale mimo wszystko powinno byc w how-to

----------

## quat

 *aye wrote:*   

> co do tych maskowan - nie jestem pewien gdzie, ale na 100% mialem odmaskowane tylko w jednym miejscu, a pozniej chyba juz w ogole. 

 

tylko w package.keywords. mi tak poszlo.

pozdr

----------

## Strus

Odnośnie drugiego etapu:

Mam jajo 2.6.9-ck3 i nagłówki 2.4.21-r1 chcę zmienić na 2.6 tylko, że w linux26-headers mam 

```
linux26-headers-2.6.6-r1.ebuild

linux26-headers-2.6.8.1-r1.ebuild

linux26-headers-2.6.7-r4.ebuild 

linux26-headers-2.6.5.ebuild

linux26-headers-2.6.8.1.ebuild 
```

Nie ma 2.6.9. Które mam wybrać ?

----------

## Woocash

2.6.8.1 ;>

----------

## fallow

teoretycznie najbardziej zblizone wersja do Twojej wersji kernela. ja przynajmniej tak robie odkad mam gentoo  :Smile: 

pozdro

----------

## coyote01

po wydaniu polecenia emerge linux26-headers-2.6.8.1-r1.ebuild merge w katalogu /usr/portage/sys-kernel/linux26-headers wywala mi taki komunikat:

```
pentiumek linux26-headers # emerge linux26-headers-2.6.8.1-r1.ebuild merge

emerging by path implies --oneshot... adding --oneshot to options.

*** emerging by path is broken and may not always work!!!

Calculating dependencies \

emerge: there are no ebuilds to satisfy "merge".

```

co jest grane? jak zainstalowac te pliki naglowkowe?

----------

## _troll_

1. z ostatnim portage weszla pwena zmiana - podawanie sciezki do pliku z ebuildem zostalo zabronione, bo sie 'kopsalo' w pewnych miejscach z emerge.

2. parametr merge jest prawidlowy dla polecenia ebuild, nie emerge

mozesz zrobic:

USE="~x86" emerge kernel26-headers

lub

ebuild /sciezka/do/pliku/linux26-headers-2.6.8.1-r1.ebuild merge

Pozdrawiam,

Przemek

----------

## Grosik

 *_troll_ wrote:*   

> mozesz zrobic:
> 
> USE="~x86" emerge kernel26-headers

 

Raczej: ACCEPT_KEYWORDS="~x86" emerge linux26-headers  :Wink: 

----------

## _troll_

 *Grosik wrote:*   

>  *_troll_ wrote:*   mozesz zrobic:
> 
> USE="~x86" emerge kernel26-headers 
> 
> Raczej: ACCEPT_KEYWORDS="~x86" emerge linux26-headers 

 

jasne ze tak - masz racje  :Smile:  zmeczony bylem chyba  :Wink: )))

Pozdrawiam,

Przemek

----------

## mysiar

 *quat wrote:*   

> 
> 
> nie wiem ale ja z kolei nie mialem zadnych problemow z nowymi naglowkami.  Wszystko kompiluje sie bez problemow, a przybajmniej bez problemow ze strony naglowkow. no i jak robie upgrade to mi nie sciaga kernela 2.4.x bo po co sie cofac?  
> 
> 

 

nie miałeś problemów bo nie kompilowałeś rzeczy które się sypią z nagłówkami z jądra 2.6

jak chcesz zobaczyć jak to działa to polecam szybki test

http://sourceforge.net/projects/tcopy/

źródełka tylko 9kB 

Piotr

----------

## quat

 *mysiar wrote:*   

> nie miałeś problemów bo nie kompilowałeś rzeczy które się sypią z nagłówkami z jądra 2.6
> 
> jak chcesz zobaczyć jak to działa to polecam szybki test
> 
> http://sourceforge.net/projects/tcopy/

 moj blad nie zaznaczylem ze mowie o desktopach. nie wyobrazam sobie uzywania tasm (to chyba o streamry chodzi tak?) na moim notebooku. na klastrze moim chodzi kilka systemow od AIX do linuxow i linuxy sa na 2.4 ale to wynika raczej z ograniczen openmosixa a nie blednych naglowkow. sa po prostu inne.

kiedy tylko przejda w openmosixie na 2.6 zapomne o 2.4.

w normalnej pracy _nigdy_ nie mialem problemow z naglowkami 2.6 za to mialem z 2.4 (pewne wersje ACPI).

pozdrawiam

----------

