Info sui file binari
In generale i normali utenti non si insteressano dei file binari.
Siamo abituati a installarli e usarli, e magari sapere in quale directory troviamo il binario (/usr/bin, /usr/sbin, ecc).
In verità possiamo avere alcune informazioni interessanti su questi file in maniera semplice e usando alcuni comandi sul terminale.
Prima di tutto possiamo usare il comando "file":
$ file /usr/bin/nmap
/usr/bin/nmap: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/LINUX 2.6.18, stripped
Come esempio ho usato il binario /usr/bin/nmap.
Come vedete questo comando identifica la piattaforma per la quale è compilato, con la dipendenza o meno con altre librerie.
Se è linkato statisticamente significa che tutte le dipendenze sono inglobate nell'eseguibile; in teoria quindi potrebbe essere eseguito qu qualsiasi piattaforma.
I programmi linkati dinamicamente (come nell'esempio) usano invece altre librerie che si trovano nel path delle librerie.
Possiamo scoprire quali librerie sono richieste usando ldd:
$ ldd /usr/bin/nmap
...
L'output mostrerà tutte le librerie necessarie per NMap.
Ciò vale ovviamente anche per il Mac ma con alcune differenze.
Ciao!!
file unix linux mac os x nmap /usr/bin/nmap
Commentami!