Nicht ausführbare freigegebene Objekte funktionieren einwandfrei, Bibliotheken, die als ausführbar gekennzeichnet sind, können jedoch auch als eigenständige Programme ausgeführt werden.
Was bringt es also, dieses x zu setzen?
Keine, es sei denn, Sie möchten, dass sie Versions- oder andere Informationen veröffentlichen
Müssen das alle Bibliothekspaketierer tun?
Nein
Was passiert, wenn ich eine gemeinsam genutzte Bibliothek mit 0644-Berechtigungen öffne ()?
Sie erhalten ein neues Shared Object-Handle (solange die Datei lesbar ist usw.) ... das Exec-Bit hat keinen Einfluss darauf
Warum in Bibliotheken, die nicht als eigenständige ausführbare Dateien verwendet werden können, immer noch das Ausführungsbit gesetzt ist: Dies ist wahrscheinlich nur ein Artefakt des verwendeten Build-Systems oder Link-Skripts.
Beispielausgabe, nur als Referenz:
$ /lib/i386-linux-gnu/libc.so.6
GNU C Library (Ubuntu EGLIBC 2.15-0ubuntu10) stable release version 2.15, by Roland McGrath et al.
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 4.6.3.
Compiled on a Linux 3.2.14 system on 2012-04-19.
Available extensions:
crypt add-on version 2.1 by Michael Glad and others
GNU Libidn by Simon Josefsson
Native POSIX Threads Library by Ulrich Drepper et al
BIND-8.2.3-T5B
libc ABIs: UNIQUE IFUNC
For bug reporting instructions, please see:
<http://www.debian.org/Bugs/>.
/lib
und/usr/lib
sind libc und libpthread, und sowohl ein Copyright - Hinweis drucken , wenn sie ausgeführt.