Stellen wir uns also vor, wir haben eine Binärdatei, die von der QtCore-Bibliothek abhängt. Sobald wir den Prelink ausgeführt haben, sucht sie zuerst in dem durch Prelink angegebenen Bereich und für den Fall, dass sie nicht gefunden wird (ein Update, z Beispiel) wird auf herkömmliche Weise danach gesucht.
Prelink funktioniert auf jedem POSIX-kompatiblen System wie GNU / Linux oder BSD.
So wenden Sie Prelink an
Die Optimierung des Systems mit Prelink ist recht einfach. Wir können eine Binärdatei mit (als Root) optimieren:
prelink binario
Aber um das gesamte System zu optimieren, müssen wir Folgendes ausführen:
prelink -amvR
Sie werden so etwas sehen:
Hier ist eine detaillierte Erklärung der Bedeutung der Parameter:
- a: gleich –all, gilt für das gesamte System
- m: Entspricht –konservieren des Speichers. Die Erklärung der Funktionsweise ist komplex, spart jedoch Platz
- v: Entspricht –verbose und ermöglicht es uns zu wissen, welche Bibliotheken vorverknüpft sind
- A: Entspricht –random. Erhöhen Sie die Sicherheit, indem Sie einen zufälligen Wert festlegen. Ich kenne die Einzelheiten seiner Funktionsweise nicht
Zum Aufheben der Verknüpfung (Aufhebung der Verknüpfung) einer Binärdatei
prelink -u
Das ganze System:
prelink -au
# Skype -b / usr / lib32 / skype / skype -b / usr / lib / skype / skype # Flash Player-Plugin -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- * # Katalysator -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
KDE optimieren
Was versprochen wird, ist Schulden. Wenn Sie Ihr System bereits vorverbunden haben, haben Sie wahrscheinlich keinen Unterschied in den KDE-Ladezeiten festgestellt. Dies liegt daran, dass KDE als Dienstprogramm namens kdeinit dient, um alle erforderlichen Bibliotheken zu laden. Um die Verwendung dieses Tools zu vermeiden, müssen wir KDE darüber informieren, dass es vorverknüpft ist. Dazu müssen wir (als root) eine variable Datei erstellen:
nano /etc/profile.d/kde-prelink.sh
In die wir die folgende Zeile einfügen
export KDE_IS_PRELINKED=1
Und wir geben ihm die richtigen Berechtigungen (wir möchten nicht, dass jemand Unartiges hinzufügt rm-rf /)
chmod 755 /etc/profile.d/kde-prelink.sh
Und wenn Sie mir nicht glauben, sehen Sie hier ein Video, in dem KDE auf meinem System hochfährt:
- Festplatte mit 7200 U / min
- Gentoo
- XFS
- Ksplash deaktiviert (Ursache des schwarzen Videobildschirms
Cron und Prelink
Wenn Sie ein System wie Archlinux verwenden, bei dem Aktualisierungen sehr häufig sind, kann es interessant sein, einen Cron hinzuzufügen, der jeden Tag einen Prelink ausführt.
Daher öffnen wir die Cron-Datei mit Nano (als Root):
nano /etc/cron.daily/prelink
Und wir fügen Folgendes ein:
#! / Bin / bash [[-x / usr / bin / pretink]] && / usr / bin / pretink -amR &> / dev / null
Dann geben wir ihm die entsprechenden Berechtigungen (ich habe bereits erwähnt, dass niemand möchte, dass jemand bösartigen Code hinzufügt):
chmod 755 /etc/cron.daily/prelink
Eine gute Angewohnheit beim Lesen eines Artikels ist es, zu untersuchen, was genau das Skript tut. Eine gute Angewohnheit beim Schreiben ist es, zu erklären, wofür es ist. Hier die Aufteilung
- In der ersten Zeile erfahren Sie, was ein Bash-Skript ist und wo sich der Interpreter befindet.
- Die zweite bewirkt, dass bash eine Subshell im Debug-Modus ausführt. Ich weiß nicht warum, aber es wird empfohlen, sie kann ohne Risiko entfernt werden. Das && bedeutet, dass Sie nach Beendigung des Befehls Folgendes ausführen.
- Führen Sie den Prelink mit einigen bereits erläuterten Parametern aus. &> / Dev / null leitet alle Ausgaben nach / dev / null um, dh verwirft sie