Дакле, замислимо да имамо бинарну датотеку која зависи од КтЦоре библиотеке, након што извршимо претвезу на њој, прво ће тражити у простору назначеном прелинком, а у случају да је не пронађе (на пример, ажурирање), тражит ће је на традиционалан начин.
Прелинк ради на било ком систему који је у складу са ПОСИКС-ом, попут ГНУ / линук или БСД-а.
Како применити прелинк
Оптимизација система помоћу прелинка је прилично једноставна, можемо оптимизирати бинарни систем користећи (као роот):
prelink binario
Али да бисмо оптимизовали целокупан систем морамо извршити:
prelink -amvR
Видећете нешто овако:
Ево детаљног објашњења значења параметара:
- а: једнако –све, чини да се односи на цео систем
- м: еквивалент –цонсерве-мемори, објашњење како то функционише је сложено, али штеди простор
- в: еквивалентно –вербосе, омогућава нам да знамо које су унапред повезане библиотеке
- О: Еквивалентно - случајно, повећајте сигурност правећи вредност случајном. Не знам детаље његовог рада
Да поништите везу (раскине везу) са бинарним датотекама
prelink -u
Цео систем:
prelink -au
# Скипе -б / уср / либ32 / скипе / скипе -б / уср / либ / скипе / скипе # Додатак за Фласх Плаиер -б /уср/либ/мозилла/плугинс/либфласхплаиер.со # НВИДИА -б / уср / либ / либГЛ .со * -б /уср/либ32/либГЛ.со* -б //уср/либ/либОпенЦЛ.со* -б //уср/либ32/либОпенЦЛ.со* -б / уср / либ32 / вдпау / -б / уср / либ / вдпау / -б /уср/либ/корг/модулес/дриверс/нвидиа_дрв.со -б /уср/либ/корг/модулес/ектенсионс/либглк.со* -б / уср / либ / либнвидиа- * - б / уср / либ32 / либнвидиа- * # Цаталист -б / уср / либ / либати * -б / уср / либ / фглрк * -б / уср / либ / либАМДКСвБА * -б /уср/либ/либГЛ.со* - б / уср / либ / либфглрк * -б /уср/либ/корг/модулес/дри/фглрк_дри.со -б /уср/либ/корг/модулес/дриверс/фглрк_дрв.со -б / уср / либ / корг / модулес / ектенсионс / фглрк / -б /уср/либ/корг/модулес/линук/либфглркдрм.со -б /уср/либ/корг/модулес/ектенсионс/либглк.со
Оптимизујте КДЕ
Обећава се дуг. Ако сте већ унапред повезали свој систем, вероватно нисте приметили никакву разлику у времену учитавања КДЕ-а. То је зато што КДЕ служи као услужни програм зван кдеинит за учитавање свих потребних библиотека. Да бисмо избегли употребу ове алатке, морамо обавестити КДЕ да је унапред повезан. Да бисмо то урадили, морамо (као роот) створити датотеку променљиве:
nano /etc/profile.d/kde-prelink.sh
У који налепимо следећи ред
export KDE_IS_PRELINKED=1
И ми му дајемо одговарајуће дозволе (не желимо да додају било шта злочесто рм -рф /)
chmod 755 /etc/profile.d/kde-prelink.sh
А ако ми не верујете, ево видео снимка КДЕ-а који се подиже на мом систему:
- ХДД при 7200 о / мин
- Гентоо
- КСФС
- Кспласх онемогућен (узрок црног екрана видеа
Црон и прелинк
Ако користите систем попут Арцхлинука, у којем су ажурирања врло честа, можда би било занимљиво додати црон који свакодневно покреће прелинк.
Дакле, отварамо црон датотеку са нано (као роот):
nano /etc/cron.daily/prelink
И залепимо следеће:
#! / бин / басх [[-к / уср / бин / прелинк]] && / уср / бин / прелинк -амР &> / дев / нулл
Тада му дајемо одговарајуће дозволе (већ сам споменуо да нико не жели да неко додаје злонамерни код):
chmod 755 /etc/cron.daily/prelink
Добра навика када читате чланак је да истражите шта тачно ради скрипта. Добра навика приликом писања је објашњавање чему служи. Ево слома
- Први ред се користи да се систему каже шта је басх скрипта и где се налази тумач.
- Други чини да басх извршава поткољку у режиму отклањања грешака, не знам зашто, али је препоручљиво, може се елиминисати без ризика. && значи да када се наредба заврши, покрените следеће.
- Извршите предвезу са неким објашњеним параметрима, &> / дев / нулл преусмерава било који излаз на / дев / нулл, односно одбацује га