Попереднє посилання (або як зробити завантаження KDE за 3 секунди)

Попереднє посилання це програма, утиліта якої полягає в тому, щоб швидше відкривати програми. Хоча пояснення того, як це робиться, було б вартим цілої статті, ми можемо сказати грубо, що воно вказує двійковому файлу, де спочатку шукати динамічні бібліотеки, які йому потрібно завантажити.

Отже, уявімо, що у нас є двійковий файл, який залежить від бібліотеки QtCore; після того, як ми виконали на ньому попереднє посилання, воно спочатку здійснить пошук у просторі, позначеному попереднім посиланням, а в тому випадку, якщо його не знайде (оновлення, наприклад), буде шукати його традиційним способом.

Попереднє посилання працює на будь-якій сумісній з POSIX системі, як-от GNU / linux або BSD.

Як застосувати попереднє посилання

Оптимізація системи з попереднім посиланням досить проста, ми можемо оптимізувати двійковий файл, використовуючи (як root):

prelink binario

Але для оптимізації всієї системи ми повинні виконати:

prelink -amvR

Ви побачите приблизно таке:

Попереднє посилання

Попереднє посилання

Ось детальне пояснення значення параметрів:

  • a: дорівнює –всі, робить це застосовним до всієї системи
  • m: еквівалентно –conserve-memory, пояснення того, як це працює, є складним, але економить простір
  • v: еквівалент –verbose, це дозволяє нам знати, які є попередньо зв’язані бібліотеки
  • В: Еквівалентно –случайному, збільште безпеку, зробивши значення випадковим. Я не знаю деталей його роботи
Термінал - Якуаке, на випадок, якщо комусь буде цікаво.

Щоб скасувати попереднє зв’язування (від’єднати) двійкового файлу

prelink  -u

Вся система:

prelink -au

Багато дистрибутивів, таких як Ubuntu, пропонують cron, який періодично попередньо зв'язує всі системні двійкові файли, якщо встановлено попереднє посилання
Попереднє посилання може спричинити проблеми у декількох власних двійкових файлах, тому за замовчуванням вони зазвичай пропускаються. У будь-якому випадку, переконайтесь, що файл /etc/prelink.conf містить такі рядки:
# Skype -b / usr / lib32 / skype / skype -b / usr / lib / skype / skype # Плагін 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

Оптимізуйте KDE

Обіцяно борг. Якщо ви вже попередньо зв’язали свою систему, ви, мабуть, не помітили жодної різниці в часі завантаження KDE. Це тому, що KDE служить утилітою під назвою kdeinit для завантаження всіх необхідних бібліотек. Щоб уникнути використання цього інструменту, ми повинні повідомити KDE, що він попередньо зв’язаний. Для цього ми повинні (як root) створити файл змінної:

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

У який ми вставляємо наступний рядок

export KDE_IS_PRELINKED=1

І ми надаємо йому належні дозволи (ми не хочемо, щоб будь-який неслухняний додавав rm-rf /)

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

І якщо ви не вірите мені, ось відео про завантаження KDE в моїй системі:

[технічні характеристики] Деталі системи:

  • Жорсткий диск при 7200 об / хв
  • Gentoo
  • XFS
  • Ksplash вимкнено (причина чорного екрану відео
[/ специфікації]

Cron і попереднє посилання

Якщо ви використовуєте таку систему, як Archlinux, в якій оновлення дуже часті, може бути цікаво додати cron, який запускає попереднє посилання щодня.

Таким чином, ми відкриваємо файл cron за допомогою nano (як root):

nano /etc/cron.daily/prelink

І ми вставляємо наступне:

#! / бін / баш
[[-x / usr / bin / prelink]] &&
/ usr / bin / prelink -амР &> / dev / null

Тоді ми надаємо йому відповідні дозволи (я вже згадував, що ніхто не хоче, щоб хтось додавав зловмисний код):
chmod 755 /etc/cron.daily/prelink

Хороша звичка при читанні статті - досліджувати, що саме робить сценарій. Хороша звичка при її написанні - пояснювати, для чого вона потрібна. Тут розбивка

  1. Перший рядок - повідомити системі, що таке скрипт bash та розташування інтерпретатора.
  2. Другий змушує bash виконувати під оболонку в режимі налагодження, я не знаю чому, але рекомендується, його можна усунути без ризику. && означає, що після завершення команди виконайте наступне.
  3. Виконайте попереднє посилання з деякими поясненими параметрами, &> / dev / null перенаправляє будь-який вихід на / dev / null, тобто відкидає його

Посилання, що цікавлять


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.

  1.   Іван Барра - сказав він

    З «страйком», який ви дали [ENTER], карликам, яких ПК налякався і почав працювати з подвоєною швидкістю, ніж раніше, ви говорите, використовуйте PRELINK, але ваша система базується на терорі ... ха-ха-ха!

    Привіт та відмінний пост

    Дякую, що поділились.

    1.    дорожник - сказав він

      Гмм, з цим шумом я не здивуюсь, якби на моєму комп’ютері XD була міна.

    2.    dhunter - сказав він

      Епічний жарт, це правда, що він прагнув увійти, хе-хе.

  2.   Шеосі - сказав він

    Я хотів би прокоментувати, що деякий час тому я тестував це, і я міг бачити, що різниці були майже нульовими (використовуйте як тести, я думаю, і потопаю біти firefox та nautilus).
    Якщо є зацікавлені, я опублікую файл (я свого часу не публікував його для ліні).

    1.    дорожник - сказав він

      Хм, не всі файли можна покращити, але, принаймні, система має тенденцію до швидшого завантаження.

  3.   день - сказав він

    Був час, коли я використовував e4rat, і це покращило запуск на кілька секунд, тому що це hdd, він починається занадто швидко від того, що я бачу, в даний час у мене є невеликий ssd з kaos і в xfs, і коли я побачив час запуску, я не міг у це повірити.
    http://i.imgur.com/ds6WqIT.png

    1.    Joao - сказав він

      Я вимагаю знати тему робочого столу, яку ви використовуєте, та набір піктограм (у хороших вібраціях)

      1.    дорожник - сказав він

        Клянусь, тема - гелій.

      2.    день - сказав він

        Тема та значки плазми називаються "Динамо" та наступне тонке вікно.
        http://sta.sh/02ful04ags1
        http://hombremaledicto.deviantart.com/art/Dynamo-Plasma-beta-473014317
        http://kde-look.org/content/show.php?content=164722

        Вибачте автора пісні за вихід 🙂

    2.    Джозе-Род - сказав він

      Як називається програма запуску програм? 🙂

      1.    дорожник - сказав він

        Я думаю, що це такий, який називається простим запуском qml.

      2.    день - сказав він

        Як каже дорожник, це QML

      3.    Джозе-Род - сказав він

        Грації 😉

  4.   eliotime3000 - сказав він

    Дуже хороша порада, хоча KDE творить чудеса з Arch і Slackware (я їх спробував, і вони справді вражаючі).

  5.   Azureus - сказав він

    Велике спасибі. Я протестував це на своїй Arch, я зробив загальне попереднє посилання, і я повинен сказати, що вдосконалення досить добре, і я відчуваю себе дуже комфортно

  6.   янпоки - сказав він

    Не знаю, чи це я ... але я не помічаю жодної різниці, і при систематичному аналізі все одно потрібно більше часу ...

    1.    дорожник - сказав він

      Ну, у вашій ОС має бути якась проблема, знаєте, попереднє посилання -au і все вирішено.

  7.   блаблабла - сказав він

    Наскільки мені відомо (з мого власного досвіду), принаймні в Gentoo вам не потрібно створювати новий файл, щоб передавати значення змінної KDE_IS_PRELINKED. Просто прокоментуйте рядок KDE_IS_PRELINKED = 1 у /etc/env.d/43kdepaths (я не впевнений, що це точний шлях, оскільки на даний момент у мене немає своєї машини).

    Кожного разу, коли KDE повністю компілюється, вам потрібно перевірити цей файл, оскільки деякі встановлені ним пакети замінять файл, про який я згадав.

    1.    дорожник - сказав він

      І це, мабуть, є у багатьох дистрибутивах. але роблячи це так, як я це зробив, я гарантую, що ця конфігурація не змінюється.

  8.   Статик - сказав він

    Відмінний пост, вітаю

    Я пропоную вам створити підручник з встановлення Gentoo

    1.    дорожник - сказав він

      Я буду це пам’ятати. Дякую

  9.   Крістіанхд - сказав він

    дуже хороша утиліта, хоча вона мені не служить, бо я маю: огидно для KDE

  10.   Ксавьє - сказав він

    Чи прискориться дельфін? Починати завжди здавалося повільним

    1.    дорожник - сказав він

      Це повинно, я не знаю, я завжди використовую його за замовчуванням. Я використовую gentoo, portage, якщо він виявляє, що встановлено попереднє посилання, він автоматично попередньо зв’язує бінарні файли, тож, поняття не маю.

  11.   Pepo - сказав він

    Цікаво, дякую!

    PD- Бібліотека = Бібліотека, а не бібліотека 😉
    Ну, робочий стіл називається Plasma Desktop, а не KDE. Добре, я зупиняю xD

    1.    дорожник - сказав він

      У комп’ютерному жаргоні це визнаний провал, зрештою, мови прагматичні, особливо в перекладах.
      https://es.wikipedia.org/wiki/Librería_(desambiguación)

  12.   dtulf - сказав він

    добре Я збирався протестувати його в ArchLinux KDE (базовий, а не повний DE), і він видає мені "Помилка збереження '/etc/cron.daily/ Помилка збереження' /etc/cron.daily/prelink ': файл попереднього посилання або каталог робить не існує ': Файл або каталог не існує ». У мене не встановлено "cron", і на wiki [1] вони говорять про cronie, fcron та інші варіанти. Що мені потрібно встановити або зробити, щоб заповнити підручник?

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