Debian pakettilistaus

Debian pakettilistaus

Miten saisi listattua kaikki asennetut paketit ja kaikki niiden sisältämät tiedostot ?

Ensimmäisenä etsin aiheesta tietoa googlella ja jotain löysinkin:

Siis komennolla:

dpkg -l | grep ^i >asennetut_paketit2.txt

Saa listan asennetuista paketeista - teoriassa...

Ongelmana tuossa on se, että jos paketin nimi on pitkä, se pätkäistään - eikä komento kerro koko nimeä pätkäistyjen osalta.

Jos saisi koko nimen, niin ideani on seuraava:

em. komennolla otetaan asennettujen pakettien nimet tiedostoon.

Sitten omatekoisella ohjelmalla luodaan eräajoskriptitiedosto, joka sisältää tämäntapaisia komentoja:

(esim: ) löydetty paketti: aalib1

Komento1: echo "paketti: aalib1" >> kaikkitiedot.txt
Komento2: dpkg -L aalib1 >> kaikkitiedot.txt

Tämä toimiikin hyvin, jos paketin nimi on niin lyhyt, että em. dpkg -l | grep ^i
antaa tuloslistaan paketin koko nimen.

Mutta entä jos nimi on liian pitkä?

tässä esimerkki:

dpkg -L libapt-pkg-per
Package `libapt-pkg-per' is not installed.

Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.
sarge180:/mikax1/Linux_Distro#

sensijaan dpkg -L libapt-pkg-perl
toimii ok.


Mutta kun dpkg -l | grep ^i

antaa tulokseksi libapt-pkg-per

myöskään dpkg -L libapt-pkg-per* ei toimi.

Tuon perl voisi vielä arvata " per" lopusta paketin katkaistussa nimessä, mutta jos paketteja on paljon, niin:

a) iso homma käydä manuaalisesti läpi pitkät nimet

ja

b) kaikissa nimissä ei ole helppo arvata puuttuvaa loppuosaa !

Miten siis saa listan asennetuista paketeista niin, että nimi tulostuu kokonaan, eikä sitä pätkitä, vaikka nimi olisi pitkäkin ?

Olisi kiva ottaa tuollainen lista automatiikalla asennetusta Debian Sargesta 2.6.8 -kernelillä, ennenkuin tyhjennän ko. osion, jolle em. asennus tehtiin, ja asennan siihen saman 2.4 -kernelillä ja ilman automatiikkaa.

Tuossa 2.6 -kernelissä kun ISA -verkkokorttia 3com 3c509 ei ilmeisesti saa toimimaan mitenkään.

muualla esitetyt ohjeet PnP:n poistamisesta DOS -apuohjelmalla ovat virheellisiä: Dos -apuohjelma väittää poistavansa PnP -moodin käytöstä, mutta vaikka katkaisee tämän jälkeen virran ja käynnistää uudelleen, PnP on silti päällä.

Sitäpaitsi: 2.4 -kernelillä sama kortti PnP päällä toimii linuxissa oikein hyvin. Miksi 2.6 -kernelin tekemisessä mokailtiin ?
8482
Äänestä

Muut lukivat myös

Vastaukset 8

Vanhimmat

eikös synaptic anna aika hyvin tietoja paketeista ja kaikkee mitä tarvit? ...ainaskin noin suunnilleen?

Äänestä
  • Tätäkö tarkoitat:

    synaptic - Graphical package manager

    tuo siis "apt-cache search synaptic" tuloksista ?

    Mutta tässä haettiin komentorivityökalua (saa helposti tulokset tiedostoon)

    Äänestä

"2.6 -kernelissä kun ISA -verkkokorttia 3com 3c509 ei ilmeisesti saa toimimaan mitenkään."

Kyllä saa, kunhan tekee kuten jo neuvottu. Vanha ISA-kortti ei sovi kädettömille. Modulitkin löytyy...

Äänestä

kirjoittelet moista sotkua. Ota ja konffaa sekä käännä se uusi kerneli koneelle ja sen lisäosille sopivaksi. Siinä koko ongelman ratkaisu.

Äänestä
  • ... et sitten samantien laittanut ohjetta, miten kernel käännetään, ja miten saa varmistettua, että kaikki omassa koneessa tarpeelliset saa mukaan: omassa tapauksessani siis kaikki se, mikä debianin 2.6.8:ssa tulee vakiona ja lisäksi ainakin 3c509 -verkkokortin (ISA) ajurit sekä sigmatel USB-IrDA -ajurit ja vieläpä niin, että noita USB-IrDA -palikoita voi liittää useita yhtäaikaa.

    Olisi kätevää, jos Linuxin ohjeistus olisi yhtä selkeästi kirjoitettua ja helposti löydettävissä kuin windowsin vastaava osoitteessa http://msdn.microsoft.com/

    Miksiköhän muuten Debianin jakelun kasaajat eivät ole korjanneet tuota verkkokortin toimimattomuutta 20.12.2005 julkaistussa r1 -korjauspäivityksessään Sargeen ?

    Google löytää hakusanoilla "2.6 kernel 3c509" useita kirjoituksia, henkilöiltä joilla on sama ongelma. Mutta selkeää vastausta, kuinka asia korjataan, ei löydy. Joku nettisivu neuvoo editoimaan /etc/modules.conf, mutta debianissa tuo tiedosto varoittaa, että se on automaattisesti tuotettu eikä sitä ole syytä editoida.

    modprobe 3c509 muuten sai kortin näkymään komennolla ifconfig -a
    , mutta kortti ei siltikään toimi.

    Sitäpaitsi: normaalina komentorivikomentona tuo modprobe vaikuttaa vain seuraavaan buuttaukseen asti.

    Joten olisit nyt laittanut samantien ohjeen, kuinka tuo ratkaisusi toteutetaan!

    Muuten: onko kernel pakko kääntää uudelleen, eikös jotenkin pitäisi saada oikea LKM (loadable Kernel module) latautumaan ja mitäs muuta vielä pitää tehdä sen modulin latauksen lisäksi, sillä komento ifup eth0 valittaa, ettei ymmärrä, mikä on eth0 (senkin jälkeen, kun on annettu em. modprobe -komento)

    Äänestä

  • Mika0800 kirjoitti:

    ... et sitten samantien laittanut ohjetta, miten kernel käännetään, ja miten saa varmistettua, että kaikki omassa koneessa tarpeelliset saa mukaan: omassa tapauksessani siis kaikki se, mikä debianin 2.6.8:ssa tulee vakiona ja lisäksi ainakin 3c509 -verkkokortin (ISA) ajurit sekä sigmatel USB-IrDA -ajurit ja vieläpä niin, että noita USB-IrDA -palikoita voi liittää useita yhtäaikaa.

    Olisi kätevää, jos Linuxin ohjeistus olisi yhtä selkeästi kirjoitettua ja helposti löydettävissä kuin windowsin vastaava osoitteessa http://msdn.microsoft.com/

    Miksiköhän muuten Debianin jakelun kasaajat eivät ole korjanneet tuota verkkokortin toimimattomuutta 20.12.2005 julkaistussa r1 -korjauspäivityksessään Sargeen ?

    Google löytää hakusanoilla "2.6 kernel 3c509" useita kirjoituksia, henkilöiltä joilla on sama ongelma. Mutta selkeää vastausta, kuinka asia korjataan, ei löydy. Joku nettisivu neuvoo editoimaan /etc/modules.conf, mutta debianissa tuo tiedosto varoittaa, että se on automaattisesti tuotettu eikä sitä ole syytä editoida.

    modprobe 3c509 muuten sai kortin näkymään komennolla ifconfig -a
    , mutta kortti ei siltikään toimi.

    Sitäpaitsi: normaalina komentorivikomentona tuo modprobe vaikuttaa vain seuraavaan buuttaukseen asti.

    Joten olisit nyt laittanut samantien ohjeen, kuinka tuo ratkaisusi toteutetaan!

    Muuten: onko kernel pakko kääntää uudelleen, eikös jotenkin pitäisi saada oikea LKM (loadable Kernel module) latautumaan ja mitäs muuta vielä pitää tehdä sen modulin latauksen lisäksi, sillä komento ifup eth0 valittaa, ettei ymmärrä, mikä on eth0 (senkin jälkeen, kun on annettu em. modprobe -komento)

    Luetaanpas ensin ne ohjeet. Debianinkin mukana varmasti tulee Kernel-Howto ja paljon muitakin lukemisen arvoisia dokumentteja. Jos ei niin tuoltakin löytyy aika selkeät ohjeet kernelin kääntöön.
    http://www.digitalhermit.com/linux/Kernel-Build-HOWTO.html

    Ja sama suomeksi:
    http://www.wiki.linux.fi/mediawiki-1.5.2/index.php/Kernelin_kääntäminen

    2.4 sarjan kerneleille:
    http://tapsa.terae.net/linux/kerneli.htm

    Ja windowsin ohjeistus ei todellakaan ole selkeää.

    Äänestä

  • saatananperkele kirjoitti:

    Luetaanpas ensin ne ohjeet. Debianinkin mukana varmasti tulee Kernel-Howto ja paljon muitakin lukemisen arvoisia dokumentteja. Jos ei niin tuoltakin löytyy aika selkeät ohjeet kernelin kääntöön.
    http://www.digitalhermit.com/linux/Kernel-Build-HOWTO.html

    Ja sama suomeksi:
    http://www.wiki.linux.fi/mediawiki-1.5.2/index.php/Kernelin_kääntäminen

    2.4 sarjan kerneleille:
    http://tapsa.terae.net/linux/kerneli.htm

    Ja windowsin ohjeistus ei todellakaan ole selkeää.

    Myös aptilla kantsii vähän katella niitä paketteja, itsellä nyt vedossa 2.6.14 sarjan kernu ja varsin loistavasti toimii vaikkakin vasta unstable rellu on. Eikös näillä ohjeilla taas eteenpäin :) Kernelin käännöksestä myös www.ratkaisu.net osoitteessa aika kivasti lueteltu juttua, siellä myös paljon muuta katsomisen arvoista. Käykääs tarkastelemassa

    Äänestä

Kenties terminaalin sarakkeiden määrän muuttaminen dpkg:lle auttanee. man dpkg:n mukaan dpkg muokkaa tulostettaan ympäristömuuttujan COLUMNS mukaan, joten esim.

COLUMNS=200 dpkg -l | grep ^ ii

voisi toimia hieman paremmin. Muuta tuota numeroa suuntaan tai toiseen tarpeen mukaan.

Äänestä

Kommentoi aloitusta


Mika0800 kirjoitti:

Debian pakettilistaus

Miten saisi listattua kaikki asennetut paketit ja kaikki niiden sisältämät tiedostot ?

Ensimmäisenä etsin aiheesta tietoa googlella ja jotain löysinkin:

Siis komennolla:

dpkg -l | grep ^i >asennetut_paketit2.txt

Saa listan asennetuista paketeista - teoriassa...

Ongelmana tuossa on se, että jos paketin nimi on pitkä, se pätkäistään - eikä komento kerro koko nimeä pätkäistyjen osalta.

Jos saisi koko nimen, niin ideani on seuraava:

em. komennolla otetaan asennettujen pakettien nimet tiedostoon.

Sitten omatekoisella ohjelmalla luodaan eräajoskriptitiedosto, joka sisältää tämäntapaisia komentoja:

(esim: ) löydetty paketti: aalib1

Komento1: echo "paketti: aalib1" >> kaikkitiedot.txt
Komento2: dpkg -L aalib1 >> kaikkitiedot.txt

Tämä toimiikin hyvin, jos paketin nimi on niin lyhyt, että em. dpkg -l | grep ^i
antaa tuloslistaan paketin koko nimen.

Mutta entä jos nimi on liian pitkä?

tässä esimerkki:

dpkg -L libapt-pkg-per
Package `libapt-pkg-per' is not installed.

Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.
sarge180:/mikax1/Linux_Distro#

