Manpages

名 前

ld.so, ld−linux.so* − 動 的 な リ ン カ ー /ロ ー ダ ー

書 式

動 的 リ ン カ ー は 、 動 的 に リ ン ク さ れ た プ ロ グ ラ ム や ラ イ ブ ラ リ の 実 行 に よ っ て 間 接 的 に 実 行 す る こ と が で き る (ELF の 場 合 、 動 的 リ ン カ ー に コ マ ン ド ラ イ ン オ プ シ ョ ン を 渡 す こ と は で き ず 、 プ ロ グ ラ ム の .interp セ ク シ ョ ン に 入 っ て い る 動 的 リ ン カ ー が 実 行 さ れ る )。 ま た 以 下 の よ う に 直 接 実 行 す る こ と も で き る

/lib/ld−linux.so.* [OPTIONS] [PROGRAM [ARGUMENTS]]

説 明

プ ロ グ ラ ム ld.sold−linux.so* は プ ロ グ ラ ム に 必 要 な 共 有 ラ イ ブ ラ リ を 見 つ け て ロ ー ド し 、 プ ロ グ ラ ム の 実 行 を 準 備 し て か ら 起 動 さ せ る 。

Linux の バ イ ナ リ は 、 コ ン パ イ ル の 時 に ld(1) に 対 し て −static オ プ シ ョ ン が 指 定 さ れ て い な い 限 り 、 動 的 リ ン ク (実 行 時 リ ン ク ) が 必 要 と な る 。 プ ロ グ ラ ム ld.so は a.out バ イ ナ リ を 扱 う 。 こ れ は ず っ と 昔 に 使 わ れ て い た フ ォ ー マ ッ ト で あ る 。 ld−linux.so* (libc5 で は /lib/ld−linux.so.1, glibc2 で は /lib/ld−linux.so.2) は ELF バ イ ナ リ を 扱 う 。 こ の フ ォ ー マ ッ ト は 多 く の 人 が 最 近 何 年 も 使 っ て い る 。 そ れ 以 外 の 点 で は 両 方 と も 同 じ よ う に 動 作 し 、 同 じ サ ポ ー ト フ ァ イ ル と プ ロ グ ラ ム ldd(1), ldconfig(8), /etc/ld.so.conf を 使 用 す る 。 ラ イ ブ ラ リ の 依 存 関 係 を 解 決 す る 際 、 動 的 リ ン カ ー は 、 最 初 に 、 依 存 関 係 の 各 文 字 列 が ス ラ ッ シ ュ を 含 ん で い る か を チ ェ ッ ク す る (こ の 状 況 に な る の は 、 リ ン ク 時 に ス ラ ッ シ ュ を 含 む ラ イ ブ ラ リ の パ ス 名 が 指 定 さ れ た 場 合 で あ る )。 ス ラ ッ シ ュ が 見 つ か っ た 場 合 、 そ の 依 存 関 係 の 文 字 列 は パ ス 名 (相 対 パ ス 、 絶 対 パ ス の ど ち ら も 可 ) と し て 解 釈 さ れ 、 そ の パ ス 名 を 使 っ て そ の ラ イ ブ ラ リ は ロ ー ド さ れ る 。 ラ イ ブ ラ リ の 依 存 関 係 に ス ラ ッ シ ュ が 含 ま れ な い 場 合 、 以 下 の 順 序 で 検 索 さ れ る 。

o

(ELF の み ) バ イ ナ リ の 動 的 セ ク シ ョ ン 属 性 DT_RPATH が 存 在 し 、 DT_RUNPATH 属 性 が 存 在 し な い 場 合 は 、 DT_RPATH で 指 定 さ れ た デ ィ レ ク ト リ を 使 用 す る 。 DT_RPATH の 使 用 は 推 奨 さ れ な い 。

o

環 境 変 数 LD_LIBRARY_PATH を 用 い る 。 た だ し 実 行 フ ァ イ ル が set−user−ID/set−group−ID バ イ ナ リ の 場 合 、 こ れ は 無 視 さ れ る 。
o

(ELF の み ) バ イ ナ リ の 動 的 セ ク シ ョ ン 属 性 DT_RUNPATH が 存 在 す れ ば 、 DT_RUNPATH で 指 定 さ れ た デ ィ レ ク ト リ を 使 用 す る 。

