NÉV¶
ldconfig - megadja a futás alatti kötéseket
ÁTTEKINTÉS¶
ldconfig [
-DvqnNX] [
-f conf] [
-C cache]
[
-r root]
könyvtár (directory)
...
ldconfig
-l [
-Dvq]
megosztottkönyvtár
(library) ...
ldconfig
-p
LEÍRÁS¶
Az
ldconfig létrehozza a szükséges csatolásokat
és a cache-t, (amit a futási idejű linker, az
ld.so
használ), a legfrissebb megosztott könyvtárakhoz, amelyeket a
parancssorból, az
/etc/ld.so.conf fájlból, és a
megbízható könyvtárakból (
/usr/lib és a
/lib) olvas ki. Az
ldconfig ellenőrzi a megtalált
könyvtárak fejlécét és fájlnevét, amikor
eldönti, hogy melyik verziók csatolásait kell frissíteni.
Az
ldconfig nem veszi figyelembe a szimbolikus linkeket, amikor
könyvtárakat keres.
Az
ldconfig megpróbálja kitalálni az ELF
könyvtár típusát (pl. libc5 vagy libc6/glibc) annak
alapján, hogy milyen C könyvtárral lett a megosztott
könyvtár összelinkelve, amennyiben egyáltalán
össze lett valamelyikkel is. Ezért megosztott könyvtárak
készítésekor bölcs dolog expliciten a libc-vel linkelni a
-lc kapcsoló használatával.
Néhány már létező könyvtár nem tartalmaz
elég információt ahhoz, hogy a típusa
kitalálható legyen, ezért az
/etc/ld.so.conf
fájlformátum megengedi a várható típus
megadását. Ez
csak azokra az ELF könyvtárakra
használatos, amelyekre nem lehet kitalálni a típust. A
formátum "dirname=TYPE", ahol a típus a libc4, libc5 vagy
libc6 valamelyike lehet. (Ez a szintaxis a parancssorban is
működik). Szóközök
nem megengedettek.
Lásd még a
-p opciót.
Az egyenlőségjelet
(=) tartalmazó könyvtárnevek
többé nem megengedettek, hacsak nincs a várható
típusuk is megadva.
Az
ldconfig parancsot általában a rendszergazdának kell
futtatnia, mert szükséges lehet az írási jog
néhány root tulajdonában levő fájlra és
könyvtárra. Általában a rendszer indulásakor
automatikusan elindul az /etc/rc-ből, vagy kézzel
indítható, ha egy új DLL-t telepítettünk a
rendszerbe.
OPCIÓK¶
- -D
- Hibakereső mód. Maga után vonja a -N
és a -X kapcsolókat.
- -v
- Bőbeszédű mód. Kiírja az
aktuális verziószámot, minden könyvtár
nevét, ahol éppen keres, és minden csatolást, amit
létrehozott. Felülbírálja a csendes módot.
- -q
- Csendes mód. Nem ír ki
figyelmeztetéseket.
- -n
- Csak a parancssorban megadott könyvtárakban
keres, a megbízható könyvtárakban (/usr/lib
és /lib), és az /etc/ld.so.conf-ban megadottakban
nem. Maga után vonja a -N kapcsolót.
- -N
- Nem építi újra a cache-t. Ha a -X
kapcsoló nincs megadva, akkor a csatolásokat frissíti.
- -X
- Nem frissíti a csatolásokat. Ha a -N
kapcsoló nincs megadva, akkor a cache-t
újraépíti.
- -f conf
- A conf fájlt használja az
/etc/ld.so.conf helyett.
- -C cache
- A cache fájlt használja az
/etc/ld.so.cache helyett.
- -r root
- A root könyvtárba lép és azt
használja, mint gyökérkönyvtárat.
- -l
- Könyvtár mód. Kézzel csatol egyes
könyvtárakat. Csak gyakorlott felhasználóknak.
- -p
- Kiírja az aktuális cache-ben tárolt
könyvtárak (directories) és megosztott könyvtárak
listáját.
PÉLDÁK¶
A rendszer indítófájljában, az
/etc/rc -ben, az
sor beállítja a helyes csatolásokat a megosztott
könyvtárakhoz, és újraépíti a cache-t.
- A parancssorban az
utasítás a root által futtatva egy új DLL
telepítése után megfelelően frissíti a megosztott
könyvtárakra mutató szimbolikus linkeket a /lib
könyvtárban.
FÁJLOK¶
- /lib/ld.so
- futási idejű linker és
betöltő
- /etc/ld.so.conf
- A fájl könyvtárakat (directories) tartalmaz
kettősponttal, vesszővel, szóközzel, tabulátorral
vagy újsor karakterrel elválasztva, amelyekben a megosztott
könyvtárakat keresi a betöltő.
- /etc/ld.so.cache
- A fájl az /etc/ld.so.conf-ban megadott
könyvtárakban található megosztott
könyvtárak rendezett listáját tartalmazza.
- lib*.so.version
- megosztott könyvtárak
LÁSD MÉG¶
ldd(1),
ld.so(8).
HIBÁK¶
Az
ldconfig, akárcsak az
ld.so, csak azokra a
végrehajtható fájlokra működik, amelyeket a libc
4.4.3-as vagy magasabb verziójával fordították.
Mivel az
ldconfig felhasználói processz, kézzel kell
futtatni, és semmilyen módon nem tudja dinamikusan meghatározni
és újralinkelni a megosztott könyvtárakat az
ld.so
számára, amikor egy új DLL-t telepítünk.
SZERZŐK¶
David Engel és Mitch D'Souza.
MAGYAR FORDÍTÁS¶
Tímár András <timar_a@freemail.hu>