Predveza (ili kako pokrenuti KDE za 3 sekunde)

Prelink je program čija je korisnost da se programi brže otvaraju. Iako bi objašnjenje načina na koji to zaslužuje zaslužilo cijeli članak, možemo na grub način reći da ono binarnom sistemu kaže gdje prvo potražiti dinamičke biblioteke koje treba učitati.

Stoga, zamislimo da imamo binarnu datoteku koja ovisi o QtCore biblioteci, nakon što izvršimo pretvezu na njoj, prvo će pretražiti u prostoru koji je označen prelinkom, a u slučaju da ga ne pronađe (ažuriranje, za primjer) tražit će ga na tradicionalan način.

Prelink radi na bilo kojem sistemu koji je u skladu s POSIX-om, poput GNU / linux ili BSD-a.

Kako primijeniti predvezu

Optimizacija sistema s prelinkom je prilično jednostavna, možemo optimizirati binarni sustav koristeći (kao root):

prelink binario

Ali da bismo optimizirali cjelokupni sistem moramo izvršiti:

prelink -amvR

Vidjet ćete otprilike ovako:

Prelink

Prelink

Evo detaljnog objašnjenja značenja parametara:

  • a: jednako –sve, čini ga primjenjivim na čitav sistem
  • m: ekvivalent –conserve-memory, objašnjenje kako to funkcionira je složeno, ali štedi prostor
  • v: ekvivalentno –verbose, omogućava nam da znamo koje su unaprijed povezane biblioteke
  • O: Ekvivalentno - slučajno, povećajte sigurnost praveći vrijednost slučajnom. Ne znam detalje njegovog rada
Terminal je Yakuake, u slučaju da nekoga zanima.

Za poništavanje povezivanja (raskidanja veze) binarnog programa

prelink  -u

Cijeli sistem:

prelink -au

Mnoge distribucije poput Ubuntu-a nude cron koji povremeno unaprijed povezuje sve sistemske binarne datoteke ako je instalirana prelink
Pretveza može uzrokovati probleme u nekoliko vlasničkih binarnih datoteka, tako da se oni obično preskaču po defaultu. U svakom slučaju, provjerite sadrži li datoteka /etc/prelink.conf ove redove:
# Skype -b / usr / lib32 / skype / skype -b / usr / lib / skype / skype # Dodatak za Flash Player -b /usr/lib/mozilla/plugins/libflashplayer.so # NVIDIA -b / usr / lib / libGL .so * -b /usr/lib32/libGL.so* -b //usr/lib/libOpenCL.so* -b //usr/lib32/libOpenCL.so* -b / usr / lib32 / vdpau / -b / usr / lib / vdpau / -b /usr/lib/xorg/modules/drivers/nvidia_drv.so -b /usr/lib/xorg/modules/extensions/libglx.so* -b / usr / lib / libnvidia- * - b / usr / lib32 / libnvidia- * # Catalyst -b / usr / lib / libati * -b / usr / lib / fglrx * -b / usr / lib / libAMDXvBA * -b /usr/lib/libGL.so* - b / usr / lib / libfglrx * -b /usr/lib/xorg/modules/dri/fglrx_dri.so -b /usr/lib/xorg/modules/drivers/fglrx_drv.so -b / usr / lib / xorg / modules / extensions / fglrx / -b /usr/lib/xorg/modules/linux/libfglrxdrm.so -b /usr/lib/xorg/modules/extensions/libglx.so

Optimizirajte KDE

Obećava se dug. Ako ste već unaprijed povezali svoj sistem, vjerojatno niste primijetili nikakvu razliku u vremenu učitavanja KDE-a. To je tako jer KDE služi kao uslužni program zvan kdeinit za učitavanje svih potrebnih biblioteka. Da bismo izbjegli upotrebu ovog alata, moramo obavijestiti KDE da je unaprijed povezan. Da bismo to učinili moramo (kao root) stvoriti datoteku varijable:

nano /etc/profile.d/kde-prelink.sh

U koji lijepimo sljedeći redak

export KDE_IS_PRELINKED=1

I mi mu dajemo odgovarajuće dozvole (ne želimo da ih doda neko zločesto) rm -rf /)

chmod 755 /etc/profile.d/kde-prelink.sh

A ako mi ne vjerujete, evo videozapisa KDE-a koji se podiže na mom sistemu:

[specifikacije] Detalji o sistemu:
  • HDD pri 7200 o / min
  • Gentoo
  • XFS
  • Ksplash onemogućen (uzrok crnog ekrana videozapisa
[/ specifikacije]

Cron i predveza

Ako koristite sistem poput Archlinuxa, gdje su nadogradnje vrlo česte, moglo bi biti zanimljivo dodati cron koji svakodnevno pokreće prelink.

Dakle, otvaramo cron datoteku sa nano (kao root):

nano /etc/cron.daily/prelink

I zalijepimo sljedeće:

#! / bin / bash
[[-x / usr / bin / prelink]] &&
/ usr / bin / prelink -amR &> / dev / null

Tada mu dajemo odgovarajuće dozvole (već sam spomenuo da niko ne želi da neko dodaje zlonamjerni kod):
chmod 755 /etc/cron.daily/prelink

Dobra navika prilikom čitanja članka je istražiti šta tačno radi skripta. Dobra navika prilikom pisanja je objasniti čemu služi. Evo sloma

  1. Prvi redak koristi se za kazivanje sistemu što je bash skripta i mjesto tumača.
  2. Drugi tjera bash da izvodi podljusku u načinu otklanjanja pogrešaka, ne znam zašto, ali preporučljivo je, može se ukloniti bez rizika. && znači da kada se naredba završi, pokrenite sljedeće.
  3. Izvršite predvezu s nekim objašnjenim parametrima, &> / dev / null preusmjerava bilo koji izlaz na / dev / null, odnosno odbacuje ga

Veze od interesa


Sadržaj članka pridržava se naših principa urednička etika. Da biste prijavili grešku, kliknite ovdje.

27 komentara, ostavi svoj

Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   Ivan Barra rekao je

    Uz "štrajk" koji ste dali [ENTER], mali patuljci kojih se računalo uplašilo i počelo raditi dvostruko brže nego prije, kažete da koristite PRELINK, ali vaš sistem se temelji na teroru ... hahaha!

    Pozdrav i odličan post

    Hvala na dijeljenju.

    1.    roader rekao je

      Umm, sa bukom koju stvara, ne bih se iznenadio da je na mom XD računaru bila mina.

    2.    dhunter rekao je

      Epska šala, istina je da je bio nestrpljiv da uđe, hehe.

  2.   Sheosi rekao je

    Želio bih komentirati da sam to malo prije usporedio i vidio sam da su razlike gotovo nikakve (mislim da koristim kao testove i utapkam bitove firefoxa i nautilusa).
    Ako postoje zainteresirani, objavit ću datoteku (tada je nisam objavio zbog lijenosti).

    1.    roader rekao je

      Umm, ne mogu se vidjeti na svim datotekama poboljšanja, ali u najmanju ruku sistem se brže pokreće.

  3.   dan rekao je

    Bilo je vrijeme kada sam koristio e4rat i on je poboljšao pokretanje na nekoliko sekundi, jer je hdd, prebrzo počinje od onoga što vidim, trenutno imam mali ssd sa kaos i u xfs-u i kad sam vidio pokretanje vrijeme nisam mogao vjerovati.
    http://i.imgur.com/ds6WqIT.png

    1.    Joao rekao je

      Zahtijevam da znam temu radne površine koju koristite i set ikona (u dobrim vibracijama)

      1.    roader rekao je

        Kunem se da je tema helij.

      2.    dan rekao je

        Tema i ikone plazme nazivaju se Dinamo i sljedeći tanki prozor.
        http://sta.sh/02ful04ags1
        http://hombremaledicto.deviantart.com/art/Dynamo-Plasma-beta-473014317
        http://kde-look.org/content/show.php?content=164722

        Izvinite autoru pjesme na isključenju 🙂

    2.    jose-rod rekao je

      Kako se zove taj pokretač aplikacija? 🙂

      1.    roader rekao je

        Mislim da se radi o jednostavnom pokretaču qml.

      2.    dan rekao je

        Kao što Roader kaže, to je QML

      3.    jose-rod rekao je

        Hvala 😉

  4.   eliotime3000 rekao je

    Vrlo dobar savjet, iako KDE čini čuda nad Archom i Slackwareom (probao sam ih i zaista su spektakularni).

  5.   Azureus rekao je

    Veliko hvala. Isprobao sam ga na svom Archu, napravio sam opću pretkontrolu i moram reći da je poboljšanje prilično dobro i da se osjećam vrlo ugodno hehe

  6.   ianpocks rekao je

    Ne znam jesam li to ja ... ali ne primjećujem nikakvu razliku, a sa systemd-analysis i dalje treba više vremena ...

    1.    roader rekao je

      Pa, mora da postoji neki problem u vašem OS-u, znate, prelink -au i sve je riješeno.

  7.   Bla bla bla rekao je

    Koliko znam (iz mog vlastitog iskustva), barem u Gentoo-u ne trebate kreirati novu datoteku da biste proslijedili vrijednost varijable KDE_IS_PRELINKED. Samo komentirajte redak KDE_IS_PRELINKED = 1 u /etc/env.d/43kdepaths (nisam siguran da li je to tačan put, jer trenutno nemam svoj stroj).

    Svaki put kad se KDE u potpunosti kompajlira, morate pregledati tu datoteku, jer će neki od paketa koje instalira prebrisati datoteku koju sam spomenuo.

    1.    roader rekao je

      I verovatno je u mnogim distribucijama. ali radeći to onako kako sam to učinio, garantiram da se ova konfiguracija ne mijenja.

  8.   Statick rekao je

    Odličan post, čestitamo

    Predlažem da napravite vodič za instaliranje Gentoo-a

    1.    roader rekao je

      Imaću to na umu. Hvala ti

  9.   Cristianhcd rekao je

    vrlo dobar uslužni program, iako mi ne služi, jer imam: odvratan za KDE

  10.   Javier rekao je

    Hoće li dupin ubrzati? Uvijek se činilo da polako započinje

    1.    roader rekao je

      Trebalo bi, ne znam, uvijek ga koristim po defaultu. Koristim gentoo, portage, ako otkrije da je prelink uspostavljen, automatski predveže binarne datoteke, tako da, nema pojma.

  11.   Pepo rekao je

    Zanimljivo, hvala!

    PD- Biblioteka = Biblioteka, a ne biblioteka 😉
    Pa, radna površina se zove Plasma Desktop, a ne KDE. Ok, zaustavljam xD

    1.    roader rekao je

      U računalnom žargonu to je prihvaćeni neuspjeh, uostalom, jezici su pragmatični, posebno u prijevodima.
      https://es.wikipedia.org/wiki/Librería_(desambiguación)

  12.   dtulf rekao je

    dobro. Htio sam ga testirati u ArchLinux KDE-u (osnovni, a ne u kompletnom DE) i daje mi "Greška pri spremanju '/etc/cron.daily/ Greška pri spremanju' /etc/cron.daily/prelink ': datoteka ili direktorij prelinka radi ne postoji ': Datoteka ili direktorij ne postoji ». Nemam instaliran "cron" i na wikiju [1] govore o cronie, fcron i drugim varijantama. Šta trebam instalirati ili učiniti da dovršim vodič?

    [1] https://wiki.archlinux.org/index.php/cron#Installation