Using proxychains to do apt-get update in ubuntu 12.04.2
sudo proxychains apt-get update
gives following error
ERROR: ld.so: object 'libproxychains.so.3' from LD_PRELOAD cannot be preloaded: ignored.
How can I avoid this error?
You must change
export LD_PRELOAD=libproxychains.so.3
to
export LD_PRELOAD=/usr/lib/libproxychains.so.3
in /usr/bin/proxychains
or use find /usr/lib/ -name libproxychains.so.3 -print
to get the right file path.
proxy_dns
, the same needs to be done to `which proxyresolv`
as well.
Commented
Nov 23, 2018 at 23:35
Although the error goes away when setting
export LD_PRELOAD=/usr/lib/libproxychains.so.3
in /usr/bin/proxychains there is no such file in that location on Ubuntu. the link resides in /usr/lib/x86_64-linux-gnu/ on a 64bit system and /usr/lib/i386-linux-gnu/ (i think) on a 32bit system. The link points to the file libproxychains.so.3.0.0 in the same directory. The change should be
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libproxychains.so.3
if on 64bit
export LD_PRELOAD=/usr/lib/i386-linux-gnu/libproxychains.so.3
if on 32bit Ubuntu and derivatives.
In my case,
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libproxychains.so.3
did not work. I also added this line to my .bashrc
and refreshed it by source ~/.bashrc
Solution:
You need to add/edit it to proxychains
by:
sudo gedit /usr/bin/proxychains
if on 32bit Ubuntu and derivatives, replace x86_64-linux-gnu
with i386-linux-gnu
You can just add
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libproxychains.so.3
in .bashrc
instead of run proxychains bash
in terminal.
/usr/bin/proxychains
contains a link to LD_PRELOAD, which should not belibproxychains.so.3
but should belibproxychains.so
. Of course, assuming you have/usr/lib/libproxychains.so
correctly linking to/usr/lib/libproxychains.so.3