Nevim, jak kdo to vidi, ale ja mam z RPM dost smisene pocity. Na jedne strane pomaha resit problemy zavislosti baliku, na druhe strane tyto problemy vytvari. Napr. mam distribuci Perl od XX a chci k ni pridat nejake moduly od YY (samozrejme vse v RPM) a pri instalaci modulu je mi hlasena nesplnena zavislost - chybejici Perl, coz neni pravda, Perl tam je. A toto je jen lehci pripad. Tim chci rict, ze ac je RPM jakysi standard, neni standardem uplnym. Pokud bude kazdy pojmenovavat baliky se stejnym obsahem jinak, popr. do stejne pojmenovanych baliku strkat jiny obsah, muze si uzivatel hodit masli. Copak se nikomu nestalo, ze mu RPM nahlasilo jako nesplnenou zavislost absenci nejake knihovny xxxx-y.z.so? Nevim jak kdo, ale ja, pokud jsem o nejakou takovou knihovnu nekdy predtim nezakopl, absolutne nevim, v jakem baliku ji hledat. Narky by mohly dale pokracovat, ale na toto tema bylo jiz receno vice nez dost. Strucne - zatim celkem chaos.
Situace, kterou popisujete v clanku nastava prave a predevsim u rpm, neco si stahnete, pokusite se nainstalovat a hned mate failed dependencies. Takze nakonec stejne skoncite u --nodeps a --force a mate v tom stejne hokej (navic instalator RH instaluje spoustu zbytecnosti).
(pokud je to jinak nez pisu, omlouvam se, prvni a posledni verze RH kterou jsem videl byla 4.2)
Je pravda, že nodeps a force je občas třeba, ale nevím jak jinak (než chybou závislostí) řešit to, že nějaký balík prostě nemáte. Já obvykle místo --nodeps použiju radši ftp. Je samozřejmě možné, stáhnout chybějící balíky automaticky a třeba je i automaticky nainstalovat, ale to už by správa balíčků zašla trochu dál, než si podle mě může dovolit. Navíc toto se snaží řešit různé instalační nástroje typu helix-update.
K tomu, že nějaký program hlásí chybějící soubor xxx.so.x. Je fakt, že lepší je když hlásí chybějící balík, ale díky tomu, že si každý dělí a pojmenovává balíky jak chce je to problém. Nicméně nevidím problém v tom, použít rpmfind (http://www.rpmfind.net).
Vážení, nevíte někdo, zda rpm umí i winlinux? Já jsem se chtěl s Linuxem krátce seunámit, než si jej nainstaluji ve verzi RH 7.0 a nepodařilo se mi rpm baliky nainstalovat. Zkoušel jsem to jak přes konsoli, atk i přes grafický program pro instalace (už nevím jak se jmenoval) a pořád to psalo "Instalace se nezdařila".
Dále by mě zajímalo: pokud instaluji rpm, tak si nemůžu zvolit do kterého adresáře to budu instalovat, nebo je to dané?
díky z aodpověď
Ja som skusal winlinux tiez (asi pred rokom), ale ten je naozaj iba na vyskusanie. RPM sice podporoval, ale balicky, ktore boli nainstalovane neboli v RPM databaze. Cize instalacia dalsich balickov nevidela ziadne uz nainstalovane balicky. Jediny sposob ako nieco doinstalovat bolo ignorovat zavislosti. Ale toto je v praxi asi uplne nepouzitelne.
Odporucam vyskusat tiez Lin4win (nie Win4lin:) - ktory je dostupny napr. v Mandrake linuxe (http://www.mandrake.org) a vraj umoznuje naistalovat linux na existujucu windows partition.
Toto je jen uvodni clanek, proto jsem problemy s RPM v nem nezminoval. Presto je to lepsi, kdyz vam rpm nahlasi chybejici balicek nez kdyz vam havaruje program pro chybejici knihovnu. A ke stupiditam autoru balicku, kteri si je ruzne pojmenovavaji ci je delaji tak, aby se nedaly pouzit v jinych distribucich, na toto tema jsem uz napsal par (nastvanych) clanku na LinuxWorldu.
Na rpmfind jsem pozapomnel, urcite jej taky popisu.
Winlinux je zalozen na slackwaru, takze na rpm muzete zapomenout (leda byste si nainstaloval konverzni nastroj, hmm ted jsem zapomnel jeho nazev, umi prevadet rpm, deb a tgz mezi sebou).
No jako uzivatel Slacka (nejsem systemak, sem fakt normalni uzivatel), vam celkem system rpm zavidim, i pres ty mouchy. Bohuzel je ten system zavislosti tak promakany, ze (prosim nekamenovat, mam to z druhy ruky) minimalni instalace je na cca 200MB. Nicmene obcas sem zdechly si neketere veci kompilovat a tak pouzivam www.linuxmafia.org, nebo rpm2tgz ;).
ten konverzny nastroj sa vola alien. mohli by ste sa zmienit o apt (uz to nie je len zalezitost Debianu). automaticky stahuje aj zavisle baliky -- takze "apt-get install perl-balik" doinstaluje aj perl. neviem teraz, ktora distribucia ma apt aj pre rpm, ale viem, ze take nieco uz existuje.
takisto existuje "Red Carpet" od Ximianu, co je take graficke apt. je to velmi pekna aplikacia.
btw, pouzivam debian ;) a problemy so zavislostami nemam uz daaavno
Zatim jsem nikde nevidel nastroj umoznujici celkovy pohled na naistalovane RPM balicky. Jedna se o moznost provadet i slozitejsi akce, jako treba odinstalaci jednoho balicku XXX a zaroven vsech, ktere slouzily _jen_ k pokryti zavislosti tohoto XXX. A nebo zobrazit cely strom zavislosti s velikostmi v MiB jednotlivych vetvi. Dale pak se muze hodit nastroj, ktery ukaze odkud je dany soubor/program YYY a co vsechno lze odinstalovat spolecne s timto jiz nepotrebnym/nechtenym YYY.
Zatim se mi zda, ze uzivatel je naprosto sam proti halde balicku a sice muze delat vse, co chce, ale casto nevi co, protoze je tech balicku moc. Aspon ja to tak vidim.
ja pouzivam Mandrake a ten ma (skoro) bezvadny program urpmi, ktery, pokud si jej dobre nastavite, nainstaluje i balicky, ktere potrebuje instalovane rpm
napr.:
[root@styx /root]# urpmi nil
To satisfy dependencies, the following packages are going to be installed (4 MB):
SDL_mixer-1.0.6-2mdk smpeg-0.4.0-10mdk esound-0.2.20-2mdk audiofile-0.1.9-5mdk SDL-1.1.4-7mdk nil-000516-1mdk
Is it ok? (Y/n)
Divte se, jeste existuji jedinci pouzivajici Slackware 3.0 :-) Do svojeho notebooku se 4 MB ram totiz nekteri jinou distribuci ani nedaji, a daji-li, nespusti, a spusti-li, stoji to za prd.
A tak jsem, chca nechca, tuhle distribuci zacal znova pouzivat a kdyz narazim problem, ze nejaka binarka nejdou spustit, tak pomoci prikazu ldd zjistim, jake to binarko potrebuje knihovny a ty pripadne sezenu. Hledat, jake knihovny ktere binarko potrebuje metodou pokus-omyl je sice zabavne, ale jen jistou dobu. Prikaz ldd to odedavna resi, jen si zkuste treba ldd /usr/games/doom/linuxsdoom :)
Zdravim vespolek,
a mohu rici nez jedine - od RedHatu (byla to moje prvni distribuce, ketrou jsem si nainstaloval asi pred peti lety) jsem velice rychle utekl prave ke slacku a RPM bylo jednim z hlavnich duvodu, pomineme-li perverzi tisicu mrnavych rc souburku v SysV inicializaci. Kolecko typu 'nelze nainstalovat novou package, dokud je tam stara' - 'odinstaluj starou: stara package neexistuje' a jine zerty RPM databaze mne pozvolna presvedcily o tom, ze autori src.tar.gz balicku moc dobre vedi, proc tvori ./configure... Navic vlastni kompilaci clovek dosahne bezkonfliktni optimalizace produktu pro sve konkretni prostredi - zkuste se nekdy podivat, co vsechno takovy skript kontroluje a zjistuje, nez nakonfiguruje makefile. Ono se opet vlastne jedna o stret mysleni typu 'straightforward' (a la windows a linuxove binarni balicky) a systemove cistoty (t.j. kompilace ze zdrojovych kodu, pravda, za cenu casu a trochy mozkoveho sadla).
RPM je sikovny nastroj pro jednorazove rychle nainstalovani stroje pro beznou praci, pro dlouhodobe pouzivani, navic spojene s experimentovanim, muze ale byt velkou pohromou.
Tisice malych souboru v adresarich jsou jedinou moznou cestou vyvoje (pomineme-li hnusna binarni zverstva ve stylu Windowsich registru). Pokud je vse v jednom textovem souboru, neni mozne davkove tento soubor modifikovat (komentare, zmena formatovani, ...). Takze pokud chcete, aby balik obsahoval svuj startovaci skript a treba jeste nejakou periodicky vykonavanou ulohu
(treba rotovani logu), a aby toto vsechno bylo mozne neinteraktivne nainstalovat, je potreba operaci "edituj konfiguracni soubor" nahradit jednodussi operaci "pridej soubor
do spravneho adresare". Odtud tedy SysV startovaci skripty, /etc/cron.d, /etc/logrotate.d a dalsi. Myslim, ze Red Hat software v tomto udelal znacny kus prace a mnohe dalsi UNIXy
maji co dohanet.
Co se tyce balicku, tak to asi u jednoho pocitace, pokud jste aspon trochu zkuseny uzivatel, neocenite. Vyhody RPM nebo jineho balickoveho softwaru se ukazou teprve tehdy, kdyz mate spravovat desitky pocitacu nebo pokud jste uplny zacatecnik.
-Yenya
vyhody u desitek pocitacu?
To neberu, pokud uz o to stojim, si muzu balicky vytvaret i na Slacku a pak je aplikovat na ostatnich pocitacich.
SysVinit je mozna vhodny u redhatu, mnohem jednodussi a rucne lepe konfigurovatelnejsi je BSDinit. Na systemech, ktere neobsahuji rpm je idealni.
Idealni je na jednom systemu, ktery neobsahuje RPM. Pokud mate vice nez jeden system, potrebujete balickovaci software (nebo se musite rozloucit s jakoukoli udrzovatelnosti a upgradovatelnosti - a tedy i bezpecnosti - vaseho systemu). A pro balickovaci software je lepsi SysV init.
-Yenya