o

キ ャ ッ シ ュ フ ァ イ ル /etc/ld.so.cache を 探 す 。 こ の フ ァ イ ル は 、 (ld.so.conf で 追 加 指 定 さ れ た も の も 含 め た ) ラ イ ブ ラ リ 検 索 パ ス か ら 見 つ か っ た ラ イ ブ ラ リ フ ァ イ ル の 情 報 を 集 め た も の で あ る 。 た だ し 、 バ イ ナ リ が リ ン カ ー オ プ シ ョ ン −z nodeflib で リ ン ク さ れ て い る 場 合 は 、 デ フ ォ ル ト の ラ イ ブ ラ リ パ ス に あ る ラ イ ブ ラ リ は ス キ ッ プ さ れ る 。 ハ ー ド ウ ェ ア 機 能 デ ィ レ ク ト リ (下 記 参 照 ) に イ ン ス ト ー ル さ れ た ラ イ ブ ラ リ は 、 他 の ラ イ ブ ラ リ よ り も 優 先 さ れ る 。

o

デ フ ォ ル ト パ ス で あ る /lib、 次 い で /usr/lib を 用 い る 。 バ イ ナ リ が リ ン カ ー オ プ シ ョ ン −z nodeflib で リ ン ク さ れ て い る 場 合 、 こ の ス テ ッ プ は ス キ ッ プ さ れ る 。

rpath ト ー ク ン の 展 開
ld.so
で は rpath 指 定 (DT_RPATH や DT_RUNPATH) 中 に い く つ か の 特 定 の 文 字 列 を 使 う こ と が で き る 。 そ れ ら の 文 字 列 は 以 下 の よ う に 置 き 換 え ら れ る 。
$ORIGIN
(${ORIGIN} も 同 じ ) プ ロ グ ラ ム や 共 有 ラ イ ブ ラ リ が 入 っ て い る デ ィ レ ク ト リ に 展 開 さ れ る 。 し た が っ て 、 somedir/app に 置 か れ た ア プ リ ケ ー シ ョ ン を

gcc −Wl,−rpath,'$ORIGIN/../lib' で コ ン パ イ ル す る こ と で 、 somedir が デ ィ レ ク ト リ 階 層 の ど こ に あ っ て も 、 ld.sosomedir/lib に あ る 対 応 す る 共 有 ラ イ ブ ラ リ を 見 つ け る こ と が で き る 。 こ の 機 能 を 使 う と 、 特 別 な デ ィ レ ク ト リ で は な く 任 意 の デ ィ レ ク ト リ に イ ン ス ト ー ル し て も 「 や や こ し い 設 定 な し で 」 独 自 の 共 有 ラ イ ブ ラ リ を 使 え る ア プ リ ケ ー シ ョ ン を 作 成 す る こ と が で き る 。

$LIB (${LIB} も 同 じ ) ア ー キ テ ク チ ャ ー に 応 じ て liblib64 に 展 開 さ れ る (例 え ば 、 x86−64 で は lib64 に 、 x86−32 で は lib に 展 開 さ れ る )。
$PLATFORM
(${PLATFORM} も 同 じ ) ホ ス ト シ ス テ ム の プ ロ セ ッ サ 種 別 に 対 応 す る 文 字 列 に 展 開 さ れ る (例 え ば "x86_64")。 い く つ か の ア ー キ テ ク チ ャ ー で は 、 Linux カ ー ネ ル か ら 動 的 リ ン カ ー に プ ラ ッ ト フ ォ ー ム を 表 す 文 字 列 が 提 供 さ れ な い 。 こ の 文 字 列 の 値 は 補 助 ベ ク ト ル の AT_PLATFORM 値 か ら 取 得 さ れ る (getauxval(3) 参 照 )。

オ プ シ ョ ン

−−list 全 て の 依 存 関 係 と そ の 解 決 法 を リ ス ト す る 。

−−verify プ ロ グ ラ ム が 動 的 に リ ン ク さ れ て い る か と 、 動 的 リ ン カ ー が そ の プ ロ グ ラ ム を 扱 え る か を 検 証 す る 。
−−inhibit−cache

/etc/ld.so.cache を 使 用 し な い 。

−−library−path PATH

LD_LIBRARY_PATH 環 境 変 数 の 設 定 で は な く 、 指 定 し た PATH を 使 用 す る (下 記 参 照 )。

−−inhibit−rpath LIST

LIST に あ る オ ブ ジ ェ ク ト 名 の RPATH と RUNPATH の 情 報 を 無 視 す る 。 ld.so が set−user−ID か set−group−ID さ れ て い る 場 合 、 こ の オ プ シ ョ ン は 無 視 さ れ る 。

−−audit LIST

LIST で 指 定 さ れ た 名 前 の オ ブ ジ ェ ク ト を 監 査 者 と し て 使 用 す る 。

ハ ー ド ウ ェ ア 機 能

い く つ か の ラ イ ブ ラ リ は 、 (す べ て の CPU に 存 在 す る わ け で は な い )ハ ー ド ウ ェ ア 固 有 の 命 令 を 使 っ て コ ン パ イ ル さ れ て い る 。 そ の よ う な ラ イ ブ ラ リ は 、 /usr/lib/sse2/ の よ う な 、 必 要 な ハ ー ド ウ ェ ア 機 能 (hardware capability) を 規 定 す る 名 前 の デ ィ レ ク ト リ に イ ン ス ト ー ル す べ き で あ る 。 動 的 リ ン カ ー は 、 マ シ ン の ハ ー ド ウ ェ ア に 基 づ い て こ れ ら の デ ィ レ ク ト リ を 確 認 し 、 指 定 さ れ た ラ イ ブ ラ リ に 最 も 適 し た バ ー ジ ョ ン を 選 択 す る 。 ハ ー ド ウ ェ ア 機 能 デ ィ レ ク ト リ は つ な げ る こ と が で き 、 複 数 の CPU 機 能 を 組 み 合 わ る こ と が で き る 。 対 応 し て い る ハ ー ド ウ ェ ア 機 能 名 の リ ス ト は CPU に 依 存 す る 。 現 在 の と こ ろ 、 以 下 の 名 前 が 認 識 さ れ る 。

Alpha

ev4, ev5, ev56, ev6, ev67

MIPS

loongson2e, loongson2f, octeon, octeon2

PowerPC

4xxmac, altivec, arch_2_05, arch_2_06, booke, cellbe, dfp, efpdouble, efpsingle, fpu, ic_snoop, mmu, notb, pa6t, power4, power5, power5+, power6x, ppc32, ppc601, ppc64, smt, spe, ucache, vsx

SPARC

flush, muldiv, stbar, swap, ultra3, v9, v9v, v9v2

s390

dfp, eimm, esan3, etf3enh, g5, highgprs, hpage, ldisp, msa, stfle, z900, z990, z9−109, z10, zarch

x86 (32−bit の み )

acpi, apic, clflush, cmov, cx8, dts, fxsr, ht, i386, i486, i586, i686, mca, mmx, mtrr, pat, pbe, pge, pn, pse36, sep, ss, sse, sse2, tm

環 境 変 数

重 要 な 環 境 変 数 に は 以 下 の も の が あ る 。

LD_ASSUME_KERNEL

(glibc 2.2.3 以 降 ) 各 共 有 ラ イ ブ ラ リ は 動 的 リ ン カ ー に 必 要 な カ ー ネ ル ABI の 最 小 バ ー ジ ョ ン を 通 知 す る こ と が で き る (必 要 な バ ー ジ ョ ン は ELF の note section に 格 納 さ れ 、 readelf −nNT_GNU_ABI_TAG の ラ ベ ル が 付 い た セ ク シ ョ ン と し て 見 る こ と が で き る )。 実 行 時 に 、 動 的 リ ン カ ー は 実 行 中 の カ ー ネ ル の ABI バ ー ジ ョ ン を 判 定 し 、 カ ー ネ ル の ABI バ ー ジ ョ ン よ り も 大 き な ABI の 最 小 バ ー ジ ョ ン が 指 定 さ れ た 共 有 ラ イ ブ ラ リ の ロ ー ド を 行 わ な い 。