sensijaan dpkg -L libapt-pkg-perl
toimii ok.


Mutta kun dpkg -l | grep ^i

antaa tulokseksi libapt-pkg-per

myöskään dpkg -L libapt-pkg-per* ei toimi.

Tuon perl voisi vielä arvata " per" lopusta paketin katkaistussa nimessä, mutta jos paketteja on paljon, niin:

a) iso homma käydä manuaalisesti läpi pitkät nimet

ja

b) kaikissa nimissä ei ole helppo arvata puuttuvaa loppuosaa !

Miten siis saa listan asennetuista paketeista niin, että nimi tulostuu kokonaan, eikä sitä pätkitä, vaikka nimi olisi pitkäkin ?

Olisi kiva ottaa tuollainen lista automatiikalla asennetusta Debian Sargesta 2.6.8 -kernelillä, ennenkuin tyhjennän ko. osion, jolle em. asennus tehtiin, ja asennan siihen saman 2.4 -kernelillä ja ilman automatiikkaa.

Tuossa 2.6 -kernelissä kun ISA -verkkokorttia 3com 3c509 ei ilmeisesti saa toimimaan mitenkään.

muualla esitetyt ohjeet PnP:n poistamisesta DOS -apuohjelmalla ovat virheellisiä: Dos -apuohjelma väittää poistavansa PnP -moodin käytöstä, mutta vaikka katkaisee tämän jälkeen virran ja käynnistää uudelleen, PnP on silti päällä.

Sitäpaitsi: 2.4 -kernelillä sama kortti PnP päällä toimii linuxissa oikein hyvin. Miksi 2.6 -kernelin tekemisessä mokailtiin ?

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu