abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 10:00 | Komunita

Společnost PINE64 stojící za telefonem PinePhone, notebooky Pinebook a Pinebook Pro, IP kamerou PineCube, hodinkami PineTime, páječkou (pájecím perem) Pinecil, zdroji PinePower nebo RISC-V vývojovou deskou PineCone publikovala na svém blogu lednový souhrn novinek. Opět společně s videem (YouTube, LBRY, TILvids). Od 18. ledna bude možné objednat PinePhone s předinstalovaným Mobianem aneb Debianem pro mobilní zařízení.

Ladislav Hagara | Komentářů: 11
včera 09:00 | Nová verze

Byla vydána nová verze 3.6 svobodného notačního programu MuseScore (Wikipedie). Představení novinek také na YouTube. Zdůrazněn je nový font Leland. Jeho představení na YouTube.

Ladislav Hagara | Komentářů: 0
15.1. 18:44 | Zajímavý projekt

Fedora Magazine představil projekt Fedora Kinoite aneb Fedoru Silverblue s prostředím KDE Plasma. Fedora Silverblue je neměnný systém s atomickými aktualizacemi, tj. základní systém je distribuován jako celek, s prostředím GNOME.

Ladislav Hagara | Komentářů: 3
15.1. 10:00 | IT novinky

Projekty Elasticsearch a Kibana, doposud distribuované pod licencí Apache 2.0, přejdou na duální licencování pod Server-Side Public License (původně používanou pro MongoDB a neschválenou jako open-source organizací OSI) a vlastní source-available licencí. Změna vejde v platnost počínaje vydáním 7.11.

Fluttershy, yay! | Komentářů: 0
15.1. 09:00 | Komunita

Na Humble Bundle lze do neděle 17. ledna do 19:00 získat zdarma počítačovou hru Bomber Crew (YouTube, Wikipedie) běžící také v Linuxu.

Ladislav Hagara | Komentářů: 1
15.1. 08:00 | Nová verze

Minimalistická linuxová distribuce Alpine byla vydána v nové stabilní řadě 3.13. Novinkou jsou např. oficiální obrazy v cloudu (AWS EC2), vylepšené síťové nástroje nebo podpora PHP 8.0.

Fluttershy, yay! | Komentářů: 0
15.1. 07:00 | Bezpečnostní upozornění

Uživatelé Admineru verze 3.7.1 a starších mohli být 29. a 30. prosince napadeni. Útočníkovi se podařilo do souboru jush.js, který se do této verze ještě stahoval z adminer.org, vložit kód, který mu odesílal přihlašovací údaje. Pokud jste v tomto čase tuto více než 7 let starou verzi Admineru používali, tak změňte hesla databází, ke kterým jste se přihlašovali. Novější verze ovlivněné nejsou.

Ladislav Hagara | Komentářů: 2
15.1. 00:11 | Zajímavý článek

Ernie Smith píše o historii populárních routerů Linksys WRT54G, jejichž software byl založený na Linuxu, a proto posléze díky GNU GPL uvolněn jako open source, což vedlo k vývoji alternativního softwaru jako DD-WRT či OpenWrt a řadě dalších využití.

Fluttershy, yay! | Komentářů: 0
14.1. 18:11 | Nová verze

Po roce vývoje od vydání verze 5.0 a více než 8 300 změnách byla vydána nová stabilní verze 6.0 softwaru, který vytváří aplikační rozhraní umožňující chod aplikací pro Microsoft Windows také pod GNU/Linuxem, Wine (Wikipedie). Z novinek lze zdůraznit core moduly ve formátu PE, Vulkan backend pro WineD3D, podporu DirectShow a Media Foundation nebo redesign textové konzole. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 4
14.1. 14:00 | Zajímavý článek

Guido Günther z Purism napsal článek Phosh Overview o uživatelském prostředí pro mobilní systémy Phosh. Přehledově popisuje co jednotlivé komponenty dělají a jak jsou propojeny.

joejoe | Komentářů: 1
Jestliže používáte distribuci CentOS, kterou náhradu plánujete vzhledem k oznámenému ukončení vydávání?
 (31%)
 (3%)
 (2%)
 (24%)
 (0%)
 (2%)
 (38%)
Celkem 146 hlasů
 Komentářů: 3, poslední 10.1. 13:01
Rozcestník

Dotaz: odstranění nepotřebných knihoven

25.2.2005 15:10 Ondřej
odstranění nepotřebných knihoven
Přečteno: 254×
Ahoj, potřeboval bych poradit, jestli existuje nástroj, který by mi pomohl s úklidem systému. Modelová situace: nainstaluju rpm balíček, současně se mi stáhne tuna závislostí. Pak zjistím, že mi balíček nevyhovuje, ale po jeho smazání mi knihovny zůstanou "viset", postupně se hromadí a zbytečně zabírají místo. Potřeboval bych zřejmě něco, co by mi vypsalo balíčky, na kterých nic nezávisí, nebo třeba zobrazilo strukturu závislostí. Nevíte o něčem?

Odpovědi

25.2.2005 17:17 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
Jak může počítač poznat, co "nepotřebujete", to netuším... Ale pokud chcete vypsat všechny balíčky, které jsou ve "stromu závislostí" až úplně nakonci (tj. na nich přímo nic nezávisí, dají se přímo odinstalovat) a používáte Mandrake, tak to dělá příkaz urpmi_rpm-find-leaves.

