Каманда LDD можа выкарыстоўвацца, каб паказаць вам падзяляем бібліятэкі, неабходныя для любой дадзенай праграмы.
Гэта карысна для працы, калі ёсць адсутнічае залежнасць і можа быць выкарыстана для адлюстравання адсутнічаюць функцый і аб'ектаў.
LDD Сінтаксіс
Гэта правільны сінтаксіс пры выкарыстанні каманды LDD:
LDD [КЛЮЧ] ... ФАЙЛ ...Вось даступная L каманда перамыкачы , якія могуць быць устаўленыя ў [OPTION] месца ў камандзе вышэй:
--help надрукаваць гэтую даведку і выйсці --version Выдаць інфармацыю аб версіі і выйсці з -d, --data-relocs пераездаў дадзеных працэсу -r, дадзеныя працэсу --function-relocs і функцыі пераездаў -u, --unused друк невыкарыстоўваныя прамыя залежнасці -v, --verbose друкаваць ўсю інфармацыюЯк выкарыстоўваць каманду LDD
Вы можаце выкарыстоўваць наступную каманду, каб атрымаць больш інфармацыі з любой каманды LDD:
LDD -v / шлях / да / праграмы / выкананыВыснову паказвае інфармацыю аб версіі, а таксама шляхі і адрас для агульных бібліятэк, як гэта:
LDD libshared.so Linux-vdso.so.1 => (0x00007fff26ac8000) libc.so.6 => /lib/libc.so.6 0x00007ff1df55a000) /lib64/ld-linux-x86-64.so.2 (0x00007ff1dfafe000)Калі файл SO не існуе, вы можаце знайсці не хапае, бібліятэкі, выкарыстоўваючы наступную каманду:
LDD -d шлях / да / праграмеВыхад падобны на наступнае:
Linux-vdso.so.1 (0x00007ffc2936b000) /home/gary/demo/garylib.so => ня foundlibc.so.6 => USR / Бібліятэка / libc.so.6 (0x00007fd0c6259000) / lib64 / LD-Linux-x86 -64.so.2 (0x00007fd0c65fd000)Важна: Ніколі не запускайце каманду LDD супраць ненадзейных праграмы , паколькі каманда можа рэальна выканаць. Гэта больш бяспечная альтэрнатыва , якая паказвае толькі непасрэдныя залежнасці і не дрэва залежнасцяў усяго: objdump -p / шлях / да / праграме | Grep ПАТРАБУЕЦЦА.
Як знайсці шлях да дадатку
Вам трэба будзе падаць поўны шлях да дадатку, калі вы хочаце, каб знайсці яго залежнасці з LDD, якія вы можаце зрабіць некалькі спосабаў.
Напрыклад, гэта, як вы б знайсці шлях да Firefox :
знайсці / -name FirefoxПраблема з камандай знаходзяць , аднак, заключаецца ў тым , што ён не толькі спіс выкананых , але ўсюды, дзе Firefox знаходзіцца, напрыклад:
- /etc/skel/.mozilla/firefox
- / Галоўная // кэш / Mozilla / Firefox
- /home//.mozilla/firefox
- / USR / бен / Firefox
- / USR / Lib / Firefox
- / USR / Lib / Firefox / Firefox
Такі падыход з'яўляецца трохі залішнім , і вы , магчыма , спатрэбіцца выкарыстаць каманду судо , каб падняць свае прывілеі, інакш вы , верагодна, атрымаць шмат дазволу памылкі адмовы.
Гэта замест таго, значна прасцей выкарыстоўваць WhereIs каманду , каб знайсці шлях прыкладанняў ':
WhereIs светлячокНа гэты раз выснова можа выглядаць наступным чынам:
/ USR / бен / светлячок
/ І г.д. / светлячок
/ USR / Бібліятэка / светлячок
Усё, што вам трэба зрабіць цяпер, каб знайсці агульныя бібліятэкі для Firefox з'яўляецца увядзіце наступную каманду:
LDD / USR / бен / светлячокВыснова каманды будзе выглядаць прыкладна так:
Linux-vdso.so.1 (0x00007ffff8364000)
libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007feb9917a000)
libdl.so.2 => /usr/lib/libdl.so.2 (0x00007feb98f76000)
libstdc ++. so.6 => /usr/lib/libstdc++.so.6 (0x00007feb98bf4000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007feb988f6000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007feb986e0000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007feb9833c000)
/lib64/ld-linux-x86-64.so.2 (0x00007feb99397000)
Linux-vdso.so.1 гэтае імя бібліятэкі і шаснаццатковы лік з'яўляецца адрасам, дзе бібліятэка будзе загружаная ў памяць.
Вы заўважыце на многіх іншых лініях, что => сімвал ідуць шляху. Гэта шлях да фізічнага двайковым; шаснаццатковы лік з'яўляецца адрасам, па якім будзе загружаная бібліятэка.