Difference between revisions of "Prelink"

From ArchWiki
Jump to: navigation, search
m (Troubleshooting)
(archive)
 
(27 intermediate revisions by 17 users not shown)
Line 1: Line 1:
[[Category:System administration]]
 
[[ru:Prelink]]
 
  
==Method==
+
#redirect [[ArchWiki:Archive]]
Most programs require libraries to function. Libraries can be integrated into a program once, by a linker, when it is compiled (static linking) or they can be integrated when the program is run by a loader, (dynamic linking). Dynamic linking has advantages in code size and management, but every time a program is run, the loader needs to find the relevant libraries. Because the libraries can move around in memory, this causes a performance penalty, and the more libraries that need to be resolved, the greater the penalty. prelink reduces this penalty by using the system's dynamic linker to reversibly perform this linking in advance ("prelinking" the executable file) by relocating. Afterward, the program only needs to spend time finding the relevant libraries on being run if, for some reason (perhaps an upgrade), the libraries have changed since being prelinked.
+
[[Category:Archive]]
==Installing==
 
Prelink is available through pacman
 
pacman -S prelink
 
 
 
==Configuration==
 
All settings are in /etc/prelink.conf
 
 
 
==Usage==
 
===Prelinking===
 
 
 
following command prelink all the binaries in the directories given by /etc/prelink.conf
 
# prelink -amR
 
{{Warning|It has been observed that if you are low on disk space and you prelink your entire system then there is a possibility that your binaries may be truncated. The result being a b0rked system. Use the file or readelf command to check the state of a binary file. Alternatively, check the amount of free space on your harddrive ahead of time with df -h. }}
 
 
 
===Removing prelink===
 
Removing prelinking from all binaries
 
# prelink -au
 
 
 
==Troubleshooting==
 
Some proprietary binaries will crash with prelink (such as Flash, Skype). You can add these to the exclude list in /etc/prelink.conf.
 
 
 
== See also ==
 
 
 
* [http://linux.die.net/man/8/prelink Prelink man page]
 
* [http://www.gentoo.org/doc/en/prelink-howto.xml Gentoo Linux Prelink Guide]
 
* [http://crast.us/james/articles/prelink.php ELF Prelinking and what it can do for you]
 

Latest revision as of 10:15, 10 March 2018

Redirect to: