Fedora po instalaci. Fedora: správa balíků

Aplikační řešení "1C: Retail 8" automatizuje registraci následujících operací:

  • příchod zboží od protistrany do skladů obchodu;
  • prodej zboží a služeb protistraně;
  • pohyb zboží mezi prodejnami, vnitřními sklady prodejen, prodejnami a sklady obchodního podniku;
  • obchod se soubory zboží vytvořenými jak při prodeji zboží, tak s předprodejní přípravou souboru;
  • vracení zboží od zákazníků včetně vracení po uzavření směny pokladny;
  • inventarizace zásob komodit;
  • evidence příchozích a odchozích hotovostních příkazů přímo na prodejnách;
  • evidence tržeb a na konci směny souhrnný hlášení na pokladně s přihlédnutím k vrácenému zboží za směnu;
  • pohybující se Peníze mezi prodejnami, vnitřními pokladnami prodejen, prodejnami a pokladnami obchodního podniku;
  • práce s akvizičními systémy, účtování plateb za zboží platebními kartami, účtování akvizičních smluv a podmínky pro vrácení/nevrácení živnostenské koncese nabyvatelem při vrácení zboží; pracovat s bankovními úvěry.
  • využití procentuálních slev na slevové karty (fixní a kumulativní slevy), slevy rozdělené podle prodejny, slevy protistranám, slevy z částky účtenky, slevy podle doby platnosti, podle množství zboží, podle druhu platby.
  • podpora komerčního vybavení: fiskální registrátoři, terminály pro sběr dat, čtečky čárových kódů, elektronické váhy, displeje kupujících, akviziční systémy, čtečky magnetických karet.

Aplikační řešení "1C: Retail 8" může pracovat s geograficky distribuovanými informačními databázemi (RIB). Zároveň je zajištěno jasné rozdělení toku dokumentů mezi obchody a informace o všech prodejnách v síti jsou konsolidovány v centrálním uzlu RIB. Pomocí centrálního uzlu můžete rychle vytvořit periferní uzel RIB.

Aplikační řešení "1C: Retail 8" si může automaticky vyměňovat informace s vedením informační systém(zadní kancelář). Tak jako kontrolní systém pro aplikační řešení "1C: Retail 8" lze použít aplikační řešení "Trade Management". Pomocí řídicího systému můžete vytvořit neomezený počet uzlů v aplikačním řešení 1C: Retail 8, které zase mohou být centrálními uzly distribuované informační základny.

Jsou poskytovány mechanismy pro správu uživatelů informační báze vzdálených uzlů RIB z hlavního uzlu aplikačního řešení. Například v hlavním uzlu RIB může správce systému zaregistrovat uživatele infobáze vzdáleného uzlu a nakonfigurovat jeho přístupová práva.

Spolu s víceprodejním účetnictvím bylo implementováno vícepodnikové účetnictví, kdy každý sklad (prodejní patro) lze přiřadit konkrétní organizaci (firmě).

Aplikační řešení "1C: Retail 8" může využívat objednávková schémata pro pohyb, prodej a příjem zboží na skladech obchodů. Objednávkové schéma zajišťuje předběžnou evidenci seznamu zboží potřebného pro příjem nebo expedici ze skladu, přičemž vlastní transakce se zbožím ve skladu je evidována s dokumenty „Odchozí objednávka zboží“ nebo „Příjem objednávky zboží“.

Účtování zásob ve skladech prodejen a účtování hotovosti na pokladnách prodejen je automatizované.

Aplikační řešení umožňuje regulovat maloobchodní ceny pro každou prodejnu z centrálního uzlu. Zároveň můžete obchodu dát právo upravit maloobchodní ceny v závislosti na jeho umístění a přítomnosti konkurence.

Program implementuje mechanismy pro generování cenovek a štítků.

Byly implementovány mechanismy pro automatické stanovení sazby DPH při prodeji zboží ze skladů prodejny. Systém zdanění je zaveden pro každý sklad samostatně. Prodejní podlaží (resp. sklad), ze kterého je nutné produkt prodat, je v době prodeje produktu určeno pokladnou pro prodej produktu a produktovou skupinou, do které (produkt) patří. To umožňuje správně zadávat doklady v obchodech, které používají systém smíšeného zdanění.

Aplikační řešení „1C: Retail 8“ implementuje schémata pro automatizovanou distribuci zboží mezi sklady, kdy při příjmu zboží může operátor distribuovat zásobu mezi sklady (prodejní podlaží) prodejny v závislosti na produktové skupině.

Po úspěšném dokončení instalace Fedora 24 Workstation ještě není připravena k plnému provozu. Navzdory skutečnosti, že vývojáři distribuce již nakonfigurovali mnoho programů pro práci s dokumenty, médii a souborový systém, zbývá ještě pár věcí, které nejsou v distribuci po vybalení.

V tomto článku se podíváme na většinu důležité akce po instalaci Fedory 24. Teprve po dokončení všech těchto kroků bude váš systém zcela připraven k použití. Tento seznam může pokračovat donekonečna, ale budeme zvažovat pouze to nejdůležitější.

1. Dokončete aktualizaci systému

Možná si myslíte, že je to jedno. Od vydání systému však již mohly být některé problémy objeveny a byly pro ně vyvinuty opravy. Mohou být vydány i nové verze programů. Proto aktualizujeme systém na nejnovější verzi:

2. Nastavení názvu počítače

Ke konfiguraci názvu počítače, který se bude zobrazovat v terminálu a dalších programech, použijeme obslužný program hostnamectl. Může nastavit různé druhy názvů hostitelů. Chcete-li zobrazit aktuální název hostitele, zadejte:

Název hostitele můžete změnit pomocí následujícího příkazu:

hostnamectl set-hostname "ztráta"

3. Nastavení statické IP adresy

Servery velmi často používají statické IP adresy. Jedna z prvních věcí, kterou musíte udělat po instalaci fedory, je nastavení sítě. Pokud je to vaše možnost, otevřete a upravte konfigurační soubor eth0 nebo enp2s0 ve složce /etc/sysconfig/network-scripts/:

vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

Zde jsou nastavení, která musíte přidat:

  • BOOTPROTO- protokol pro získání adresy, potřebujeme stat
  • ONBOOT- automatické připojení
  • IPADDR- IP adresu, kterou potřebujete
  • SÍŤOVÁ MASKA- maska ​​vaší sítě
  • BRÁNA- brána, přes kterou bude počítač přistupovat k internetu
  • DNS1- DNS, pomocí kterého potřebujete překládat názvy domén.

Může to být například tato konfigurace:

BOOTPROTO=statický
ONBOOT=ano
IPADDR=192.168.1.1
NETMASK=255.255.255.0
BRÁNA=192.168.1.1
DNS1=202.88.131.90
DNS2=202.88.131.89

Chcete-li použít změny, restartujte síťové služby:

systemctl restart network.service

Pro zobrazení změn můžete použít příkaz:

4. Přidejte úložiště RPMFusion

Nastavení fedory po instalaci by mělo zahrnovat nastavení dalších úložišť. Některé balíčky nejsou v oficiálních repozitářích RHEL a Fedory. Tyto balíčky však můžete nainstalovat z úložiště RPMFusion. Jsou zde proprietární i bezplatné balíčky. Chcete-li přidat úložiště, spusťte příkaz:

sudo rpm -ivh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-24.noarch.rpm

5. Nainstalujte Gnome Tweak

Ve výchozím nastavení nemusí desktopové prostředí Gnome vypadat tak, jak bychom si přáli. Nástroj GNOME Tweak vám pomůže nakonfigurovat mnoho nastavení vzhled Fedora 24, panel, prostor na ploše a další.

Můžete jej nainstalovat otevřením Application Center, vyhledáním Gnome Tweak a kliknutím na tlačítko Instalovat:

6. Připojte online účty

Fedora 24 vám umožňuje přistupovat k online účtům přímo ze systému. Můžete je nakonfigurovat během instalace. Pokud jste to však neudělali, můžete to vždy provést v nastavení na kartě Osobní, online účty:

7. Instalace rozšíření Gnome

Gnome Shell vám umožňuje instalovat rozšíření, která vám usnadní nastavení a správu systému.

Poté nainstalujte příkazem:

rpm nainstalovat teamviewer.rpm

závěry

To nejsou zdaleka všechny akce, které je třeba provést po instalaci Fedory 24, ale hlavní věc je shromážděna zde. Pokud vám něco uniklo, napište do komentářů.

Dříve nebo později budeme muset nainstalovat software, který nepochází z oficiálních repozitářů. Ne všechny balíčky jsou tam dostupné a nejnovější verze nově vydaných programů nejsou vždy dostupné. Vývojáři velmi často zveřejňují balíčky pro nejoblíbenější distribuce na svých oficiálních stránkách. Obvykle se jedná o deb a rpm. Poslední jmenovaný je o něco méně obvyklý, ale pokud používáte distribuci založenou na Red Hat, je to formát balíčku, který potřebujete. Často také můžete online najít knihovny a další komponenty, které nejsou dostupné v zabalených úložištích.