LD_ASSUME_KERNEL を 使 う こ と で 、 動 的 リ ン カ ー に 、 異 な る カ ー ネ ル ABI バ ー ジ ョ ン の シ ス テ ム で 実 行 さ れ て い る か の よ う に 見 せ る こ と が で き る 。 例 え ば 、 以 下 の コ マ ン ド ラ イ ン を 実 行 す る と 、 動 的 リ ン カ ー は myprog が 必 要 と す る 共 有 ラ イ ブ ラ リ を ロ ー ド す る 際 に Linux 2.2.5 上 で 動 作 し て い る と 仮 定 す る 。

$ LD_ASSUME_KERNEL=2.2.5 ./myprog 必 要 な カ ー ネ ル ABI の 最 低 バ ー ジ ョ ン が 異 な る 複 数 の 共 有 ラ イ ブ ラ リ が (検 索 パ ス 中 の 異 な る デ ィ レ ク ト リ に ) あ る シ ス テ ム で は 、 LD_ASSUME_KERNEL を 使 っ て (デ ィ レ ク ト リ 検 索 順 序 に 基 づ き ) 使 用 す る ラ イ ブ ラ リ の バ ー ジ ョ ン を 選 択 す る こ と が で き る 。 歴 史 的 に 見 る と 、 LD_ASSUME_KERNEL の 最 も 一 般 的 な 使 い 道 は 、 LinuxThreads と NPTL の 両 方 を 提 供 し て い る シ ス テ ム で 、 古 い LinuxThreads の POSIX ス レ ッ ド 実 装 を 手 動 で 選 択 す る た め で あ っ た (そ の よ う な シ ス テ ム で は 、 通 常 は NPTL が デ フ ォ ル ト で あ っ た )。 pthreads(7) を 参 照 。

LD_BIND_NOT

(glibc 2.2 以 降 ) シ ン ボ ル を 解 決 し た 際 、 Global Offset Table (GOT) と Procedure Linkage Table (PLT) を 更 新 し な い 。

LD_BIND_NOW

(libc5; glibc 2.1.1 以 降 ) 空 文 字 列 で な い 場 合 、 動 的 リ ン カ ー は プ ロ グ ラ ム の 開 始 時 に 全 て の シ ン ボ ル を 解 決 す る 。 空 文 字 列 の 場 合 、 解 決 し な け れ ば な ら な い 関 数 呼 び 出 し が 最 初 に 参 照 さ れ た 時 点 で 解 決 す る 。 デ バ ッ ガ を 使 っ て い る と き に 役 立 つ 。

LD_LIBRARY_PATH コ ロ ン 区 切 り の デ ィ レ ク ト リ の リ ス ト 。 実 行 時 に ELF ラ イ ブ ラ リ を 検 索 す る デ ィ レ ク ト リ を 指 定 す る 。 PATH 環 境 変 数 と 同 じ よ う に 指 定 す る 。 set−user−ID/set−group−ID さ れ た プ ロ グ ラ ム で は 無 視 さ れ る 。
LD_PRELOAD
追 加 で ユ ー ザ ー が 指 定 す る ELF 共 有 ラ イ ブ ラ リ の リ ス ト 。 指 定 さ れ た ラ イ ブ ラ リ は 、 す べ て の ラ イ ブ ラ リ よ り 前 に ロ ー ド さ れ る 。 リ ス ト の 区 切 り は ス ペ ー ス と コ ロ ン で あ る 。 他 の 共 有 ラ イ ブ ラ リ に あ る 関 数 を 選 択 的 に 置 き 換 え る た め に 用 い る こ と が で き る 。 指 定 さ れ た ラ イ ブ ラ リ は 「 説 明 」 の 節 で 述 べ た ル ー ル を 基 い て 検 索 さ れ る 。 set−user−ID/set−group−ID さ れ た ELF バ イ ナ リ で は 、 ス ラ ッ シ ュ を 含 ん だ パ ス 名 の ラ イ ブ ラ リ は 無 視 さ れ 、 標 準 の 検 索 デ ィ レ ク ト リ の ラ イ ブ ラ リ は そ の ラ イ ブ ラ リ フ ァ イ ル の set−user−ID 許 可 ビ ッ ト が 有 効 に な っ て い る 場 合 の み ロ ー ド さ れ る 。
LD_TRACE_LOADED_OBJECTS

