因此,假設我們有一個依賴於QtCore庫的二進製文件,一旦對它執行了預鏈接,它將首先在由預鏈接指定的空間中搜索,並且在找不到該鏈接的情況下(針對例如),它將以傳統方式進行搜索。
Prelink可在任何符合POSIX的系統上運行,例如GNU / linux或BSD。
如何申請預鏈接
使用預鏈接優化系統非常簡單,我們可以使用(作為根)優化二進製文件:
prelink binario
但是要優化整個系統,我們必須執行:
prelink -amvR
您將看到如下內容:
這是參數含義的詳細說明:
- 答:等於–全部,使其適用於整個系統
- m:等效於–conserv-memory,有關其工作原理的解釋很複雜,但可以節省空間
- v:等同於–verbose,它使我們知道哪些是預鏈接庫
- 答:等同於–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 /擴展名/ 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-射頻/)
chmod 755 /etc/profile.d/kde-prelink.sh
而且,如果您不相信我,這是在我的系統上啟動KDE的視頻:
- 硬盤轉速為7200 RPM
- Gentoo的
- XFS
- 禁用Ksplash(由於視頻黑屏)
Cron和預鏈接
如果您使用的是Archlinux之類的系統,其中的更新非常頻繁,那麼添加每天運行預鏈接的cron可能會很有趣。
因此,我們使用nano(作為根)打開cron文件:
nano /etc/cron.daily/prelink
然後我們粘貼以下內容:
#!/斌/慶典 [[-x / usr / bin / prelink]] && / usr / bin /預鏈接 -amR &> / dev /空
然後,我們為其賦予適當的權限(我已經提到過,沒有人希望有人添加惡意代碼):
chmod 755 /etc/cron.daily/prelink
閱讀文章時的一個好習慣是研究腳本的確切功能。 編寫它的一個好習慣是解釋它的用途。 這裡的故障
- 第一行用於告訴系統什麼是bash腳本以及解釋器的位置。
- 第二個使bash在調試模式下執行子shell,我不知道為什麼,但是建議將其消除而沒有風險。 &&表示命令完成後,運行以下命令。
- 使用已經解釋過的一些參數執行預鏈接,&> / dev / null會將任何輸出重定向到/ dev / null,也就是說,將其丟棄
有了您給[ENTER]的“敲擊”,電腦就嚇到了小矮人,並且以兩倍於以前的速度開始工作,您說使用PRELINK,但是您的系統基於恐怖……哈哈哈!
問候和優秀帖子
感謝分享。
嗯,有了噪音,如果我的XD計算機上有地雷,我就不會感到驚訝。
史詩般的笑話,確實是他渴望進入,呵呵
我想評論一下,在不久前我對此進行了基準測試,並且可以看到差異幾乎為零(我認為用作測試並沉沒了firefox和nautilus位)。
如果有興趣,我將發布文件(出於懶惰,我當時未發布它)。
嗯,並不是所有文件都可以看到改善,但是至少系統會啟動得更快。
曾經有一段時間,我使用e4rat並將啟動過程改進了幾秒鐘,因為它是硬盤驅動器,因此從我所看到的啟動速度太快,目前我在kaos和xfs中有一個小ssd,當我看到啟動時時間我簡直不敢相信。
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-analyze仍然需要更長的時間才能開始...
好吧,您的操作系統中肯定有一些問題,您知道,預鏈接-au一切都已解決。
據我所知(至少根據我自己的經驗),至少在Gentoo中,您無需創建新文件即可傳遞KDE_IS_PRELINKED變量的值。 只需取消註釋/etc/env.d/1kdepaths中的KDE_IS_PRELINKED = 43行(我不確定這是否是正確的路徑,因為目前我沒有計算機)。
每次KDE完全編譯時,您都必須檢查該文件,因為它安裝的某些軟件包將覆蓋我提到的文件。
它可能在許多發行版中。 但是按照我做的方式做,我保證不會更改此配置。
優秀的帖子,恭喜您
我建議您創建一個教程來安裝Gentoo
我會記住的。 謝謝
很好的實用程序,儘管它不能為我服務,因為我有:厭惡KDE
海豚會加速嗎? 開始總是很慢
我不知道應該默認使用它。 我使用gentoo portage,如果它檢測到已安裝了預鏈接,它將自動預鏈接二進製文件,所以不知道。
有趣,謝謝!
PD-庫=庫,而不是庫😉
好吧,該桌面稱為等離子桌面,而不是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