Таким образом, давайте представим, что у нас есть двоичный файл, который зависит от библиотеки QtCore, после того, как мы выполнили предварительную ссылку на него, он сначала будет искать в пространстве, обозначенном предварительной ссылкой, и в случае, если не найдет его (обновление, пример) он будет искать его традиционным способом.
Prelink работает в любой POSIX-совместимой системе, такой как GNU / linux или BSD.
Как применить предварительную ссылку
Оптимизировать систему с помощью prelink довольно просто, мы можем оптимизировать двоичный файл, используя (как root):
prelink binario
Но для оптимизации всей системы мы должны выполнить:
prelink -amvR
Вы увидите что-то вроде этого:
Вот подробное объяснение значения параметров:
- a: равно –all, применяется ко всей системе
- m: эквивалент –conserve-memory, объяснение того, как это работает, сложное, но экономит место
- v: эквивалент –verbose, он позволяет нам узнать, какие библиотеки предварительно связаны
- A: Эквивалент –random, повышает безопасность, делая значение случайным. Я не знаю подробностей его работы
Чтобы отменить предварительную привязку (отсоединить) двоичный файл
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 / extension / 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
И мы даем ему соответствующие разрешения (мы не хотим, чтобы какой-то непослушный добавил рм-рф/)
chmod 755 /etc/profile.d/kde-prelink.sh
И если вы мне не верите, вот видео, как KDE загружается в моей системе:
- HDD на 7200 об / мин
- Gentoo
- XFS
- Ksplash отключен (причина черного экрана видео
Cron и prelink
Если вы используете такую систему, как Archlinux, в которой обновления очень часты, может быть интересно добавить cron, который запускает предварительную ссылку каждый день.
Таким образом, мы открываем cron-файл с помощью nano (от имени root):
nano /etc/cron.daily/prelink
И вставляем следующее:
#! / Bin / Баш [[-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, и он улучшил запуск на несколько секунд, потому что это жесткий диск, он запускается слишком быстро, как я вижу, в настоящее время у меня есть небольшой ssd с kaos и в xfs, и когда я увидел время запуска, я не мог в это поверить.
http://i.imgur.com/ds6WqIT.png
Я требую знать тему рабочего стола, которую вы используете, и набор иконок (в хорошем настроении)
Клянусь, это тема гелия.
Тема и значки плазмы называются Dynamo и Next тонкое окно.
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, я сделал общую предварительную ссылку и должен сказать, что улучшение довольно хорошее, и я чувствую себя очень комфортно, хе-хе
Не знаю, я ли это ... но я не замечаю никакой разницы и с systemd-analysis все равно запускается дольше ...
Ну, в вашей ОС должна быть какая-то проблема, понимаете, prelink -au и все решено.
Насколько я знаю (по собственному опыту), по крайней мере, в Gentoo вам не нужно создавать новый файл для передачи значения переменной KDE_IS_PRELINKED. Просто раскомментируйте строку KDE_IS_PRELINKED = 1 в /etc/env.d/43kdepaths (я не уверен, что это точный путь, поскольку в данный момент у меня нет своей машины).
Каждый раз, когда KDE полностью компилируется, вы должны проверять этот файл, так как некоторые из устанавливаемых им пакетов перезапишут файл, о котором я упоминал.
И, наверное, так во многих дистрибутивах. но делая это так, как я это сделал, я гарантирую, что эта конфигурация не изменится.
Отличный пост, Поздравляю
Я предлагаю вам создать руководство по установке Gentoo
Буду иметь в виду. Спасибо
очень хорошая утилита, хотя мне она не служит, потому что у меня: отвратительно для KDE
Дельфин ускорится? Всегда казалось, что начинать медленно
Должен, не знаю, всегда использую по умолчанию. Я использую gentoo, portage, если он обнаруживает, что предварительная ссылка установлена, он автоматически выполняет предварительную ссылку на двоичные файлы, так что понятия не имею.
Интересно, спасибо!
PD- Library = Библиотека, а не библиотека 😉
Рабочий стол называется 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