(ELF の み ) 空 文 字 列 で な い 場 合 、 プ ロ グ ラ ム を 普 通 に 実 行 す る の で は な く 、 ldd(1) を 実 行 し た と き の よ う に 動 的 ラ イ ブ ラ リ の 依 存 関 係 を リ ス ト 表 示 さ せ る 。 そ し て 、 そ れ ほ ど 知 ら れ て い な い 環 境 変 数 も あ る 。 多 く は 廃 れ て し ま っ た も の か 内 部 で の み 使 用 さ れ る 環 境 変 数 で あ る 。

LD_AOUT_LIBRARY_PATH

(libc5) a.out バ イ ナ リ に の み 使 わ れ る 環 境 変 数 で 、 LD_LIBRARY_PATH と 同 じ 役 割 を す る 。 ld−linux.so.1 の 古 い バ ー ジ ョ ン で は LD_ELF_LIBRARY_PATH も サ ポ ー ト し て い た 。

LD_AOUT_PRELOAD

(libc5) a.out バ イ ナ リ に の み 使 わ れ る 環 境 変 数 で 、 LD_PRELOAD と 同 じ 役 割 を す る 。 ld−linux.so.1 の 古 い バ ー ジ ョ ン で は LD_ELF_PRELOAD も サ ポ ー ト し て い た 。

LD_AUDIT

(glibc 2.4 以 降 ) 他 の オ ブ ジ ェ ク ト よ り も 前 に 、 別 の リ ン カ ー 名 前 空 間 (そ の プ ロ セ ス で 行 わ れ る 通 常 の シ ン ボ ル 結 合 (symbol bindigns) に は 関 与 し な い 名 前 空 間 ) で ロ ー ド さ れ る 、 ユ ー ザ ー 指 定 の ELF 共 有 オ ブ ジ ェ ク ト の コ ロ ン 区 切 り の リ ス ト 。 こ れ ら の ラ イ ブ ラ リ を 使 っ て 、 動 的 リ ン カ ー の 動 作 を 監 査 す る こ と が で き る 。 set−user−ID/set−group−ID さ れ た バ イ ナ リ で は 、 LD_AUDIT は 無 視 さ れ る 。 動 的 リ ン カ ー は 、 い わ ゆ る 監 査 チ ェ ッ ク ポ イ ン ト (auditing checkpoints) に お い て 、 監 査 (audit) ラ イ ブ ラ リ の 適 切 な 関 数 を 呼 び 出 す こ と で 、 監 査 ラ イ ブ ラ リ へ の 通 知 を 行 う 。 監 査 チ ェ ッ ク ポ イ ン ト の 例 と し て は 、 新 た な ラ イ ブ ラ リ の ロ ー ド 、 シ ン ボ ル の 解 決 、 別 の 共 有 オ ブ ジ ェ ク ト か ら の シ ン ボ ル の 呼 び 出 し 、 な ど が あ る 。 詳 細 は rtld−audit(7) を 参 照 し て ほ し い 。 audit イ ン タ ー フ ェ ー ス は 、 Solaris で 提 供 さ れ て い る も の と 大 部 分 は 互 換 性 が あ る 。 Solaris の audit イ ン タ ー フ ェ ー ス に つ い て は 、 Linker and Libraries GuideRuntime Linker Auditing Interface の 章 に 説 明 が あ る 。

LD_BIND_NOT

(glibc 2.1.95 以 降 ) シ ン ボ ル を 解 決 し た 後 、 GOT (global offset table) と PLT (procedure linkage table) を 更 新 し な い 。

LD_DEBUG

(glibc 2.1 以 降 ) 動 的 リ ン カ ー の 詳 細 な デ バ ッ グ 情 報 を 出 力 す る 。 all に 設 定 し た 場 合 、 全 て の 動 的 リ ン カ ー が 持 つ デ バ ッ グ 情 報 を 表 示 す る 。 help に 設 定 し た 場 合 、 こ の 環 境 変 数 で 指 定 さ れ る カ テ ゴ リ ー の ヘ ル プ 情 報 を 表 示 す る 。 glibc 2.3.4 以 降 、 set−user−ID/set−group−ID さ れ た バ イ ナ リ で は LD_DEBUG は 無 視 さ れ る 。

LD_DEBUG_OUTPUT

(glibc 2.1 以 降 ) LD_DEBUG の 出 力 を 書 き 込 む フ ァ イ ル 。 デ フ ォ ル ト は 標 準 エ ラ ー で あ る 。 set−user−ID/set−group−ID さ れ た バ イ ナ リ で は 、 LD_DEBUG_OUTPUT は 無 視 さ れ る 。

LD_DYNAMIC_WEAK

(glibc 2.1.19 以 降 ) 上 書 き さ れ る 弱 い シ ン ボ ル (昔 の glibc の 挙 動 を 逆 に す る )。 セ キ ュ リ テ ィ 上 の 理 由 か ら 、 glibc 2.3.4 以 降 、 set−user−ID/set−group−ID さ れ た バ イ ナ リ で は LD_DYNAMIC_WEAK は 無 視 さ れ る 。

LD_HWCAP_MASK

(glibc 2.1 以 降 ) ハ ー ド ウ ェ ア 機 能 の マ ス ク 。

LD_KEEPDIR

(a.out の み )(libc5) ロ ー ド す る a.out ラ イ ブ ラ リ の 名 前 に お い て 、 デ ィ レ ク ト リ を 無 視 し な い 。 こ の オ プ シ ョ ン は 用 い る べ き で は な い 。

LD_NOWARN

(a.out の み )(libc5) a.out ラ イ ブ ラ リ に お け る マ イ ナ ー バ ー ジ ョ ン 番 号 の 非 互 換 に 対 す る 警 告 メ ッ セ ー ジ を 抑 制 す る 。

LD_ORIGIN_PATH

(glibc 2.1 以 降 ) バ イ ナ リ へ の パ ス (set−user−ID さ れ て い な い プ ロ グ ラ ム に つ い て )。 セ キ ュ リ テ ィ 上 の 理 由 か ら 、 glibc 2.3.4 以 降 、 set−user−ID/set−group−ID さ れ た バ イ ナ リ で は LD_ORIGIN_PATH は 無 視 さ れ る 。

LD_POINTER_GUARD

(glibc 2.4 以 降 ) 0 に 設 定 す る と 、 ポ イ ン タ ー 保 護 (pointer guarding) が 無 効 に な る 。 そ れ 以 外 の 値 の 場 合 は ポ イ ン タ ー 保 護 が 有 効 に な る 。 デ フ ォ ル ト は ポ イ ン タ ー 保 護 有 効 で あ る 。 ポ イ ン タ ー 保 護 は セ キ ュ リ テ ィ 機 構 の 一 つ で 、 書 き 込 み 可 能 な プ ロ グ ラ ム メ モ リ ー に 格 納 さ れ た コ ー ド へ の ポ イ ン タ ー を ほ ぼ ラ ン ダ ム 化 す る こ と で 、 攻 撃 者 が バ ッ フ ァ ー オ ー バ ー ラ ン や ス タ ッ ク 破 壊 (stack−smashing) 攻 撃 の 際 に ポ イ ン タ ー を 乗 っ 取 る こ と を 困 難 に す る も の で あ る 。

LD_PROFILE

(glibc 2.1 以 降 ) プ ロ フ ァ イ ル を 行 う 共 有 オ ブ ジ ェ ク ト の 名 前 。 パ ス 名 か 共 有 オ ブ ジ ェ ク ト 名 (soname) で 指 定 さ れ る 。 プ ロ フ ィ ー ル の 出 力 は "$LD_PROFILE_OUTPUT/$LD_PROFILE.profile" と い う 名 前 の フ ァ イ ル に 追 記 さ れ る 。

LD_PROFILE_OUTPUT

(glibc 2.1 以 降 ) LD_PROFILE の 出 力 が 書 き 込 ま れ る デ ィ レ ク ト リ 。 こ の 変 数 が 定 義 さ れ て い な い か 、 空 の 文 字 列 が 定 義 さ れ て い る 場 合 、 デ フ ォ ル ト 値 は /var/tmp と な る 。 set−user−ID/set−group−ID さ れ た プ ロ グ ラ ム で は 、 LD_PROFILE_OUTPUT は 無 視 さ れ る 。 出 力 フ ァ イ ル は 常 に /var/profile が 使 用 さ れ る 。

