Отже, уявімо, що у нас є двійковий файл, який залежить від бібліотеки QtCore; після того, як ми виконали на ньому попереднє посилання, воно спочатку здійснить пошук у просторі, позначеному попереднім посиланням, а в тому випадку, якщо його не знайде (оновлення, наприклад), буде шукати його традиційним способом.
Попереднє посилання працює на будь-якій сумісній з POSIX системі, як-от GNU / linux або BSD.
Як застосувати попереднє посилання
Оптимізація системи з попереднім посиланням досить проста, ми можемо оптимізувати двійковий файл, використовуючи (як root):
prelink binario
Але для оптимізації всієї системи ми повинні виконати:
prelink -amvR
Ви побачите приблизно таке:
Ось детальне пояснення значення параметрів:
- a: дорівнює –всі, робить це застосовним до всієї системи
- m: еквівалентно –conserve-memory, пояснення того, як це працює, є складним, але економить простір
- v: еквівалент –verbose, це дозволяє нам знати, які є попередньо зв’язані бібліотеки
- В: Еквівалентно –случайному, збільште безпеку, зробивши значення випадковим. Я не знаю деталей його роботи
Щоб скасувати попереднє зв’язування (від’єднати) двійкового файлу
prelink -u
Вся система:
prelink -au
# 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
Хороша звичка при читанні статті - досліджувати, що саме робить сценарій. Хороша звичка при її написанні - пояснювати, для чого вона потрібна. Тут розбивка
- Перший рядок - повідомити системі, що таке скрипт bash та розташування інтерпретатора.
- Другий змушує bash виконувати під оболонку в режимі налагодження, я не знаю чому, але рекомендується, його можна усунути без ризику. && означає, що після завершення команди виконайте наступне.
- Виконайте попереднє посилання з деякими поясненими параметрами, &> / dev / null перенаправляє будь-який вихід на / dev / null, тобто відкидає його
З «страйком», який ви дали [ENTER], карликам, яких ПК налякався і почав працювати з подвоєною швидкістю, ніж раніше, ви говорите, використовуйте PRELINK, але ваша система базується на терорі ... ха-ха-ха!
Привіт та відмінний пост
Дякую, що поділились.
Гмм, з цим шумом я не здивуюсь, якби на моєму комп’ютері XD була міна.
Епічний жарт, це правда, що він прагнув увійти, хе-хе.
Я хотів би прокоментувати, що деякий час тому я тестував це, і я міг бачити, що різниці були майже нульовими (використовуйте як тести, я думаю, і потопаю біти firefox та nautilus).
Якщо є зацікавлені, я опублікую файл (я свого часу не публікував його для ліні).
Хм, не всі файли можна покращити, але, принаймні, система має тенденцію до швидшого завантаження.
Був час, коли я використовував e4rat, і це покращило запуск на кілька секунд, тому що це hdd, він починається занадто швидко від того, що я бачу, в даний час у мене є невеликий ssd з kaos і в xfs, і коли я побачив час запуску, я не міг у це повірити.
http://i.imgur.com/ds6WqIT.png
Я вимагаю знати тему робочого столу, яку ви використовуєте, та набір піктограм (у хороших вібраціях)
Клянусь, тема - гелій.
Тема та значки плазми називаються "Динамо" та наступне тонке вікно.
http://sta.sh/02ful04ags1
http://hombremaledicto.deviantart.com/art/Dynamo-Plasma-beta-473014317
http://kde-look.org/content/show.php?content=164722
Вибачте автора пісні за вихід 🙂
Як називається програма запуску програм? 🙂
Я думаю, що це такий, який називається простим запуском qml.
Як каже дорожник, це QML
Грації 😉
Дуже хороша порада, хоча KDE творить чудеса з Arch і Slackware (я їх спробував, і вони справді вражаючі).
Велике спасибі. Я протестував це на своїй Arch, я зробив загальне попереднє посилання, і я повинен сказати, що вдосконалення досить добре, і я відчуваю себе дуже комфортно
Не знаю, чи це я ... але я не помічаю жодної різниці, і при систематичному аналізі все одно потрібно більше часу ...
Ну, у вашій ОС має бути якась проблема, знаєте, попереднє посилання -au і все вирішено.
Наскільки мені відомо (з мого власного досвіду), принаймні в Gentoo вам не потрібно створювати новий файл, щоб передавати значення змінної KDE_IS_PRELINKED. Просто прокоментуйте рядок KDE_IS_PRELINKED = 1 у /etc/env.d/43kdepaths (я не впевнений, що це точний шлях, оскільки на даний момент у мене немає своєї машини).
Кожного разу, коли KDE повністю компілюється, вам потрібно перевірити цей файл, оскільки деякі встановлені ним пакети замінять файл, про який я згадав.
І це, мабуть, є у багатьох дистрибутивах. але роблячи це так, як я це зробив, я гарантую, що ця конфігурація не змінюється.
Відмінний пост, вітаю
Я пропоную вам створити підручник з встановлення Gentoo
Я буду це пам’ятати. Дякую
дуже хороша утиліта, хоча вона мені не служить, бо я маю: огидно для KDE
Чи прискориться дельфін? Починати завжди здавалося повільним
Це повинно, я не знаю, я завжди використовую його за замовчуванням. Я використовую gentoo, portage, якщо він виявляє, що встановлено попереднє посилання, він автоматично попередньо зв’язує бінарні файли, тож, поняття не маю.
Цікаво, дякую!
PD- Бібліотека = Бібліотека, а не бібліотека 😉
Ну, робочий стіл називається Plasma Desktop, а не KDE. Добре, я зупиняю xD
У комп’ютерному жаргоні це визнаний провал, зрештою, мови прагматичні, особливо в перекладах.
https://es.wikipedia.org/wiki/Librería_(desambiguación)
добре Я збирався протестувати його в ArchLinux KDE (базовий, а не повний DE), і він видає мені "Помилка збереження '/etc/cron.daily/ Помилка збереження' /etc/cron.daily/prelink ': файл попереднього посилання або каталог робить не існує ': Файл або каталог не існує ». У мене не встановлено "cron", і на wiki [1] вони говорять про cronie, fcron та інші варіанти. Що мені потрібно встановити або зробити, щоб заповнити підручник?
[1] https://wiki.archlinux.org/index.php/cron#Installation