Předpokládám, že jiné systémy pro řešení závisostí (yum, apt) mají něco podobného, ale nepoužívám...
25.2.2005 17:36 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
Poznat to nemůže, ale může si pamatovat, že se něco instalovalo jako závislost jiného balíčku. Ale rpm takové věci neřeší, takže leda nějaká nadstavba -- a navíc důsledně používaná.
25.2.2005 18:06 pukero
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
V Debianu existuje utilitka deborphan. Umi vypsat balicky, na kterych neni zadna zavislost. Impicitne vypisuje pouze balicky ze sekce libs a oldlibs. Bohuzel pracuje pouze nad balicky debianu :-). Je tedy velmi jednoduche dohledat knihovny, ktere nejsou vyuzivany. Ale funguje to jen za predpokladu, ze vyuzivate pouze debiani balickovaci system nebo si pamatujete, ktere knihovny nesmite odstranit.
25.2.2005 18:20 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
V Debianu je mnohem lepší používat jenom aptitude, které si pamatuje co bylo doinstalováno kvůli závislostem a automaticky to odstraňuje, pokud to již není potřeba.
25.2.2005 18:23 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
Úplně primitivní metoda, jak vypsat balíčky, na nichž nic nezávisí, je
for x in `rpm -qa`; do rpm --test -e $x 2>/dev/null && echo $x; done
Lze z nich vybrat jen ty v sekci System/Libraries, System Environment/Libraries, nebo jak se to kde jmenuje. Ale kdyby měl člověk psát něco pořádného, měl by použít pythoní API, protože to je mnohem efektivnější než tisíc spouštění příkazu rpm...
10.6.2006 09:54 Kníže Ignor | skóre: 19 | blog: stoupa
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
Tohle ale není dokonalé. Pokud mám v systému dva balíčky, kde mezi nimi existuje nějaká závislost a přitom žádný další balíček na nich nezávisí, tak mi uvedená metoda vypíše pouze jeden z těch balíčků. Tedy postup by bylo nutné iterovat, dokud nejsou další balíčky k odebrání.
Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
25.2.2005 20:04 Ondřej
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
Díky za odpovědi, skutečně jsem chtěl jen najít balíčky na nichž nic nezávisí. Které z nich nepotřebuju bych si rozhodl sám ;)

Nicméně používám FC3, takže ani urpmi, ani deborphan nepomůžou. Až budu mít čas, zkusím si to nabastlit sám, jak radil Yetti. Pokud se nebudu za výsledek stydět, možná pošlu link:)
26.2.2005 09:21 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
Ještě by ti mohlo pomoct vyhledat v /lib a /usr/lib s atime starším než, k nim pohledat rpmka, ke kterým to patří a odstraňovat je. Tak můžeš odstraňovat i programy co nikdo nepoužívá. Jestli je to ale jen tvůj počítač, tak snad víš co používáš, že? ;-)
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
26.2.2005 09:30 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
To ovšem nesmíš spouštět ldconfig ;-) o prelinku ani nemluvě...
27.2.2005 23:52 Ondřej
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
Tak jsem sesmolil toto:
import rpm

def find_leaves(ts):

  req_lookup = {}
  for header in ts.dbMatch():
    requirements = header[rpm.RPMTAG_REQUIRENAME]
    if requirements:
      for r in requirements:
        req_lookup[r] = None

  orphans = []
  for header in ts.dbMatch():
    pkg_required = False
    for pkg in header[rpm.RPMTAG_PROVIDES] + header[rpm.RPMTAG_FILENAMES]:
      if req_lookup.has_key(pkg):
        pkg_required = True; break

    if not pkg_required:
      orphans.append(header['name'])

  return orphans

leaves = find_leaves(rpm.ts())
leaves.sort()

for leaf in leaves:
  print leaf
Ale skript najde míň balíčků než one-liner od Yetiho. Vidíte chybu?
28.2.2005 09:46 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
Nenajde to balíčky, které potřebují samy sebe, ale nic jiného je nepotřebuje.
28.2.2005 12:51 Ondřej
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
Prosím o radu, ve vnitřnostech rpm se nevyznám, rpm-python nemá žádnou dokumentaci, inspiraci beru z rpmUtils v balíčku yum.

Jak může balíček potřebovat sám sebe? To je samozřejmé, tak proč by to měl nějak deklarovat? Moc tomu nerozumím.
28.2.2005 13:28 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
To je běžná situace, když něco obsahuje binárky i knihovny, protože ty binárky potřebují ty knihovny, které jsou ovšem v balíčku s nimi. Sice by to šlo odfiltrovávat, ale proč, když to není chyba.

Dokumentace k rpm modulu bohužel opravdu prakticky neexistuje, API je podobné API rpmlib, ale ne stejné.
Stanislav Brabec avatar 1.3.2005 12:48 Stanislav Brabec | skóre: 45 | Praha
Rozbalit Rozbalit vše Re: odstranění nepotřebných knihoven
Takto je to pro jeden balík:
rpm -q --whatrequires $( rpm -q --provides balík | sed 's/ .*//' ; rpm -ql balík ) | grep -v "no package requires "
Pro všechny to bude ve smyčce, kde budete kontrolovat, zda je výsledek prázdný.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.