Nástroje na prácu so softwarovými balíkmi

Existujú štyri hlavné nástroje pre správu balíkov. Robia inštaláciu, mazanie, a upgrade balíkov.

pkgtool

pkgtool(8) je program, ktorý pomocou menu, umožňuje inštaláciu a odstraňovanie balíkov. Hlavné menu vyzerá takto:

Obrázok 16-1. Hlavné menu Pkgtool-u.

Inštalácia je ponúkaná z aktuálneho adresára, iného adresára alebo z floppy diskiet. Jednoducho vyberte inštalačnú metódu, ktorú chcete použiť a pkgtool prehľadá, zvolené miesto, či neobsahuje platné balíky na inštalovanie.

Tiež si môžete pozrieť zoznam nainštalovaných balíkov, ktorý vyzerá takto:

Obrázok 16-2. Prezerací mód Pkgtool-u.

Ak chcete mazať balíky, vyberte si možnosť mazania a dostanete zoznam všetkých nainštalovaných balíkov. Označte tie, ktoré chcete zmazať a stlačte OK. pkgtool ich vymaže.

Niektorí užívatelia dávajú prednosť tejto utilite pred utilitami na príkazovom riadku. Ale treba poznamenať, že utility na príkazovom riadku ponúkajú oveľa viac volieb. Tiež schopnosť urobiť upgrade balíkov, je ponúkaná len cez utility na príkazovom riadku.

installpkg

installpkg(8) obstaráva inštaláciu nových balíkov na systém. Syntax je nasledovná:

   # [ROOT=<path>] installpkg [option] <meno balika>...
      

installpkg poskytuje tri možnosti. Vždy môžete použiť len jednu z nich.

Tabuľka 16-1. Voľby installpkg

VoľbaEfekt
-m Urobí operáciu makepkg v aktuálnom adresári.
-warn Ukáže, čo by sa stalo, keby ste nainštalovali špecifikovaný balík. To je užitočné na produkčných systémoch, takže môžete presne vidieť čo by sa stalo, prv než niečo naozaj nainštalujete.
-r Rekurzívne nainštaluje všetky balíky v aktuálnom adresári a hlbšie. <meno balika> môže obsahovať nahradzovacie znaky, ktoré sa použijú ako vyhľadávacia maska pri rekurzívnom inštalovaní.

Ak nastavíte premennú prostredia ROOT pred spustením installpkg, táto cesta sa použije ako hlavný adresár. To je užitočné na inštalovanie nových diskov pre váš hlavný adresár. Typicky sa namontujú do /mnt alebo niečoho iného než /.

Databázová položka nainštalovaného balíka je uložená do /var/log/packages. Táto “položka” je v skutočnosti jednoduchý textový súbor, jeden pre každý balík. Ak balík má po-inštalačný skript, je zapísany do /var/log/scripts/<menobalika>.

Môžete špecifkovať nikoľko balíkov alebo použiť nahradzovacie znaky v mene balíka. Majte na pamäti, žeinstallpkg vám nepovie ak prepisujete už nainštalovaný balík. Jednoducho nainštaluje nový balík navrch startého. Ak sa chcete zaistiť, že staré súbory z predchádzajúceho balíka, sú bezpečne zmazané, použite upgradepkg.

removepkg

removepkg(8) obstaré odstránenie nainštalovaných balíkov zo systému. Syntax je nasledovná:

   # [ROOT=<path>] removepkg [option] <meno balika>...
      

removepkg ponúka štyri voľby. Vždy môžete použiť len jednu z nich.

Tabuľka 16-2. Voľby removepkg

VoľbaEfekt
-copy Balík je nakopírovaný do adresára s odloženými balíkmi. To vytvorí strom originálneho balíka, bez toho aby bol vymazaný.
-keep Ukladá dočasné súbory vytvorené počas mazania. Naozaj užitočné len pre účely hľadania a odstraňovania chýb.
-preserve Balík je vymazaný, ale až po okopírovaní do adresára s odloženými balíkmi.
-warn Ukazuje, čo by sa stalo, keby ste vymazali balík.

Ak nastavíte premennú prostredia ROOT pred spustením removepkg, táto cesta bude použitá ako hlavný adresár. To je užitočné pre inštalovanie nových diskove pre váš hlavný adresár. Typicky sa namontujú do /mnt alebo niečoho iného než /.

removepkg sa pozrie na iné nainštalované balíky a vymaže len súbory nachádzajúce sa len v balíku, ktorý ste špecifkovali. Tiež vyhľadá po-inštalačný skript pre špecifkovaný balík a odstráni všetky symbolické linky, ktoré boli vytvorené.

Počas procesu mazania, sa zobrazuje report o stave. Po odstránení, je databázová položka balíka, presunutá do /var/log/removed_packages a po-inštalačný skript je presunutý do /var/log/removed_scripts.

Rovnako ako pri installpkg, môžete špecifkovať niekoľko balíkova alebo použiť nahradzovacie znaky v mene balíkya.

upgradepkg

upgradepkg(8) urobí upgrade nainštalovaného Slackware-ového balíka. Jeho syntax je nasledovná:

   # [ROOT=<path>] upgradepkg <meno balika>...
      

alebo

   # [ROOT=<path>] upgradepkg \
   <meno stareho balika>%<meno noveho balika>
      

upgradepkg funguje tak, že najprv nainštaluje nový balík a potom vymaže starý balík, takže staré súbory nezostanú na systéme. Ak sa meno upgradovaného balíka zmenilo, použite syntax so znakom precento aby ste špecifkovali meno starého balíka (toho, ktorý je nainštalovaný) a nového balíka (toho, na ktorý upgradujete).

Ak nastavíte premennú prostredia ROOT pred spustením upgradepkg, táto cesta bude použitá ako hlavný adresár. To je užitočné pri inštalovaní nových diskov pre váš hlavný adresár. Typicky sa namontuje do /mnt alebo niečoho iného než /.

upgradepkg má svoje muchy. Mali by ste si vždy zálohovať vaše konfiguračné súbory. Ak budú prepísané, budete stále mať kópiu originálov pre prípad potrebnej opravy.

Podobne ako priinstallpkg a removepkg, môžete špecifkovať niekoľko balíkov alebo použiť nahradzovacie znaky v mene balíka.

rpm2tgz/rpm2targz

Balíkový manažér Red Hat je dnes dostupný populárny balíkový systém. Mnohé softwarový distribútori ponúkajú svoje produkty v RPM formáte. Pretože to nie je náš pôvodný formát, neodporúčame ľuďom spoliehať sa naň. Ale niekedy sú veci dostupné len ako RPM (dokonca aj zdrojový kód).

Poskytujeme program, ktorý skonvertuje RPM balíky na náš pôvodný .tgz formát. To vám dovoľuje rozbaliť balík (snáď pomocou explodepkg) do dočasného adresára a preskúmať jeho obsah.

Program rpm2tgz vytvorí Slackware balík s príponou .tgz, zatiaľ čo rpm2targz vytvorí archív s príponou .tar.gz .