Instalaci jsme probrali dříve deb balíčky v Ubuntu. Tento článek bude podrobně diskutovat o instalaci. rpm balíčky v linuxu.

RPM nebo RPM Package Manager je správce balíčků používaný v distribucích Linuxu založených na Red Hat. Formát souboru tohoto správce balíčků má stejný název.

Tento formát se příliš neliší od stejného Deb. Na jejich podrobné srovnání se můžete podívat v článku co. Zde jen poznamenám, že soubor rpm je běžný archiv cpio, který obsahuje samotné soubory programu a také metadata popisující, kde by měly být nainstalovány. Databáze všech nainstalovaných balíčků se nachází v adresáři /var/lib/rpm. Mezi funkcemi lze poznamenat, že rpm nepodporuje doporučené balíčky, stejně jako závislosti buď-nebo formátu.

Pro správu balíčků, stejně jako v systémech Debian, existuje konzolová nízkoúrovňová utilita stejného jména - rpm. Tomu se budeme dále věnovat v článku. V různé systémy Používají se různí správci balíčků, například Red Hat používá Yum, Fedora používá DNF a OpenSUSE používá zypper, ale nástroj rpm bude fungovat na všech těchto systémech.

Instalace balíčků RPM v systému Linux

Nejprve se podívejme na syntaxi samotného nástroje rpm:

$ balíček možností rpm -mode

Nástroj může pracovat v jednom z režimů:

  • -q- žádost, získávání informací;
  • -i- instalace;
  • -PROTI- kontrola balíku;
  • -U- Aktualizace;
  • -E- smazání.

Podívejme se v tomto článku pouze na nejzajímavější možnosti programu, které budeme potřebovat:

  • -proti- ukázat detailní informace;
  • -h- zobrazit stavový řádek;
  • --platnost- provést akci násilně;
  • --uzliny- nekontrolovat závislosti;
  • --nahradit soubory- nahradit všechny staré soubory novými bez varování;
  • -i- získat informace o balíčku;
  • -l- seznam souborů balíčku;

Nyní, když již máte představu o tom, jak pracovat s tímto nástrojem, můžete zvážit instalaci balíčku rpm na Linux. Nejjednodušší instalační příkaz bude vypadat takto:

sudo rpm -i název_balíčku.rpm

Pro práci s příkazem aktuální adresář musí existovat složka s balíčkem. Zde nastavíme režim instalace a přeneseme soubor balíčku. Pokud je instalace úspěšná, utilita nic nezobrazí, pokud dojde k chybě, budete o ní vědět.

Chcete-li zobrazit podrobnější informace během procesu instalace, použijte volbu -v:

sudo rpm -iv název balíčku.rpm

Můžete také povolit zobrazení stavového řádku během procesu instalace:

sudo rpm -ivh název balíčku.rpm

Ke kontrole, zda je balíček nainstalován, již musíme použít režim dotazu:

sudo rpm -q název balíčku

Balíček můžete také okamžitě odstranit, pokud jej nepotřebujete:

sudo rpm -e název_balíčku

Ale rpm, stejně jako dpkg, má jednu významnou nevýhodu. Program nemůže vyřešit závislosti. Pokud požadovaný balíček není v systému, jednoduše obdržíte chybovou zprávu a balíček se nenainstaluje.

Pro automatické stahování závislosti během instalace rpm linux, musíte použít správce distribučních balíčků. Podívejme se na několik příkazů pro nejoblíbenější distribuce RPM. Na RedHat a dalších distribucích, které používají Yum, použijte tento příkaz:

sudo yum --nogpgcheck localinstall název_balíčku.rpm

První možnost zakáže ověření klíče GPG a druhá říká, že nainstalujeme místní balíček. Ve Fedoře dnf dělá věci ještě jednodušší:

sudo dnf nainstalovat název_balíčku.rpm

Správce balíčků Zypper a OpenSUSE fungují stejně dobře:

sudo zypper instalační název balíčku.rpm

Takto snadné je nainstalovat rpm se závislostmi. Ale ne každý rád pracuje v konzoli; mnoho nových uživatelů chce používat GUI vyřešit všechny problémy, včetně tohoto. Dále se podíváme na několik takových utilit.

Instalace souboru RPM v GUI

Pokud používáte OpenSUSE, je to velmi snadné. Univerzální systémový konfigurátor YaST mimo jiné umožňuje instalovat balíčky rpm. Můžete to udělat s správce souborů výběrem kontextová nabídka pro otevření souboru pomocí Yastu nebo spuštěním příkazu:

yast2 -i název_balíčku.rpm

Ve Fedoře můžete ke stejnému účelu použít správce aplikací distribuce. Dříve existovalo několik univerzálnějších nástrojů pro řešení tohoto problému, ale nyní jsou všechny zastaralé.

závěry

Nyní víte, jak nainstalovat soubor rpm v Linuxu. Ve skutečnosti je to velmi jednoduché a neexistuje pouze jeden způsob, ale několik. Ačkoli grafické pomůcky je tu o něco méně než v Ubuntu. Ale konzolové nástrojeúplně stačí. Pokud máte nějaké dotazy, zeptejte se v komentářích!

Systémy FOSS obecně a Fedora konkrétně jsou organizovány na dávkovém základě. Stejně tak ve formě balíčků libovolné doplňkové programy pro ně vytvořené nezávislými vývojáři. A proto je jedním z důležitých úkolů uživatele integrace balíčků do jejich systému. Balíčky pro Fedoru jsou distribuovány ve formátu rpm.

formát rpm

Vynález formátu balíčků rpm a odpovídajícího nástroje pro jejich správu měl velmi velký dopad na distribuci Linuxu obecně. Musíte mu tedy věnovat trochu pozornosti.

Příběh

Formát balíčku RPM (který tehdy znamenal Red Hat Package Manager) a stejnojmenná utilita pro manipulaci s takovými balíčky, schopná sledovat závislosti a hlásit jejich porušení, hrály velmi velkou roli v představení Linuxu široké veřejnosti. Je pravda, že tento nástroj nevěděl, jak vyřešit závislosti, a dodnes se nenaučil: tento úkol řeší „pokročilejší“ nástroje pro správu balíčků. Ale ve srovnání s nástroji tichých balíčků Slackware, které vůbec nesledovaly závislosti, to bylo z pohledu běžných uživatelů velké zlepšení.

Původ RPM systému (pochopíme tím jak sadu utilit, tak formát balíčků, se kterými pracují) se ztrácí v temnotě staletí. První verze Red Hatu používaly systém RPP, který umožňoval instalaci balíčků jedním příkazem, dotazování se na informace o nich a kontrolu závislostí. Sestavení balíčků pro něj však vyžadovalo značnou úpravu zdrojů autora, což bylo pro správce distribuce stresující.

Paralelně s raným Red Hatem se nějakou dobu vyvíjela distribuce Bogus, nyní pro mnohé málo známá. Mělo svůj vlastní systém balíčků - PMS (Package Management System), jehož autorem je Rikard E. Faith. Měl slabý mechanismus pro dotazování na informace o balíčcích a jednoduše neexistovala žádná kontrola jejich závislostí. Ale balíčky pro PMS bylo možné sestavit přímo z autorových zdrojů, bez jakýchkoliv úprav.

Během přípravy 2. vydání Red Hatu Rickard Veit společně s Dougem Hoffmanem na základě smlouvy s Red Hat napsali systém PM (Package Management), který zahrnoval nejlepší vlastnosti RPP a PMS. Přestože se prakticky nikdy nepoužíval, sloužil jako jeden ze základů RPM.

Samotný RPM systém vytvořili Mark Ewing (jeden ze spoluzakladatelů společnosti) a Erik Troan, kteří navázali na všechny úspěchy svých předchůdců – vývojářů RPP, PMS a PM. Jeho verze, připravená pro testovací verze druhého vydání, byla kvůli rychlosti napsána v Perlu, což způsobovalo řadu problémů například při načítání z diskety (a v té době to bylo docela obvyklým způsobem Start Linuxu). A těsně před vydáním Red Hat 2.0 byl systém kompletně přepsán v C, databáze balíčků byla přepracována pro větší spolehlivost a výkon a pro využití funkcí RPM vývojáři třetích stran Byla vytvořena knihovna rpmlib. Jinými slovy, RPM systém získal téměř podobu, v jaké ho známe dnes, od té doby byl podroben pouze opravám chyb a kosmetickým vylepšením.

Systém RPM (to jest formát a nástroj), který se stal standardem a veřejně dostupným ve verzi Red Hat 2.0, vydané v září 1995, si okamžitě získal popularitu mimo nadřazený systém. Brzy byly použity v Caldera Linuxu (později nazvaném OpenLinux), který byl zpočátku přesným klonem Red Hatu. V návaznosti na to přešla distribuce Suse (geneticky potomek Slackware) na balení ve formátu rpm. Všechny následující klony a deriváty Red Hatu, jako je Mandrake, samozřejmě také používaly RPM.

Jako očitý svědek mohu dosvědčit, že na přelomu let 1996–1997 (doba mých prvních experimentů s Linuxem) byl systém RPM rozšířený, považován za stabilní a používaný daleko za hranicemi nativní distribuce.

Obecná informace

Formát rpm za svou dlouhou životnost prošel různými změnami, ale ve své obecné linii si zachoval jak své charakteristické vlastnosti, tak zpětně kompatibilní až do současnosti. Jeho aktuální verze z řad těch, kteří jsou v tuto chvíli oficiálně podporováni stejnojmenným projektem (02.01.2011), je 4.8.1. Používá se v nesčetných distribucích, které představují jak přímé klony Red Hatu (CentOS, Scientific Linux, Oracle Enterprise Linux), tak jeho deriváty, i když se vzdálily od progenitoru, jako je Mandriva nebo Altlinux. Navíc je vidět i v některých systémech, které s ním nejsou geneticky příbuzné (například ve všech variantách Suse).

Paralelně s obecnou verzí rpm se vyvíjí i její aktualizovaná verze označovaná jako rpm5. Byl vytvořen Jeffem Johnsonem, který byl dříve jedním z hlavních vývojářů „běžných“ otáček. Podle jeho názoru, novou verzi výrazně zlepšil oproti svému předkovi, za což však bylo nutné zaplatit nekompatibilitu mezi těmito dvěma formáty. Proto rpm5 není oficiálně podporováno ani projektem rpm, ani žádnou z běžných distribucí založených na rpm. Používá se, pokud vím, pouze v distribuci PLD a podle oznámení bude použit ve verzi Mandriva 2011.1

Navzdory skutečnosti, že uvedené distribuce založené na rpm (a mnoho dalších neuvedených) teoreticky používají stejný formát balíčku, ve skutečnosti se detaily jejich návrhu liší. To platí zejména pro zdrojové balíčky (o kterých bude řeč samostatně). Na těchto stránkách se však omezím na zvažování balíčků rpm pro distribuci Fedora. Pravda, to, co o nich bylo řečeno, bude platit i pro RHEL, CentOS, Scientific Linux, Oracle Enterprise Linux, ASPLinux.

Názvosloví balíků

Jako součást distribuce Fedora najdete odlišné typy balíčky formátu, o který máme zájem.

Za prvé se rozlišují binární rpm balíčky a ty samé, ale se zdrojovými kódy. Jak název napovídá, první obsahují předkompilované součásti distribučního balíčku, jako například:

  • spustitelné binární soubory;
  • případně knihovny nezbytné pro jejich fungování;
  • konfigurační soubory (nebo alespoň jejich příklady);
  • dokumentace.

Zdrojové balíčky obsahují své tarbally, záplaty nutné k přizpůsobení balíčků autora cílovému systému a různé druhy servisních informací.

Je velmi snadné rozpoznat oba podle jejich názvů, vytvořených podle určitých pravidel, která budeme zvažovat na příkladu nejnázornějšího balíčku - samotného balíčku rpm

Názvy binárních balíčků rpm jsou tvořeny podle následujícího schématu:

Rpm-4.8.1-6.fc14.x86_64.rpm

kde rpm je název balíčku, 4.8.1 je číslo větve, verze a konkrétní vydání balíčku, 6 je číslo sestavení aktuální verze této distribuce, fc14 je název a verze (tj. je v tomto příkladu Fedora verze 14), x86_64 - architektura, pro kterou byl balíček sestaven.

Název zdrojového balíčku bude něco jako:

Rpm-4.7.1-6.fc12.src.rpm

Vidíte, že jediný rozdíl je v dodatečné příponě src, která symbolizuje, že máme co do činění se zdrojovým balíčkem, a ne s předkompilovaným binárním souborem. A je zřejmé, že koncept architektury pro zdrojové kódy nedává smysl - měly by být (teoreticky) sestaveny pro kterýkoli z nich.

Mezi binárními balíčky lze najít i takové, které nejsou vázány na žádnou architekturu – identifikují se dodatečnou příponou noarch. Patří mezi ně skripty v interpretovaných jazycích, jako je Perl, Python atd., balíčky písem, dokumentace a tak dále. Takto bude například vypadat balíček pro jedno z rodiny písem Dejavu:

Dejavu-sans-fonts-2.30-2.fc12.noarch.rpm

Již bylo zmíněno výše, že binární rpm balíčky mohou obsahovat knihovny funkcí nezbytných pro jejich fungování. Toto je však spíše výjimka: stejně jako u všech systémů podobných UNIXu existuje v distribucích založených na rpm tendence kompilovat knihovny jako samostatné balíčky. Navíc je každá knihovna obvykle prezentována ve formě dvou balíčků.

První balíček obsahuje skutečný kód funkcí knihovny, které jsou v každém případě potřeba; například balíček rpm je poskytován balíčkem knihovny

Rpm-libs-4.7.1-6.fc12.x86_64.rpm

Druhý balíček obsahuje hlavičkové soubory, které jsou nutné pouze při sestavování balíčků sami - v každodenním životě se bez nich obejdete:

Rpm-devel-4.7.1-6.fc12.x86_64.rpm

Když jsme se zabývali názvoslovím rpm balíčků, můžeme přejít k otázce jejich vnitřní struktury – tedy k formátu samotnému.

Uspořádání binárních rpm balíčků

Binární balíček rpm obsahuje dvě součásti. Na jedné straně je to sada zkompilovaných souborů, jako jsou spustitelné binární soubory a knihovny, doprovázené potřebnými konfiguracemi, dokumentací atd., připravené k začlenění do hierarchie systémových souborů.

Na druhou stranu balíček obsahuje metainformace – popis sestavený podle určitých pravidel. Obsahuje název balíčku, verzi a číslo sestavení, informace o vývojáři a jeho hlavním webu, seznam souborů, jejich pozici v hierarchii souborů a seznam závislostí. V případě potřeby zde mohou být přítomny instalační a konfigurační skripty. To vše dohromady vám umožňuje kontrolovat integritu balíčku, sledovat závislosti, zajistit dokončení samotné instalační procedury a také „čisté“ odstraňovat balíčky.

Komponenty balíčku rpm jsou zabaleny do archivu cpio - jednoho z nejstarších komprimovaných archivačních nástrojů v UNIXu. Dříve, až do Fedory verze 11 včetně, to bylo prováděno pomocí nástroje gzip. Počínaje verzí 12 Fedory jsou balíčky rpm komprimovány pomocí algoritmu LZMA, který poskytuje mnohem vyšší stupeň komprese – i když za cenu času stráveného nad tím. Což však uživateli nezpůsobí žádné nepříjemnosti – soubory lzma se totiž rozbalují paradoxně téměř stejnou rychlostí jako gzip. Ale jejich stahování se samozřejmě děje mnohem rychleji, což nemůže potěšit majitele „tlustých“ a levných kanálů: za těchto podmínek je instalace balíčků přes internet rychlejší než z místních médií.

Vraťme se však k tomu, co je uvnitř balíčku otáček. Chcete-li to provést, nejprve rozbalte balíček pomocí libovolného standardního nástroje (například rpm2cpio nebo pomocí nástroje rpm2tgz) a uvidíte, co se stane:

$ ls rpm-4.7.1-6/bin/ etc/usr/var/

To znamená, že vidíme ty součásti balíčku, které budou začleněny do hierarchie souborů cílového systému.

Nejjednodušší způsob, jak představit druhou komponentu, je pomocí Midnight Commander. Podle klíče F3(balíček rpm je stále považován za příklad) zobrazí všechny metainformace v souhrnné podobě. Za prvé, toto bude formální popis balíčku:

Název: rpm Přemístění: (nelze přemístit) Verze: 4.8.1 Dodavatel: Fedora Project Release: 5.fc14 Datum sestavení: Út 10. srpna 2010 11:43:21 Datum instalace: (není nainstalováno) Sestavení hostitele: x86-12.phx2 .fedoraproject.org Skupina: Systémové prostředí/Základní Zdroj RPM: rpm-4.8.1-5.fc14.src.rpm Velikost: 2035701 Licence: GPLv2+ Podpis: RSA/SHA256, St 11. srpna 2010 05:58:10, ID klíče 421caddb97a1071f Packager: URL projektu Fedora: http://www.rpm.org/ Shrnutí: Systém správy balíčků RPM Popis: RPM Package Manager (RPM) je výkonný systém pro správu balíčků řízený příkazovým řádkem, který dokáže instalovat, odinstalovat, ověřit, dotazování a aktualizace softwarových balíků. Každý softwarový balíček se skládá z archivu souborů spolu s informacemi o balíčku, jako je jeho verze, popis atd.

Význam všech polí je intuitivní. Jen vás žádám, abyste věnovali pozornost poli Skupina: pokud jde o správu balíčků pomocí systému yum, budeme muset pamatovat na skupinové členství balíčku.

Instalační skript pak bude následovat:

Posttrans skriptlet (pomocí /bin/sh): # XXX toto je neohrabané a ošklivé, samotný rpm by to měl zvládnout dbstat=/usr/lib/rpm/rpmdb_stat if [ -x "$dbstat" ]; pak pokud "$dbstat" -e -h /var/lib/rpm 2>&1 | grep -q "neodpovídá verzi prostředí | Neplatný argument"; pak rm -f /var/lib/rpm/__db.* fi fi exit 0

Rwxr-xr-x 1 kořenový kořenový adresář 20392 10. srpna 11:42 /bin/rpm drwxr-xr-x 2 kořenový adresář 0 10. srpna 11:42 /etc/rpm -rwxr-xr-x 1 kořenový adresář 7424 10. srpna 11: 42 /usr/bin/rpm2cpio...

Potom soubory knihovny:

Rw-r--r-- 1 kořenový kořenový adresář 40537 10. srpna 11:42 /usr/lib/rpm/makra drwxr-xr-x 2 kořenový adresář 0 10. srpna 11:42 /usr/lib/rpm/platform drwxr-xr -x 2 root root 0 10. srpna 11:42 /usr/lib/rpm/platform/amd64-linux ...

Rw-r--r-- 1 kořenový adresář 44206 7. prosince 2009 /usr/share/doc/rpm-4.8.1/COPYING -rw-r--r-- 1 kořenový adresář 639 7. prosince 2009 /usr/share/ doc/rpm-4.8.1/CREDITS -rw-r--r-- 1 root root 496233 Jun 11 2010 /usr/share/doc/rpm-4.8.1/ChangeLog.bz2 -rw-r--r-- 1 root root 656 7. prosince 2009 /usr/share/doc/rpm-4.8.1/GROUPS ...

A nakonec proměnné soubory:

Drwxr-xr-x 2 kořenový kořen 0 10. srpna 11:42 /var/lib/rpm -rw-r--r-- 1 kořenový adresář 0 10. srpna 11:42 /var/lib/rpm/Basenames -rw-r --r-- 1 kořenový kořen 0 10. srpna 11:42 /var/lib/rpm/Conflictname -rw-r--r-- 1 kořenový adresář 0 10. srpna 11:42 /var/lib/rpm/Dirnames .. .

Všechny tyto informace lze prohlížet po částech - upevněním kurzoru na soubor v Midnight Commander

Rpm-4.7.1-6.fc12.x86_64.rpm

a lisování Vstupte.
Nyní uvidíme seznam „metainformačních“ souborů obsažených v balíčku:

/.. │-on-up-│ 16. prosince 12:04 /Info │ 0 │ SC 21 00: 00 00 00 │CPIO │ 0 │S 21 00:00 Záhlaví │ * 1185 │00 Sstal S. 21 00:00 *UPGRADE │ 39│Září 21 00:00

Obsah souborů lze snadno uhodnout. CONTENTS.cpio je tedy úplný seznam všech souborů a cest k nim:

Rwxr-xr-x 1 kořenový kořenový adresář 20808 21. září 17:30 ./bin/rpm drwxr-xr-x 2 kořenový kořenový adresář 0 21. září 17:30 ./etc/rpm ...

a tak dále. Soubor HEADER obsahuje stejný popis, který jsme právě viděli F3, *INSTALL a *UPGRADE - spustitelné skripty pro odpovídající účel. A v adresáři /INFO je mnoho malých souborů, ze kterých se nakonec shromažďují souhrnné metainformace. Z nich se zaměřím pouze na REQUIRENAME - toto je notoricky známý seznam závislostí, který pro balíček rpm vypadá asi takto:

/bin/bash /bin/sh /bin/sh config(rpm) = 4.8.1-5.fc14 coreutils curl db4-utils libacl.so.1())(64bit) ...

Ve skutečnosti balíček rpm v sobě neobsahuje žádnou hierarchii souborů. A skutečnost, že se nám jako taková jeví, je zcela zásluha Midnight Commandera, který ji obnovuje do podoby, v jaké byla před montáží.

Databáze RPM

Databáze balíčků rpm je komponenta nezbytná pro fungování systému: poskytuje možnost získávat informace o balíčcích, aktualizovat je a mazat. Vytváří se během instalace systému v adresáři /var/lib/rpm a mění se při každé operaci s balíčky.

Databáze rpm balíčků využívá Berkeley DB, prastarý (rok stáčení 1986), jednoduchý (nerelační) DBMS, ale rychlý, efektivní, a proto hojně používaný dodnes.

Databázové soubory RPM jsou binární a ani kouzlo „nočního velitele“ vám nedovolí v nich rozeznat nic srozumitelného. Nezbývá tedy než vzít na slovo autory dokumentace, že

  • soubor Packages je hlavní a ukládá indexovaná pole záhlaví balíčku,
  • soubory Basenames, Group, Requireversion a další se používají k optimalizaci dotazů do databáze a
  • soubory __db.001, __db.002 a tak dále - obsahují informace o tom, které soubory byly změněny a vytvořeny při instalaci a odinstalaci balíčků.

Databáze rpm balíčků je nezbytná pro normální fungování tohoto systému - její poškození s sebou nese nepříjemné následky, a proto existují způsoby, jak obnovit její integritu v nouzových situacích, které zvážíme v průběhu času.

utilita ot./min

Poté, co jsme se obecně seznámili se strukturou rpm balíčků, podívejme se, co se s nimi dá dělat. Začněme stejnojmenným nástrojem určeným pro práci s jednotlivými balíčky. V dávných dobách to bylo požehnání i prokletí pro začínající uživatele distribuce Red Hat, jejích klonů a derivátů.

Úvod

Jak již bylo řečeno, utilita rpm se stala požehnáním pro uživatele distribuce Red Hat a všech jejích nástupců. Protože je to osvobodilo od potřeby nezávislé kompilace: téměř všichni vývojáři, kteří nepohrdli distribucí svých balíčků v binární formě, je sestavili ve formátu rpm a služby jako http://rpmfind.net usnadnily jejich nalezení na internetu. Pamatuji si, že v těch letech bylo v oběhu následující životní maximum:

s pomocí rpm a internetu lze z jakékoli distribuce udělat přes noc dvojčata

Ukázalo se však také, že je to prokletí uživatelů, především začátečníků: při sledování závislostí balíčků během instalace a odebrání je utilita rpm vůbec nevyřešila, pouze hlásila o zjištěném pobuřování, a to ve formě, která byla dost nesrozumitelná pro začátečníka.

Ty časy upadly v zapomnění: nadešel věk úložišť balíčků a nástrojů pro práci s nimi, jako jsou apt-rpm, urpmi a nakonec yum - hlavní postava další série poznámek. Které se starají o běžnou manipulaci s balíčky. Utilita otáček je však stále nejvíc jednoduché prostředky pro operace s jednotlivými balíčky, zejména těmi, které nejsou součástí oficiálních úložišť. A v některých případech – například při připojování úložišť třetích stran – může být téměř nenahraditelná.

Pojďme se tedy trochu seznámit s jeho základními, nejoblíbenějšími v Každodenní život, funkce. Toto je jen krátké shrnutí pro praktickou aplikaci. Navíc je zaměřen na ty, kteří se dosud nezabývali systémy založenými na otáčkách za minutu. Ti, kteří budou křičet z publika - dejte mi podrobnosti, pošlu je předem tetě Manye, ona vám všechno řekne.

obecné charakteristiky

Nástroj rpm, stejně jako dpkg v distribucích založených na Deb, je pouze jedním ze zástupců celé rodiny, vyvinuté spolu se stejnojmenným formátem jako součást nezávislého projektu.

Z doplňkových utilit stojí za zmínku rpm-build - nástroj pro tvorbu vlastních balíčků a rpm2html - utilita pro extrakci metainformací z balíčků a jejich prezentaci v lidské podobě (kompletní seznam celé rodiny naleznete). Na začátku této série stránek však budeme hovořit pouze o otáčkách samotných.

Existuje pět hlavních režimů použití nástroje rpm:

  • dotazovací režim (dotaz);
  • ověřovací režim (ověřit);
  • instalační režim (instalace);
  • režim aktualizace (upgrade);
  • režim mazání.

K dispozici je také režim vytváření balíčků, ale o tom zatím nebudeme mluvit.

Každý režim odpovídá jedné ze základních možností příkazu rpm. Mohou být doprovázeny dalšími možnostmi, buď specifickými nebo společnými pro všechny režimy. První bude zohledněn při popisu režimů. Mezi posledními jsou nejžádanější následující:

  • -? , --help zobrazí podrobnou nápovědu k použití příkazu rpm (krátká nápověda se vytiskne jako odpověď na příkaz bez jakýchkoli voleb nebo argumentů);
  • --version vypíše číslo verze balíčku rpm;
  • --tiché zobrazení minima zpráv při provádění příkazu (obvykle pouze chybové zprávy);
  • -v zobrazí podrobné zprávy o průběhu příkazu.

Existuje také několik možností „mimo režim“, které se používají zejména k obnovení databáze balíčků.

Argumentem příkazu rpm je obvykle název souboru balíčku; často může být několik takových argumentů (v limitu - kolik chcete). V některých případech stačí uvést krátký název balíčku - například pro náš stálý příklad stačí rpm . V jiných situacích je vyžadován celý název s uvedením čísla verze, sestavení, distribuce, architektury – například rpm-4.8.1-5.fc14.x86_64.rpm. A pokud soubor balíčku není v aktuálním adresáři, budete k němu muset uvést úplnou cestu k němu, řekněme /var/cache/akmods/ .

Režim požadavku...

... slouží k získání informací o balíčku, zejména jeho stavu (zda je nainstalován v systému). Hlavní volba dotazu je -q (nebo --query), jako odpověď na ni se zobrazí celý název balíčku:

Rpm -q rpm rpm-4.8.1-5.fc14.x86_64

Vezměte prosím na vědomí, že krátký název balíčku je dostatečný jako argument s volbou request a samotný příkaz může být zadán jménem běžný uživatel.

Další možnosti závisí na účelu požadavku. Přítomnost balíčku v systému se tedy kontroluje pomocí následujícího příkazu:

$ rpm -qa název_balíku

kde další volba -a (nebo --all) specifikuje požadavek na všechny balíčky dostupné v databázi. Pokud je balíček nainstalován, odpověď na tento příkaz bude

$ rpm -qa opera opera-10.00-4440.gcc4.shared.qt3.x86_64

Pokud ne, bude pozvánka vrácena příkazový řádek.

Formální popis balíčku lze získat pomocí příkazu

$ rpm -qi rpm

odpověď na kterou by byla:

Název: rpm Přemístění: (nelze přemístit) Verze: 4.8.1 Dodavatel: Fedora Project Release: 5.fc14 Datum sestavení: Út 10. srpna 2010 11:43:21 Datum instalace: Ne 31. října 2010 10:28:06 Sestavení hostitele: x86-12.phx2.fedoraproject.org Skupina: Systémové prostředí/Základní Zdroj RPM: rpm-4.8.1-5.fc14.src.rpm Velikost: 2035701 Licence: GPLv2+ Podpis: RSA/SHA256, St 11. srpna 2010 05:58 :10, ID klíče 421caddb97a1071f Packager: URL projektu Fedora: http://www.rpm.org/ Shrnutí: Systém správy balíčků RPM Popis: RPM Package Manager (RPM) je výkonný systém pro správu balíčků řízený příkazovým řádkem, který lze nainstalovat , odinstalování, ověřování, dotazování a aktualizace softwarových balíků. Každý softwarový balíček se skládá z archivu souborů spolu s informacemi o balíčku, jako je jeho verze, popis atd.

Je snadné vidět, že se jedná o stejnou část záhlaví (HEADER), kterou jsme dříve viděli prostřednictvím Midnight Commander.

Další možnost l nám umožní extrahovat obsah CONTENTS.cpio:

$ rpm -ql rpm /bin/rpm /etc/rpm /usr/bin/rpm2cpio /usr/bin/rpmdb /usr/bin/rpmquery /usr/bin/rpmsign /usr/bin/rpmverify ...

Výše uvedená diskuse se týkala získání informací o nainstalovaném balíčku. Mnohem zajímavější je však získat informace o balíčku, který není nainstalován – zjistit, zda je v našem podnikání potřeba či nikoli. A to je možné – přidáním k –qi doplňková možnost p a zadáním celého názvu balíku a cesty k němu. A protože odinstalovaný balíček s největší pravděpodobností leží na nějakém síťovém zdroji, cesta bude URL, například:

$ rpm -qip http://mirror.yandex.ru/fedora/linux/releases/14/Fedora/x86_64/os/Packages/joe-3.7-5.fc13.x86_64.rpm

Což vypíše přesně stejné informace jako při dotazu na místní balíček:

Jméno: joe Přemístění: (nelze přemístit) Verze: 3.7 Prodejce: Vydání projektu Fedora: 5.fc13 Datum sestavení: St 10. února 2010 09:57:06 Datum instalace: (není nainstalováno) Hostitel sestavení: x86-03.phx2.fedoraproject Skupina .org: Aplikace/Editoři Zdroj RPM: joe-3.7-5.fc13.src.rpm Velikost: 1177186 Licence: GPLv2+ Podpis: RSA/SHA256, St 28. července 2010 21:59:42, ID klíče 421caddb197a1 URL: http://sourceforge.net/projects/joe-editor/ Shrnutí: Snadno použitelný, nemodální textový editor Popis: Joe je výkonný, snadno použitelný, nemodální textový editor. Používá stejné klávesové zkratky WordStar používané ve vývojovém prostředí Borland.

Další možnost f vám umožňuje určit název balíčku, který vlastní určitý soubor:

$ rpm -qf /usr/lib/rpm/rpm2cpio.sh rpm-4.8.1-5.fc14.x86_64

V režimu dotazu je možných mnohem více možností, které lze v případě potřeby nalézt v manuálové stránce balíčku rpm.

Zkontrolovat režim...

...poskytuje ověření integrity nainstalovaného balíčku. To se provádí porovnáním jeho souborů s jejich protějšky z původního balíčku podle parametrů, jako je typ, velikost, kontrolní součet (MD5), vlastnictví a atributy přístupu. Hlavní volba pro tento režim je -V ; bez dalších voleb, zadáním názvu balíku, zkontroluje správné umístění svých souborů v hierarchii souborů.

V případě úspěšného absolvování testu, to je úplná shoda zavedených a původní soubory, nezobrazí se žádné zprávy - vrátí se pouze příkazový řádek. Pokud jsou mezi nimi v některém parametru nesrovnalosti, zobrazí se v symbolické podobě. Neshody jsou označeny takto:

  • 5 - Kontrolní součet MD5
  • S - velikost
  • L - symbolický odkaz
  • T - datum změny souboru
  • D - zařízení
  • U - uživatel
  • G - skupina
  • M - režim (včetně oprávnění a typu souboru)
  • ? - soubor nelze přečíst

Odpovídající parametry jsou označeny jednou tečkou. Bohužel, nemohu uvést příklady - bez ohledu na to, do kterého balíčku šťouchnu, abych to zkontroloval, všechno se ukáže být v pořádku. Ale nechci to záměrně kazit.

A kromě toho výstup jakékoli zprávy nemusí vždy znamenat, že s nainstalovaným balíčkem není něco v pořádku. Pokud se například pokusíme ověřit náš modelový balíček rpm pomocí příkazu

$ rpm -V rpm

ve výstupu uvidíme následující:

Prelink: /bin/rpm: alespoň jedna ze závislostí souboru se od předběžného propojení S.?...... /bin/rpm prelink: /usr/bin/rpm2cpio: alespoň jedna ze závislostí souboru změnila změněno od předběžného propojení S.?...... /usr/bin/rpm2cpio

To jednoduše znamená, že spustitelné soubory rpm balíčku po jeho instalaci prošly předběžnou propojovací procedurou (prelink - co to je, vám řeknu včas). Tím samozřejmě ztratili identitu se svými jmenovci z původního balíčku.

Další možnosti režimu skenování umožňují ověřit konkrétní soubor:

$ rpm -Vf /usr/bin/rpm2cpio

porovnejte nainstalovaný balíček s jeho původním balíčkem rpm:

$ rpm -Vp cesta2/úplný_název_balíčku

a také provést úplnou kontrolu všech nainstalovaných balíčků:

# ot./min -Va

Protože výstup posledního příkazu bude velmi dlouhý, má smysl ho použít v rootweigheru s příkazem jako less nebo most . Můžete také použít příkaz grep k identifikaci pouze balíků; obsahující nesrovnalosti s originálem podle jednoho z výše uvedených kritérií. Například struktura příkazů

# ot/min -Va | grep S

vytvoří seznam paketů, které se liší velikostí od originálů a kanálu

# ot/min -Va | grep 5

zjistí rozdíly v kontrolních součtech.

Rád bych upozornil na změnu vzhledu příkazového řádku při použití další možnosti a: pokud jsou předchozí ověřovací příkazy obvykle spouštěny jménem běžného uživatele, je lepší provést úplné ověření všech balíčků s právy správce, protože pouze on má právo přístupu k některým souborům a adresářům systému.

Kromě těch, které jsou uvedeny, existuje také mnoho možností ověření. digitální podpis a veřejné klíče - jako obvykle je najdete na stránce man (8) ot./min.

Režimy instalace a aktualizace...

... úzce souvisí. Jejich hlavní možnosti jsou:

  • -i (od instalace - nezaměňovat s volbou režimu dodatečného dotazu) nainstaluje balíček, který není v systému;
  • -F aktualizovat nainstalovaný balíček na novější verzi;
  • -U je obecná možnost instalace a aktualizace: při použití bude nainstalovaný balíček aktualizován a odinstalovaný balíček bude nainstalován.

Je důležité, aby byl rozsah voleb -i a -F přesně vymezen: příkaz specifikující první odmítne být proveden, pokud existuje stará verze stejnojmenný balíček. A naopak - příkaz s druhou možností zobrazí chybovou zprávu, pokud v systému není nainstalována předchozí verze. Proto se nejčastěji používá generická možnost -U. K úspěšnému provádění příkazů z kterékoli z těchto možností jsou samozřejmě vyžadována oprávnění správce.

Argumenty příkazů instalace a aktualizace musí být úplná jména souborů balíčků s uvedením místní cesty k nim nebo síťové adresy. Argumenty, tedy balíčky k instalaci nebo aktualizaci obecný případ můžete nastavit tolik, kolik chcete. A v některých případech je nutné zadat dva argumenty v příkazu.

Již dříve jsem řekl, že nástroj rpm nejen instaluje balíčky, ale také kontroluje jejich závislosti. I když je bohužel neřeší, ale pouze hlásí porušení. Například pokus o přímou instalaci kdebase

Rpm -ihv http://mirror.yandex.ru/fedora/linux/releases/14/Fedora/x86_64/os/Packages/kdebase-4.5.2-2.fc14.x86_64.rpm

vytvoří dlouhý seznam neuspokojených závislostí:

Chyba načítání http://mirror.yandex.ru/fedora/linux/releases/14/Fedora/x86_64/os/Packages/kdebase-4.5.2-2.fc14.x86_64.rpm: Selhaly závislosti: kdebase-libs(x86 -64) = 6:4.5.2-2.fc14 potřebuje kdebase-6:4.5.2-2.fc14.x86_64

To je, jak se říká, každodenní záležitost a jak takovou situaci řešit, je jasné. Protože instalace tak velkých balíčků s tak složitými závislostmi přímo přes rpm je nevděčný úkol, byly pro to vynalezeny jiné nástroje. Například mňam, ke kterému se časem dostaneme.

Existují situace, které jsou více odlišné: zdánlivě jednoduchý balíček při pokusu o instalaci vyžaduje další jako závislost. A to se zase odmítá instalovat, protože odkazuje na absenci prvního. Takže právě teď, když jsem začal upgradovat jeden z mých experimentálních systémů na verzi „rawhide“, jsem čelil skutečnosti, že balíček fedora-release-rawhide-15-0.3.noarch.rpm nechtěl být instalován bez fedory -uvolnění -15-0,3.noarch.rpm - a naopak.

Právě v takových případech musíte zadat všechny vzájemně závislé balíčky jako argumenty pro jeden příkaz:

# rpm -ivh http://URL/path2/(fedora-release-15-0.3.noarch.rpm, fedora-release-rawhide-15-0.3.noarch.rpm)

Navíc, což je typické, pořadí jmen nehraje žádnou roli - pokud jsou specifikovány všechny vzájemně závislé balíčky, pak se všechny úspěšně nainstalují.

V poslední tým náhle a bez varování se objevily dvě možnosti - v a h. První z nich však již byla zmíněna dříve - tato doplňková možnost all-mode instruuje zobrazovat podrobné zprávy o průběhu jakýchkoli úkolů. A volba -h (nebo --hash) poskytuje pohodlnou formu prezentace tohoto výstupu.

Kromě základních možností instalace a aktualizace existuje mnohem více doplňkových možností, ale za nimi jako vždy stojí teta Mana.

Režim smazání...

... se často ukazuje jako neméně populární než režimy instalace a aktualizace. Tento úkol však není obtížný a obecně se provádí takto:

# rpm -e název balíku

Zde stačí název základního balíčku, ale samozřejmě jsou vyžadována práva superuživatele.

Pokud se během mazání přeruší závislosti, zobrazí se chybová zpráva:

Chyba: Neúspěšné závislosti:

Samozřejmě to lze ignorovat pomocí další volby --nodeps. Nebo, pokud jste si plně jisti, že máte pravdu, vložte do příkazového řádku pro odstranění názvy souborů balíčků, které mají závislosti spojené s tím, který se má odstraňovat.

To vše je však plné důsledků - takže v nejednoznačných případech je lepší nepoužívat k odstranění souborů příkaz rpm. Jak však již bylo řečeno, yum existuje, aby se uživatel netřásl.

Úložiště

Utilita rpm je určena především pro instalaci jednotlivých balíčků z libovolného zdroje – lokálního nebo síťového (například z vývojářských stránek), ale hlavně z toho prvního. Systém správy balíčků yum je zaměřen na přístup k úložištím balíčků, především síťovým. I když jeho použití s ​​místními repozitáři také není zakázáno.

Co je úložiště

Nejprve si zkusme odpovědět na otázku, co je to úložiště. Protože jeho přítomnost je dnes jedním z hlavních dystro-definujících znaků.

Přeloženo do ruštiny slovo úložiště prostředek úložný prostor— a to je to, co jazykoví puristé (také známí jako ti, kteří si raději říkají gramatika nacista). Jak už to ale v životě bývá, lidé pro ně přijali jiné jméno – repo nebo v našem jazyce v brazilské azbuce, tuřín. Proč v množném čísle bude zřejmé z následujícího příběhu. Jako synonymum preferuji termín blbost.

Samotné úložiště lze skutečně, na první přiblížení, definovat jako úložiště pro balíčky speciálně shromážděné pro danou distribuci, ke kterému je možný volný přístup (mluvíme pouze o bezplatných systémech).

Dostupnost serveru ukládajícího balíčky však nestačí na to, aby se mohla nazývat úložištěm. Balíčky v úložišti musí být strukturovány podle určitých principů, které jsou vlastní dané distribuci. Systém jejich ukládání musí zajistit jejich doplňování, aktualizaci a hlavně zachování integrity a konzistence balíčků ve vztahu k závislostem a to pro všechny aktuálně podporované verze distribuce.

Jinými slovy, balíčky v úložišti musí být doprovázeny databázemi – stejnými, které používá systém správy balíčků dané distribuce a také její systém pro vytváření balíčků.

Kromě toho je velmi žádoucí, aby bylo úložiště zrcadleno na několika nezávislých serverech - ze zřejmých důvodů. Pravda, není to nezbytný požadavek. Přítomnost zrcadel je však jedním z důvodů použití slova úložiště v množném čísle.

Nyní se podívejme, jak všechny tyto obecné úvahy vypadají v praxi – ve vztahu k repozitářům Fedory.

Fyzická struktura úložišť

Fyzicky jsou úložiště Fedory sada vnořených podadresářů na serverech ftp nebo http a někdy mají poměrně složitou a ne zcela transparentní strukturu. Jeho znalost není pro uživatele nezbytná – ale v řadě nouzových situací nebude nadbytečná. A protože tato struktura není nikde popsána, alespoň v ruštině, věnujme jí trochu pozornosti.

Netrpěliví čtenáři však mohou rovnou přejít k další části – o logické struktuře úložišť. A do současnosti se bude utvářet jen tehdy, když to bude potřeba.

Struktura hlavního úložiště

Hlavní, abych tak řekl, úložiště balíčků, jak asi tušíte, se nachází na adrese a dále do hloubky. V praxi se tam však uživatel téměř nikdy nedostane: jak uvidíme v části o správě balíků, tento systém jej automaticky odesílá...

ne, ne tam, kde sis myslel do míry své zkaženosti, ale k nejrychlejšímu zrcadlu. Navíc je fyzicky a přesně nejrychlejší tento moment- protože se to nekontroluje zónovou příslušností a jinými formálními charakteristikami, ale odpovědí na skutečnou žádost. Pokud je samozřejmě nainstalován příslušný plugin pro yum - ale o tom budeme hovořit o něco později.

Takže zadáním něčeho jako http://download.fedoraproejct.org do řádku prohlížeče náš sovětský uživatel skončí na serveru s adresou URL jako http://mirror.name_rek.ru/fedora/linux/ (a je to možné, že dokonce a vůbec ne ru). Nebudu vyslovovat jméno právě tohoto jména - řeka - kompletní seznam možných možností je k vidění zde http://mirrors.fedoraproject.org/publiclist. A dát přednost jednomu z nich znamená, jak by řekl Shurik, ukázat nespravedlnost tomu druhému jméno řeky.

Samozřejmě, že struktura všech jméno řeky je identický, takže jej lze uvažovat na příkladu libovolného zrcadla.

Takže jakmile jsme na river_name/fedora/linux/, vidíme následující adresáře:

Jak asi tušíte, adresář development obsahuje balíčky, které jsou ve stavu vývoje (zde je důležitý podadresář /development/rawhide/, ke kterému se časem vrátíme), zatímco adresář aktualizací obsahuje nedávno aktualizované balíčky. Ale katalog verzí je přesně to, co nás v tuto chvíli zajímá.

12 13 14

a testovací podadresář. Někdy je prázdný, obsah v něm se objeví, když se alfa verze příštího vydání oddělí od vývojové větve (stejná rawhide).

Pokračujme v lezení po hierarchickém stromu. Ve větvi vydání vidíme následující podadresáře:

Vše Fedora Live

První obsahuje balíčky různé verze a sestavy vyrobené během životnosti vydání. První, jak název napovídá, obsahuje aktuální aktualizace sestavení balíčků, zatímco druhý obsahuje obrazy LiveCD pro obě podporované architektury (i686 a x86_64). Obojí bude včas projednáno. Ale budeme pokračovat v prolézání adresáře Fedory - zejména proto, že jej lze považovat za příklad struktury libovolného adresáře na serverech projektu.

Takže v adresáři fedora/linux/releases/14/Fedora/ můžete vidět následující podadresáře:

Zdroj i386 x86_64

Druhý z nich obsahuje zdrojové rpm balíčky (tzv. *.src.rpm), o kterých bude také pojednáno samostatně. První a třetí obsahují sestavy pro 32bitové a 64bitové architektury. Je zřejmé, že uvnitř jsou naprosto stejné, takže se podívejme na jejich vnitřnosti na příkladu nyní relevantnější architektury x86_64.

Iso jigdo os

První obsahuje obrazy instalačních disků - DVD, sadu CD a disk pro instalace sítě(netinst), o kterém bude řeč v části o instalaci systému. Druhý obsahuje soubory metadat pro jigdo (Jigsaw Download), velký systém distribuce souborů (in v tomto případě- obrazy stejných instalačních disků) a slouží stejnému účelu jako předchozí. No a ve třetím, v podadresáři Packages, jsou skutečně umístěny požadované balíčky.

Kromě toho v adresáři fedora/linux/releases/14/Fedora/x86_64/os/ můžete vidět soubory služeb, jako jsou klíče GPG pro autentizaci, soubory s popisem úložiště (v podadresářích repodata a repoview), soubory pro vytváření vlastních obrazy zaváděcí disky (v podadresářích images a isolinux), které nás v tuto chvíli nezajímají.

Pokud jde o obsah adresáře Packages, je zastoupen rpm balíčky - těmi, které jsou přímo podporovány v rámci projektu Fedora.

Struktura úložiště RPMFusion

Hlavní úložiště však nevyčerpává seznam balíčků dostupných pro naši distribuci. Existuje také úložiště pro další balíčky spravované dobrovolníky v rámci samostatně hostovaného projektu RPMFusion.

Je umístěno skutečné úložiště dalších balíčků. V něm vidíme dva adresáře – free a nonfree. To první určitě svobodný software(mimochodem v hlavním úložišti Fedory jsou k dispozici pouze tyto), druhý je pro programy, jejichž distribuce podléhá určitým omezením. Které přesně - k této otázce se vrátíme později.

Vnitřní struktura obou adresářů je stejná. Obsahují podadresáře el a fedora. První obsahuje balíčky backportované z RHEL a nyní nás nezajímá. Druhý obsahuje podadresáře:

Vývoj/ vydání/ aktualizace/

stejně jako soubory s popisem úložiště.

Účel adresářů je víceméně jasný z jejich názvů (k této problematice se vrátíme později), zaměříme se tedy pouze na adresář releases. Obsahuje podadresáře pro půl tuctu nejnovějších vydání, včetně některých, které jsou mnohem „hlubší“ než ty, které jsou podporovány v hlavním úložišti. V každém z nich uvidíme jediný podadresář Everything. A obsahuje již známé „architektonické“ podadresáře:

Ladění/os/

První, jak asi tušíte, obsahuje informace o ladění, které nás nyní nezajímají. Ale ve druhém - skutečné balíčky. Včetně balíčku popisu hlavního úložiště - rpmfusion-free-release . Ten samý, jehož instalace jednoznačně vede k připojení této „vodnice“. A v odpovídajícím podadresáři adresáře nonfree bude podobný balíček pojmenován odpovídajícím způsobem - rpmfusion-nonfree-release .

Struktura úložiště RFRemix

Pro uživatele původní Fedory stačí uvedená úložiště v čisté podobě. Pro naše rusky mluvící spoluobčany je však obeznámenost s repozitářem russianfedora, ne-li povinná, pak více než žádoucí.

Nachází se ve stejnojmenném adresáři na následující adrese (pokud vím, zatím jediné). A jeho struktura je následující: na první úrovni vnoření jsou podadresáře

  • build/ se soubory s popisem úložiště,
  • vydání/ s obrazy instalačních disků a LiveCD a
  • russianfedora/, obsahující skutečné balíčky.

V tuto chvíli nás zajímá pouze poslední podadresář. Obsahuje tři podadresáře:

  • fixes/ , který představuje jakousi deltu mezi základním a doplňkovým balíčkem původní Fedory na jedné straně a RFRemixem na straně druhé;
  • free/ , určený pro zcela bezplatné balíčky ruského projektu Fedora;
  • nonfree/ , určený pro balíčky ruského projektu Fedora, jehož distribuce je omezena zákony některých zemí (nikoli však našich).

Složení všech tří kategorií bude podrobněji rozebráno v další části – nás zatím zajímá pouze fyzická struktura odpovídajících adresářů.

Je identický: každý z nich obsahuje podadresáře el/ a fedora/ pro stejné účely jako v RPM Fusion. V podadresáři fedora/ jsou zase podadresáře development/, releases/ a updates/ a v podadresáři releases/ jsou adresáře pro počty hlavních (hlavních) vydání, aktuálně od 10 do 15.

V každém adresáři vydání vidíme jeden podadresář Everything/, který obsahuje podadresáře pro obě podporované architektury - i386/ a x86_64/ a podadresář source/ pro zdrojové balíčky. A konečně o patro níže jsou podadresáře debug/ a os/ jasného (tedy stejného jako v RPM Fusion) účelu.

Další úložiště

Výše popsaná úložiště budou většině uživatelů stačit téměř pro všechny příležitosti. V řadě případů však existuje potřeba dalších balíčků, které z toho či onoho důvodu nejsou zahrnuty v oficiálních „tuřínech“ - možná ještě nejsou zahrnuty. Typickým příkladem dnešní doby je prohlížeč Chromium: nelze jej nalézt ani v RPM Fusion, ani v ruské Fedoře.

A zde nejprve přijde na pomoc repozitář Fedora People - je určen speciálně pro balíčky shromážděné nezávislými správci. Obsahově se nekryje s oficiálními a „polooficiálními“ repozitáři, nicméně pokud vím, jeho balíčky jsou testovány na kompatibilitu s nimi, a proto je lze bez obav používat.

Struktura úložiště Fedora People je extrémně jednoduchá: na zadané adrese uvidíte mnoho adresářů, jejichž názvy opakují názvy balíčků, které obsahují. V rámci kteréhokoli z nich bude řada podadresářů pro podporovanou řadu verzí – lišících se v různé případy. A podadresář každého vydání obsahuje tři standardní podadresáře - i386/, SRPMS/ a x86_64/, obsahující soubor s popisem úložiště a skutečné soubory balíčků.

V některých případech může být zajímavé úložiště ATrpms. Obsahuje četné balíčky multimediálního obsahu, specializované sestavy jádra a bohaté ovladače pro grafické karty Nvidia (včetně starších modelů, které již nelze najít na oficiálních stránkách společnosti). S úplný seznam balíčky naleznete a můžete se podívat na seznam podporovaných verzí.

V článcích a recenzích věnovaných Fedoře můžete najít odkazy na mnoho dalších dodatečných repozitářů pro tuto distribuci – jejich seznam lze vidět například v odkazech ze stejných ATrpms. Téměř všechny však ztratily význam. Některé (Livna, Freshrpms, Dribble) jsou nyní sjednoceny jako součást RPM Fusion. Jiné obsahují balíčky pro velmi staré verze Fedory. No, úložiště Tigro se stalo základem pro ruskou Fedoru - i když samo o sobě bude užitečné pro líné majitele starších verzí Fedory.

Logická organizace úložišť

Fyzická struktura repozitářů Fedory, zejména hlavní, se zdá docela matoucí. Naštěstí to uživatel, jak již bylo řečeno, prakticky řešit nemusí. V 99 případech ze 100 mu stačí navigovat v jejich logické organizaci, kterou nyní zvážíme.

Klasifikace programů

Na úvod bychom si měli říci, proč se dříve slovo repozitáře používalo v množném čísle. A k tomu musíte vzít v úvahu klasifikaci balíčků přijatých v této distribuci. Je extrémně jednoduchý a zahrnuje pouze dvě kategorie.

Druhá kategorie se nazývá nonfree - název není příliš dobrý, protože evokuje asociace se všemi druhy zboží, padělky nebo nutnost jakýchkoli plateb při jejich používání. Ve skutečnosti je to úplně špatně. Kategorie nesvobodná zahrnuje výhradně ty volné (ve smyslu pivo zdarma) a legálně distribuované programy. Na jejich distribuci však platí určitá omezení. A proto je z pohledu FSF nelze nazvat skutečně svobodnými (ve smyslu svobodné slovo).

Do kategorie nonfree patří jednak programy distribuované pouze v binární podobě – bez omezení, ale také bez zdrojového kódu. Příklady takových programů jsou proprietární ovladače zařízení, jako jsou grafické karty a síťová zařízení nebo Flash movie player od Adobe, Prohlížeč Opera, některá písma a hry.

Na druhou stranu pojem nesvobodný zahrnuje programy, které jsou dostupné ve zdrojovém kódu a zdá se, že zcela zdarma. Jejich distribuce je však v některých státech z právních důvodů omezena. Typickým příkladem jsou multimediální kodeky založené na algoritmech, které byly patentovány v jedné zemi, která patenty na algoritmy uznává. Ve většině ostatních zemí, které na to nepomyslely, je jejich distribuce naprosto legální.

Kategorie free a nonfree jsou tedy logicky nezávislá úložiště – a to je první důvod, proč se tento termín obvykle objevuje v množném čísle. O dalších důvodech se dozvíme na další straně.

Hlavní úložiště

Nejprve se podívejme na hlavní úložiště, která se automaticky připojují při instalaci RFRemix.

Hlavní oficiálně udržované úložiště projektu Fedora obsahuje pouze bezplatné balíčky. A proto se nazývá jednoduše a nenáročně - fedora, s dekódováním ve formě čísla verze a cílové architektury, například: Fedora 15 - x86_64.

Ale RPMFusion obsahuje jak zcela bezplatné, tak i „nesvobodné“ balíčky. Proto odděluje dvě úložiště – rpmfusion-free a rpmfusion-nonfree.

Vnitřní struktura ruské Fedory je ještě „bohatší“ - má tři úložiště:

  • russianfedora-fixes jsou balíčky, které jsou dostupné v repozitářích fedora nebo rpmfusion, ale prezentované ve verzích, které jsou buď novější, nebo přizpůsobené našim podmínkám a prostředí cyrilice; balíčky v tomto úložišti nejsou rozděleny na bezplatné a nesvobodné;
  • russianfedora-free - zcela bezplatné balíčky, které nejsou dostupné v repozitářích fedora nebo rpmfusion;
  • russianfedora-nonfree - „ne zcela zdarma“, ve smyslu naznačeném na poslední stránce, balíčky, které také chybí v repozitářích původní Fedory.

Toto je hlavní větev úložiště pro každé vydání. Je doprovázeno několika dalšími, které jsou naplněny balíčky, které jsou aktualizovány mezi vydáními:

  • aktualizace - pro samotnou Fedoru;
  • rpmfusion-free-updates - pro Rpmfusion-free;
  • rpmfusion-nonfree-updates - pro rpmfusion-nonfree;
  • russianfedora-fixes-updates - pro ruské opravy Fedory;
  • russianfedora-free-updates - pro ruskou Fedoru zdarma;
  • russianfedora-nonfree-updates - pro ruskou Fedoru Nonfree.

Kromě toho každý z hlavních repozitářů odpovídá speciálním větvím balíčků, které se ladí a testují: fedora-debuginfo a fedora-updates-testing - pro hlavní úložiště a vytvořené stejným způsobem - pro všechny ostatní.

A nakonec je tu větev úložiště rawhide. Obsahuje balíčky pro další verzi distribuce, která se právě vyvíjí, a samozřejmě zahrnuje stejné repozitáře jako ve větvích stabilního vydání: fedora-rawhide, rpmfusion-free-rawhide, rpmfusion-nonfree-rawhide a tak dále.

Výše uvedené platí pro úložiště binárních balíčků pro architektury i386 a x86_64. Existují však i úložiště zdrojového kódu – fedora-source, rpmfusion-free-source a tak dále.

Stejně jako ostatní systémy musíte nainstalovat další programy. Na operačních sálech Systémy Windows vše je velmi jednoduché, zpravidla existuje instalační setup.exe, který pomáhá nainstalovat software. Ale v Linuxu jsou věci trochu jiné. Jak nainstalovat programy na Linux? Nyní se podívejme na tuto otázku.

Linux má několik typů instalačních balíčků a každá distribuce má svůj vlastní formát balíčku. Distribuce Fedora, Mandriva, Red Hat a Suse používají standardní instalaci Linux RPM vyvinutou společností Red Hat. Soubor balíčku RPM je obvykle pojmenován název_programu-verze.rpm.

Dalším velmi oblíbeným formátem je DEB. Používá se v Debianu, Ubuntu, Knoppix a Mepis. Má jméno název_programu-verze.deb.

A přistoupili jsme k archivu. Obvykle se jedná o přípony .tar , .tar.gz , .tgz. Měly by být rozbaleny a poté nainstalovány/zkompilovány.

Instalaci programu musíte provést jako superuživatel.

Rychlá navigace

Instalace programů na Debian, Ubuntu

Existuje mnoho nástrojů pro práci s balíčky DEB, ale nejčastěji používaný je apt-get, který je součástí standardní sady nástrojů. Chcete-li nainstalovat aplikaci, zadejte příkaz:

apt-get instalační název_balíčku

Pro odstranění:

apt-get remove package_name

APT ukládá lokální databázi všech balíčků dostupných k instalaci a odkazy na místa, kde je lze získat. Tuto databázi je třeba čas od času aktualizovat pomocí příkazu:

aktualizace apt-get

Chcete-li aktualizovat zastaralé balíčky (programy) v počítači, zadejte následující příkazy:

aktualizace apt-get; apt-get upgrade

Instalace programů na Fedora, Red Hat

Nástroj podobný APT je yum. Chcete-li stáhnout a nainstalovat balíček z nakonfigurovaného úložiště, napište příkaz:

yum instalační název_balíčku

yum odstranit název_balíčku

Místní databáze yum se neukládá, takže není třeba ji aktualizovat. Chcete-li nainstalovat aktualizace, použijte příkaz:

mňam aktualizace

Vyberte něco konkrétního k aktualizaci:

yum update package_name

Instalace programů v Mandrivě

Mandriva má vlastní sadu nástrojů pro práci s balíčky, nazvanou urpmi. Pro instalaci:

urpmi název_balíčku

Vymazat:

urpme název_balíčku

Aktualizujte místní databázi seznamem balíčků:

urpmi. aktualizace -a

Instalace aktualizací:

urpmi --automatický výběr

Instalace programů z archivů (tarballů)

Pro archivy komprimované pomocí GZIP (gz, gz2 atd.) uděláme toto:

tar -xvz f název souboru

U archivů komprimovaných pomocí BZIP (bz, bz2 atd.) je to trochu jiné:

tar -xvjf název souboru

Příkazy Tar:

  • x – extrahovat soubory z archivu;
  • v – podrobné zobrazení informací na obrazovce;
  • f – Požadovaná možnost. Pokud není specifikováno, Tar se pokusí použít pásku místo souboru;
  • z – archiv procesu komprimovaný pomocí gzip;
  • j – zpracovat archiv komprimovaný pomocí bzip.

Po provedení příkazu se vytvoří složka s názvem podobným názvu balíčku. Poté musíte tuto vytvořenou složku otevřít příkazem:

cd název_složky

Dále si v rozbaleném archivu přečtěte pokyny v souboru README, pokud existuje. V každém případě, pokud je program zkompilován jako spustitelný soubor, pak bude balíček obsahovat soubor .sh, obvykle nazvaný install.sh