emerge --newuse world

Discussion in 'Linux -keskustelu' started by ägräs, Apr 8, 2005.

  1. ägräs

    ägräs Regular member

    Joined:
    Feb 27, 2005
    Messages:
    184
    Likes Received:
    0
    Trophy Points:
    26
    Olen hieman muutellut use flageja ja olisi muutenkin mukava saada järjestelmä päivitettyä joten ajattelin ajaa ton komennon. Mutta entäs sen jälkeen? Mitä käy kaikille päivittyvien ohjelmien asetuksille? Hieman pelottaa tollanen massiivinen päivitys kun yksittäisten ohjelmienkin kääntämisessä on ollut ihan riittävästi ongelmia...
    Huomasin myös että toi päivittäisi kernelinkin. Kannattaisko se tehdä ensin erikseen?

    Ei kauheasti liity mutta: laitoin useen -debug -hardened koska tämän pitäisi nopeuttaa ohjelmia. Ihan ok?

     
    Last edited: Apr 8, 2005
  2. .W.

    .W. Regular member

    Joined:
    Mar 1, 2004
    Messages:
    838
    Likes Received:
    0
    Trophy Points:
    26
    Asenna ensin gentoolkit (emerge gentoolkit) sen mukana
    tulee revdep-repuild ohjelma jolla saa korjattua yleensäkkin päivitysten tuomia ongelmia aika mukavasti..

    Sitten teet tuon emerge --newuse worldin

    (kannattaa ehkä harkita samalla päivittävänsä koko järjestelmä myös)

    1) emerge --sync
    2) emerge -nuDva world
    (-n = newuse, u=päivitys D=myös riippuvuudet v=näyttää mitä päivitetään a=kysytään ennen päivitystä)
    3) etc-update (tarvittaessa)
    4) revdep-rebuild

     
  3. juppe22

    juppe22 Active member

    Joined:
    May 27, 2002
    Messages:
    2,660
    Likes Received:
    0
    Trophy Points:
    66
    Mikä on se/ne USE flag(it), jonka takia haluaa kernelin päivittää...??

    Onko sulla ollut noi ennen listattuna USE flageissa näin:
    USE="debug hardened"

    Eli oletko noilla flageilla kääntänyt oikeasti koko systeemin...??
    Meinaan noi ei pitäisi olla defaulttina käytössä...

    Tämän sijasta kannattaa ehdottomasti käyttää komentoa:
    [bold]dispatch-conf[/bold]
     
  4. ägräs

    ägräs Regular member

    Joined:
    Feb 27, 2005
    Messages:
    184
    Likes Received:
    0
    Trophy Points:
    26
    Ei flagien takia vaan mun kerneli on vaan vanha versio
    [ebuild U] sys-kernel/linux-headers-2.6.8.1-r2 [2.4.22-r1]
    [ebuild NS] sys-kernel/gentoo-sources-2.6.11-r4 -build -doc -symlink (-ultra1)

    Tän hetkinen kerneli on 2.6.10-r6.

    Ei sentään vaan nyt lisäisin ne sinne miinuksina.

    Mutta siis kun tuo uudelleenkääntää noi kaikki ohjelmat niin ei kai se tarkoita sitä et ne ohjelmat palautuu takaisin ihan alkupisteeseen? Eli tarviiko sen jälkeen konffata ne kaikki uudestaan työllä ja tuskalla?
     
  5. juppe22

    juppe22 Active member

    Joined:
    May 27, 2002
    Messages:
    2,660
    Likes Received:
    0
    Trophy Points:
    66
    Joo ton voit päivittää ihan erikseen ja sitten vaan käännät kernelin uudestaan vaikka samalla conffilla kuin vanhan...jos et käytä genkerneliä, niin sitten kopioit käsin uuden kernelin ja system.mapin bootti osiolle ja lisäät sen liloon/grubiin...

    Ne on valmiiksi jo miinuksena, joten ei sun niitä sinne tarvitse erikseen lisätä!!
    Kokeileppa nyt vaikka niin, että asennat ton gentoolkit:in ja sitten kirjottelet komentorivillä näin:
    equery u gcc

    ja katoppa, että miltä ne debug ja hardened rivit näyttää...??
     
  6. ägräs

    ägräs Regular member

    Joined:
    Feb 27, 2005
    Messages:
    184
    Likes Received:
    0
    Trophy Points:
    26
    Jaa no onhan ne pois käytöstä. Mut eikös joku ohjelma voi ottaa ne käyttöön ellei niitä ole erikseen pistetty miinuksiksi? Hmhmm en ehkä täysin tajua noita use flageja...
     
  7. juppe22

    juppe22 Active member

    Joined:
    May 27, 2002
    Messages:
    2,660
    Likes Received:
    0
    Trophy Points:
    66
    Ei, koska ne on jo miinuksena...

    Eli make.defaults fileen on määritelty tietyt default flagit, eli jos joku on sinne määritelty, niin sitä käytetään ja jos ei niin sitä ei käytetä (näitä ei kannata mennä käsin muuttamaan), eli muutokset on järkevää tehdä sinne make.conf fileen, koska se otetaan huomioon ennen tota defaults filee...jos kirjoitat komentorivillä:
    emerge info

    näät kaikki USE flagit, jotka on enebloituna systeemissäsi ja jos niistä haluat jotain pois tai lisätä jotain, niin sitten lisäät sen flagin make.conf fileen USE osioon...huom jos lisäät make.conf:iin saman flagin miinuksella ja ilman, niin silloin se on disabloituna...eli esimerkiksi:
    USE="-gtk2 gtk2"

    tolla rivillä gtk2 on siis pois käytöstä...

    Onpas hankala selittää näin tätä... :)
     
  8. .W.

    .W. Regular member

    Joined:
    Mar 1, 2004
    Messages:
    838
    Likes Received:
    0
    Trophy Points:
    26
    Kokeillaas paria asiaa kansantajuisesti:

    1) Update haluaa ainoastaan ladata uusimman kernelin lähdekoodin. Asentaminen (kääntäminen) pitää silti tehdä käsin.

    2) Ne USE flagin kertoo mitä valinnaisia ominaisuuksia voidaan halutessa kääntää ohjelmiin mukaan. Portage asettaa joitain default USE flageja joita noudatetaan, ellei käyttäjä itse halua toisin. Gentoon idea kumminkin on että käyttäjä voi halutessaan määrätä kaiken itse.
     
  9. juppe22

    juppe22 Active member

    Joined:
    May 27, 2002
    Messages:
    2,660
    Likes Received:
    0
    Trophy Points:
    66
    Jeps ja lisätään tähän vielä yksi juttu...jos oikeasti tietää, että mitä tekee noiden USE flagien kanssa, niin ei muuta, kun USE flagien alkuun "-*", niin toi "pudottaa" kaikki default flagit pois ja kaiken voi sen jälkeen määritellä itse...
     
  10. ägräs

    ägräs Regular member

    Joined:
    Feb 27, 2005
    Messages:
    184
    Likes Received:
    0
    Trophy Points:
    26
    No niin kiitos kaikille kaikesta. Nyt on uus kerneli asennettu ja vanhan rippeet poistettu. Tuli kylläkin uus epämiellyttävä käänne:
    Unohdin sitten laittaa emerge sync ennen kun lataan uuden kernelin, joten mulla on nyt 2.6.11-r4 kun uusin on r5. En jaksa taas päivittää sitä joten miten saan tuon emerge -nuDv jättämään uusimman kernelin pois?
     
  11. juppe22

    juppe22 Active member

    Joined:
    May 27, 2002
    Messages:
    2,660
    Likes Received:
    0
    Trophy Points:
    66
    Varmaan järkevin tapa on tässä tapauksessa tehdä seuraavasti...kirjoittelet komentorivillä näin:
    echo "=sys-kernel/gentoo-sources-2.6.11-r5" >> /etc/portage/package.mask

    niin sen jälkeen ei enään päivitä tota r5:sta, mutta esim. r6:sen taas haluaa päivittää...ja tietysti tollanen hakemisto, kun /etc/portage pitää olla olemassa...
     
    Last edited: Apr 8, 2005
  12. .W.

    .W. Regular member

    Joined:
    Mar 1, 2004
    Messages:
    838
    Likes Received:
    0
    Trophy Points:
    26
    Menee varmaan samaan kategoriaan, etten viitti uutta ketjua...

    Mikähän näissä, vaikka peräjälkeen laittaisin emerge -uD world, niin silti nämä kaksi:

    Calculating world dependencies ...done!
    [ebuild UD] media-gfx/gimp-print-4.2.7 [5.0.0_beta3]
    [ebuild U ] media-libs/libdv-0.104 [0.102]

    Lataavat vuoronperään uudemman, sitten vanhemman version.

    Eli toi gimp-print tuli juuri (taas) versioksi 5.0.0_beta3 ja heti perään se haluaa UD:n versioksi 4.2.7.

    Samaa sahaamista teke toi libdv. vaikka peräjälkeen tuota päivittelen niin aina se vuoronperään haluaa joko 102 tai 104:n.

    Hämmästyttää kummastuttaa vain..
     
  13. juppe22

    juppe22 Active member

    Joined:
    May 27, 2002
    Messages:
    2,660
    Likes Received:
    0
    Trophy Points:
    66
    No toi johtuu sellasesta, että ebuildiin on määritelty esim. gimpin depencyksi tällanen:
    =media-gfx/gimp-print-4.2*

    ja sitten gimp siis haluaa ton paketin, kun taas portage haluaisi päivittää ton uudemman...ja näin päästään tähän looppiin...sama juttu ton toisenkin kanssa, eli joku tietty ohjelma haluaa toisen version ja joku toinen toisen, joten taas ollaan samassa loopissa...
    eli se johtuu tosta, kun käytetään "=" merkkiä eikä esim. ">=" näin...monesti noihin on joku järkevä syy (esim. toinen paketti tarvii välttämättä toisen ja toinen toisen) tai sitten se on vain typo ebuildissa...yleensä joku korjaa noi ton tyyppiset aika pian..tai sitten voi lisätä toisen paketin tonne package.mask fileen...tai vaikka tehdä oman ebuildin (overlay portageen), johon korjaa sen ebuildin toimivaksi...jne...
     

Share This Page