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
/sbin/ldconfig -v
sor
beállítja a helyes csatolásokat a
megosztott könyvtárakhoz, és
újraépíti a cache-t.
A parancssorban az
# /sbin/ldconfig -n /lib
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
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 [AT] freemail.hu>