Dpkg: Difference between revisions
No edit summary |
|||
(27 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
== Sissejuhatus == | |||
Pakihaldussüsteem (ehk package management system, PMS) on kogum tarkvara tööriistu, et automatiseerida pakkide (programm) paigaldamist, uuendamist, konfigureerimist ning eemaldamist. Pakid sisaldavad näiteks metadata't, nagu näiteks paki nimi, kirjeldus, versioon ja palju muud. Kõik Linuxil ja Unixil baseeruvad operatsioonisüsteemid sisaldavad tavaliselt sadu kui mitte tuhandeid tarkvara pakke. | |||
== Mis on dpkg? == | == Mis on dpkg? == | ||
Dpkg on pakihaldussüsteem Debianil baseeruvatele süsteemidele (näiteks ubuntu, knoppix, collax, damn small linux, linex jne), kaasaarvatud Debian. Dpkg kasutatakse .deb pakkide installeerimiseks, eemaldamiseks, pakkide koostamiseks ning muuks vajalikuks. Võrreldes teiste pakihaldustööristadega ei tõmba dpkg pakke alla vaid töötleb neid lokaalselt. Programm on kasutatav ainult käsureal kuid sellele arendatakse ka graafilist kasutajaliidest milleks on gdeb. | Dpkg on pakihaldussüsteem Debianil baseeruvatele süsteemidele (näiteks ubuntu, knoppix, collax, damn small linux, linex jne), kaasaarvatud Debian. Dpkg kasutatakse .deb pakkide installeerimiseks, eemaldamiseks, pakkide koostamiseks ning muuks vajalikuks. Võrreldes teiste pakihaldustööristadega ei tõmba dpkg pakke alla vaid töötleb neid lokaalselt. Programm on kasutatav ainult käsureal kuid sellele arendatakse ka graafilist kasutajaliidest milleks on gdeb. | ||
===On olemas kahte tüüpi Debiani (.deb) pakette:=== | |||
Binaarpaketid, milles sisalduvad käivitusfailidi, konfiguratsioonifailid, juhendid, autoriõigusi ja muud informatsiooni. Binaarpaketid on ära tuntavad faililaienduse poolest, milleks on .deb. Deb pakette paigaldatakse Debiani paketihaldustarkvara dpkg vahendusel. Lisaks saab ka seda teha graafilise liidese läbi nagu näiteks Aptitude. Lühend deb pärineb Debian'ist, mis omakorda pärineb Ian Murdocki eks-naise nimest Debra. | |||
Paketid, milles on lähtekoode sisaldavad DSC failid, mis kirjeldab paketi sisemust ja sisaldab algseid, muutmata lähtefaile (laiend tar.gz). Lähtekoddide lahtipakkimiseks kasutatakse dpkg-source nimelist programmi, mida tavaliselt kasutatakse läbi apt-get käsu. | |||
== Sõltuvused == | |||
===Debiani pakettidel on erinevaid sõltuvuste vorme:=== | |||
'''„Depends“''' mille puhul paketi paigaldus ja töö sõltub otseselt sõltuvast paketist ning ilma selleta pakett ei paigaldu. | |||
'''„Recommends“''' puhul on küll järgneb pakett soovitatud aga sellest on võimalik kasutajal keelduda. | |||
'''„Suggest“''' puhul sisaldab pakett esmasega seotud pakette, mis tihti sooduatavad esimese paketi tööd. | |||
'''„Conflicts“''' puhul ei paigdaldata esimest paketti, kui teine pakett on juba paigaldatud. | |||
'''„Replaces“''' korral, paigaldatud pakett asendatakse uuega. Kõik Debiani paketid sisaldavad prioriteedi märget, mis aitab paketi halduritel pakette grupeerida. | |||
===Kasutatavad priotiteedid on järgmised:=== | |||
'''„Required“''' ehk paketid, mida on vaja süsteemi normaalseks tööks ning ka tööriistu, mida on vaja süsteemivigade eemaldamiseks. Antud pakette ei tohiks masinast eemaldada. | |||
'''„Important“''' ehk tähtsad paketid, mis on vajalikud igal Unixi-laadses süsteemis. | |||
'''„Standard“''' ehk tavapärased, süsteemi toimimiseks vajalikud paketid. Näiteks veebilehitsemiseks, failide laadimiseks ning e-maili saatmiseks. | |||
'''„Optional“''' ehk valikulised paketid, mis ei ole vajalikud süsteemi toimimiseks ega ka standartseteks tegevusteks. | |||
'''„Extra“''' ehk lisapaketid, mis võivad minna vastuollu tähtsamate pakettidega. Üldjuhul on need paketid vajalikud siis, kui kasutaja tõesti teab, milleks need on vajalikud. | |||
== Näited käskudest == | == Näited käskudest == | ||
Line 8: | Line 41: | ||
* Paki paigaldamine. | * Paki paigaldamine. | ||
{|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | {|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | ||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg –i pakinimi | | style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg –i pakinimi.deb | ||
|} | |} | ||
Line 14: | Line 47: | ||
Eemaldamine nii, et konfiguratsiooni failid jäävad alles. | Eemaldamine nii, et konfiguratsiooni failid jäävad alles. | ||
{|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | {|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | ||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg –r pakinimi | | style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg –r pakinimi.deb | ||
|} | |} | ||
Eemaldamine nii, et konfiguratsiooni failid '''EI''' jää alles. | Eemaldamine nii, et konfiguratsiooni failid '''EI''' jää alles. | ||
{|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | {|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | ||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg –P pakinimi | | style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg –P pakinimi.deb | ||
|} | |} | ||
'''NB!''' Enamjaolt ei soovitata eemaldada pakke kasutades dpkg programmi. Kuna näiteks kui eemaldada mõni pakk kasutades käsku '''dpkg -r''', eemaldatakse küll pakk kuid programmid mis on sellest pakist sõltuvad jäävad alles ja ei pruugi hiljem korrektselt töötada. | '''NB!''' Enamjaolt ei soovitata eemaldada pakke kasutades dpkg programmi. Kuna näiteks kui eemaldada mõni pakk kasutades käsku '''dpkg -r''', eemaldatakse küll pakk kuid programmid mis on sellest pakist sõltuvad jäävad alles ja ei pruugi hiljem korrektselt töötada. | ||
Line 25: | Line 58: | ||
* Paki uuendamine. | * Paki uuendamine. | ||
{|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | {|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | ||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg –i pakinimi | | style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg –i pakinimi.deb | ||
|} | |} | ||
Line 32: | Line 65: | ||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg –l | | style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg –l | ||
|} | |} | ||
* Paki info. | |||
Kindla paki versioon ja lühike kirjeldus. | |||
{|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | |||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg –l pakinimi.deb | |||
|} | |||
Kindla paki täpne kirjeldus (arhitektuur, suurus jne). | |||
{|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | |||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg -p pakinimi.deb | |||
|} | |||
* Näita paigaldatud pakis olevaid faile. | |||
{|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | |||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg -L pakinimi.deb | |||
|} | |||
* Kui on vaja teada milline pakk mingi faili tekitas (näiteks /etc kaustas olev '''host.conf''' fail). | |||
{|style="background:lightblue;width:500px;margin:3px;border:1px solid lightgrey" align=centre | |||
| style="padding:0px 0px 0px 80px;font-family:courier;font-size:8pt;" |dpkg -S /etc/host.conf | |||
|} | |||
Tulemus: '''base-files: /etc/host.conf''', mis tähendab, et fail /etc/host.conf kuulub pakile base-files. | |||
== Kasutatud kirjandus == | |||
1. http://www.debianadmin.com/manpages/dpkgmanpage.htm<br> | |||
2. https://help.ubuntu.com/10.04/serverguide/C/dpkg.html<br> | |||
3. http://nixdoc.net/man-pages/Linux/dpkg-source.1.html<br> | |||
4. http://estobuntu.itcollege.ee/trac/estobuntu/wiki/debianipakett<br> | |||
5. http://www.debian.org/doc/FAQ/ch-pkgtools.en.html<br> | |||
6. http://en.wikipedia.org/wiki/Dpkg<br> | |||
7. http://en.wikipedia.org/wiki/Deb_(file_format)<br> | |||
8. http://www.cyberciti.biz/howto/question/linux/dpkg-cheat-sheet.php | |||
== Autor == | |||
'''Andres Sumin, A22<br>''' | |||
Täiendab Ranner Selge - ekstern (2015/2016) | |||
[[Category: Operatsioonisüsteemide administreerimine ja sidumine ]] |
Latest revision as of 10:46, 5 December 2015
Sissejuhatus
Pakihaldussüsteem (ehk package management system, PMS) on kogum tarkvara tööriistu, et automatiseerida pakkide (programm) paigaldamist, uuendamist, konfigureerimist ning eemaldamist. Pakid sisaldavad näiteks metadata't, nagu näiteks paki nimi, kirjeldus, versioon ja palju muud. Kõik Linuxil ja Unixil baseeruvad operatsioonisüsteemid sisaldavad tavaliselt sadu kui mitte tuhandeid tarkvara pakke.
Mis on dpkg?
Dpkg on pakihaldussüsteem Debianil baseeruvatele süsteemidele (näiteks ubuntu, knoppix, collax, damn small linux, linex jne), kaasaarvatud Debian. Dpkg kasutatakse .deb pakkide installeerimiseks, eemaldamiseks, pakkide koostamiseks ning muuks vajalikuks. Võrreldes teiste pakihaldustööristadega ei tõmba dpkg pakke alla vaid töötleb neid lokaalselt. Programm on kasutatav ainult käsureal kuid sellele arendatakse ka graafilist kasutajaliidest milleks on gdeb.
On olemas kahte tüüpi Debiani (.deb) pakette:
Binaarpaketid, milles sisalduvad käivitusfailidi, konfiguratsioonifailid, juhendid, autoriõigusi ja muud informatsiooni. Binaarpaketid on ära tuntavad faililaienduse poolest, milleks on .deb. Deb pakette paigaldatakse Debiani paketihaldustarkvara dpkg vahendusel. Lisaks saab ka seda teha graafilise liidese läbi nagu näiteks Aptitude. Lühend deb pärineb Debian'ist, mis omakorda pärineb Ian Murdocki eks-naise nimest Debra.
Paketid, milles on lähtekoode sisaldavad DSC failid, mis kirjeldab paketi sisemust ja sisaldab algseid, muutmata lähtefaile (laiend tar.gz). Lähtekoddide lahtipakkimiseks kasutatakse dpkg-source nimelist programmi, mida tavaliselt kasutatakse läbi apt-get käsu.
Sõltuvused
Debiani pakettidel on erinevaid sõltuvuste vorme:
„Depends“ mille puhul paketi paigaldus ja töö sõltub otseselt sõltuvast paketist ning ilma selleta pakett ei paigaldu.
„Recommends“ puhul on küll järgneb pakett soovitatud aga sellest on võimalik kasutajal keelduda.
„Suggest“ puhul sisaldab pakett esmasega seotud pakette, mis tihti sooduatavad esimese paketi tööd.
„Conflicts“ puhul ei paigdaldata esimest paketti, kui teine pakett on juba paigaldatud.
„Replaces“ korral, paigaldatud pakett asendatakse uuega. Kõik Debiani paketid sisaldavad prioriteedi märget, mis aitab paketi halduritel pakette grupeerida.
Kasutatavad priotiteedid on järgmised:
„Required“ ehk paketid, mida on vaja süsteemi normaalseks tööks ning ka tööriistu, mida on vaja süsteemivigade eemaldamiseks. Antud pakette ei tohiks masinast eemaldada.
„Important“ ehk tähtsad paketid, mis on vajalikud igal Unixi-laadses süsteemis.
„Standard“ ehk tavapärased, süsteemi toimimiseks vajalikud paketid. Näiteks veebilehitsemiseks, failide laadimiseks ning e-maili saatmiseks.
„Optional“ ehk valikulised paketid, mis ei ole vajalikud süsteemi toimimiseks ega ka standartseteks tegevusteks.
„Extra“ ehk lisapaketid, mis võivad minna vastuollu tähtsamate pakettidega. Üldjuhul on need paketid vajalikud siis, kui kasutaja tõesti teab, milleks need on vajalikud.
Näited käskudest
- Paki paigaldamine.
dpkg –i pakinimi.deb |
- Paki eemaldamine.
Eemaldamine nii, et konfiguratsiooni failid jäävad alles.
dpkg –r pakinimi.deb |
Eemaldamine nii, et konfiguratsiooni failid EI jää alles.
dpkg –P pakinimi.deb |
NB! Enamjaolt ei soovitata eemaldada pakke kasutades dpkg programmi. Kuna näiteks kui eemaldada mõni pakk kasutades käsku dpkg -r, eemaldatakse küll pakk kuid programmid mis on sellest pakist sõltuvad jäävad alles ja ei pruugi hiljem korrektselt töötada.
- Paki uuendamine.
dpkg –i pakinimi.deb |
- Kõikide paigaldatud pakkide näitamine.
dpkg –l |
- Paki info.
Kindla paki versioon ja lühike kirjeldus.
dpkg –l pakinimi.deb |
Kindla paki täpne kirjeldus (arhitektuur, suurus jne).
dpkg -p pakinimi.deb |
- Näita paigaldatud pakis olevaid faile.
dpkg -L pakinimi.deb |
- Kui on vaja teada milline pakk mingi faili tekitas (näiteks /etc kaustas olev host.conf fail).
dpkg -S /etc/host.conf |
Tulemus: base-files: /etc/host.conf, mis tähendab, et fail /etc/host.conf kuulub pakile base-files.
Kasutatud kirjandus
1. http://www.debianadmin.com/manpages/dpkgmanpage.htm
2. https://help.ubuntu.com/10.04/serverguide/C/dpkg.html
3. http://nixdoc.net/man-pages/Linux/dpkg-source.1.html
4. http://estobuntu.itcollege.ee/trac/estobuntu/wiki/debianipakett
5. http://www.debian.org/doc/FAQ/ch-pkgtools.en.html
6. http://en.wikipedia.org/wiki/Dpkg
7. http://en.wikipedia.org/wiki/Deb_(file_format)
8. http://www.cyberciti.biz/howto/question/linux/dpkg-cheat-sheet.php
Autor
Andres Sumin, A22
Täiendab Ranner Selge - ekstern (2015/2016)