Para localizar arquivos já instalados, você pode usar dpkg -S
$ dpkg -S syscall
gdb: /usr/share/gdb/syscalls
gdb: /usr/share/gdb/syscalls/sparc-linux.xml
manpages-dev: /usr/share/man/man2/_syscall.2.gz
gdb: /usr/share/gdb/syscalls/gdb-syscalls.dtd
gdb: /usr/share/gdb/syscalls/ppc64-linux.xml
gdb: /usr/share/gdb/syscalls/sparc64-linux.xml
gdb: /usr/share/gdb/syscalls/mips-n32-linux.xml
perl: /usr/lib/perl/5.14.2/bits/syscall.ph
manpages-dev: /usr/share/man/man2/syscalls.2.gz
gdb: /usr/share/gdb/syscalls/amd64-linux.xml
gdb: /usr/share/gdb/syscalls/i386-linux.xml
perl: /usr/lib/perl/5.14.2/syscall.ph
libc6-dev:i386: /usr/include/i386-linux-gnu/bits/syscall.h
perl: /usr/lib/perl/5.14.2/sys/syscall.ph
manpages-dev: /usr/share/man/man2/afs_syscall.2.gz
manpages-dev: /usr/share/man/man2/syscall.2.gz
gdb: /usr/share/gdb/syscalls/mips-o32-linux.xml
gdb: /usr/share/gdb/syscalls/ppc-linux.xml
libc6-dev:i386: /usr/include/syscall.h
gdb: /usr/share/gdb/syscalls/mips-n64-linux.xml
libc6-dev:i386: /usr/include/i386-linux-gnu/sys/syscall.h
linux-libc-dev:i386: /usr/include/i386-linux-gnu/asm/vsyscall.h
Para localizar arquivos que não são fornecidos por pacotes instalados, você pode tentar locate
(se o arquivo for recente o suficiente:
$ locate syscall.h
/usr/include/syscall.h
/usr/include/i386-linux-gnu/asm/vsyscall.h
/usr/include/i386-linux-gnu/bits/syscall.h
/usr/include/i386-linux-gnu/sys/syscall.h
Se nenhum desses resultados mostrar, você pode tentar uma pesquisa no Pesquisa de pacotes do Ubuntu :
http://packages.ubuntu.com/search?searchon=contents&keywords=name of file&mode=exactfilename&suite=raring&arch=any
Se você quiser uma solução "local" , use apt-file
:
sudo apt-get -y install apt-file sudo apt-file update apt-file search name_of_file