LD_SHOW_AUXV

(glibc 2.1 以 降 ) カ ー ネ ル か ら 渡 さ れ る 補 助 的 な (パ ラ メ ー タ ー の ) 配 列 を 表 示 す る 。 セ キ ュ リ テ ィ 上 の 理 由 か ら 、 glibc 2.3.4 以 降 、 set−user−ID/set−group−ID さ れ た バ イ ナ リ で は LD_SHOW_AUXV は 無 視 さ れ る 。

LD_USE_LOAD_BIAS デ フ ォ ル ト で は (つ ま り 、 こ の 変 数 が 定 義 さ れ て い な い 場 合 )、 実 行 フ ァ イ ル と prelink さ れ た 共 有 オ ブ ジ ェ ク ト で は 、 そ れ ら が 依 存 す る ラ イ ブ ラ リ の ベ ー ス ア ド レ ス が 尊 重 さ れ る 一 方 、 (prelink さ れ て い な い ) position−independent executables (PIEs) と 他 の 共 有 オ ブ ジ ェ ク ト で は 依 存 す る ラ イ ブ ラ リ の ベ ー ス ア ド レ ス は 尊 重 さ れ な い 。 LD_USE_LOAD_BIAS が 値 1 で 定 義 さ れ た 場 合 、 実 行 フ ァ イ ル と PIE の ど ち ら で も ベ ー ス ア ド レ ス が 尊 重 さ れ る 。 LD_USE_LOAD_BIAS が 値 0 で 定 義 さ れ た 場 合 、 実 行 フ ァ イ ル と PIE の ど ち ら で も ベ ー ス ア ド レ ス は 尊 重 さ れ な い 。 set−user−ID や set−group−ID さ れ た プ ロ グ ラ ム で は 、 こ の 変 数 は 無 視 さ れ る 。
LD_VERBOSE

(glibc 2.1 以 降 ) 空 文 字 列 で な い 場 合 に 、 LD_TRACE_LOADED_OBJECTS 環 境 変 数 が 設 定 さ れ て い れ ば 、 プ ロ グ ラ ム の シ ン ボ ル バ ー ジ ョ ン 情 報 を 出 力 す る 。

LD_WARN

(ELF の み )(glibc 2.1.3 以 降 ) 空 文 字 列 で な い 場 合 、 解 決 さ れ て い な い シ ン ボ ル が あ れ ば 警 告 を 出 す 。

LDD_ARGV0

(libc5) ldd(1) の 引 き 数 が な い 場 合 に 、 argv[0] と し て 使 わ れ る 値 。

フ ァ イ ル

/lib/ld.so

a.out の 動 的 リ ン カ ー /ロ ー ダ ー

/lib/ld−linux.so.{1,2}

ELF の 動 的 リ ン カ ー /ロ ー ダ ー

/etc/ld.so.cache ラ イ ブ ラ リ を 検 索 す る デ ィ レ ク ト リ を 集 め た リ ス ト と 、 共 有 ラ イ ブ ラ リ の 候 補 の 整 列 リ ス ト を 含 む フ ァ イ ル 。
/etc/ld.so.preload
プ ロ グ ラ ム の 前 に ロ ー ド す べ き ELF 共 有 ラ イ ブ ラ リ を ス ペ ー ス で 区 切 っ た リ ス ト が 書 か れ て い る フ ァ イ ル 。
lib*.so*
共 有 ラ イ ブ ラ リ

注 意

ld.so の 機 能 は libc の バ ー ジ ョ ン 4.4.3 以 上 を 用 い て コ ン パ イ ル さ れ た 実 行 フ ァ イ ル で 使 用 可 能 で あ る 。 ELF の 機 能 は Linux 1.1.52 以 降 と libc5 以 降 で 使 用 可 能 で あ る 。

関 連 項 目

ld(1), ldd(1), pldd(1), sprof(1), dlopen(3), getauxval(3), rtld−audit(7), ldconfig(8), sln(8)

こ の 文 書 に つ い て

こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。

COMMENTS