Documente Academic
Documente Profesional
Documente Cultură
Linux Distros
June 23, 2015 | By Carlos Alberto
OpenSSL 1.0.0 shared libraries - This is the real requirement that may be
in different version or missing in some distributions
Wget - This tool will be used to download everything and also is needed if
you want voice notifications
tar, gzip and unzip - uTorrent for Linux comes tarred and gzipped and the
web interface is zipped inside the main tarball
Optional
GCC, Binutils, make - This will be used if you need to build OpenSSL
from source
ar - This will be used if you don't have OpenSSL on your system and you
decide to lend it from Debian instead of compile from sources
ldd - This utility will used to list dynamic dependencies of the uTorrent
binary
bzip2 - If you need to compile mpg123 from sources, you will need it to
extract the sources from the tarball
In fact, if you meet all requirements, you will be able to run uTorrent on virtually
any Linux flavor, the distros a mention on the article are the ones that i tried
myself.
Download uTorrent
In this step we have two main options, for ubuntu and debian systems, there are
packages and for all other distributions we are going to use the Debian package
Ubuntu
64-bits
wget http://download-new.utorrent.com/os/linux-x64-ubuntu-1304/track/beta/endpoint/utserver/utserver.tar.gz
32-bits
wget http://download-new.utorrent.com/os/linux-i386-ubuntu-1304/track/beta/endpoint/utserver/utserver.tar.gz
On Debian and other Linux distributions do this:
64-bits
wget http://download-new.utorrent.com/os/linux-x64-debian-70/track/beta/endpoint/utserver/utserver.tar.gz
32-bits
wget http://download-new.utorrent.com/os/linux-i386-debian-70/track/beta/endpoint/utserver/utserver.tar.gz
You can also download other versions of uTorrent for Linux and choose the
package for your system
The following image with the complete output of ldd shows that the shared
libraries libssl.so.1.0.0 and libcrypto.so.1.0.0 are not installed:
ln -s /lib64/libssl.so.x.y.z /lib64/libssl.so.1.0.0
ln -s /lib64/libcrypto.so.x.y.z /lib64/libcrypto.so.1.0.0
2) The safest choice if you don't have a compatible library, is to download
and compile OpenSSL from sources
wget https://www.openssl.org/source/openssl-1.0.0r.tar.gz
cd openssl-1.0.0r
./config shared && make
Note that we are configuring it to build shared libraries, that wil create
libssl.so.1.0.0 and libcryto.so.1.0.0.
To avoid conflicts with the current OpenSSL shipped with your system, copy only
the files you need
cp libssl.so.1.0.0 libcrypto.so.1.0.0 /lib64
3) Install the library from a package of other Linux distribution
Here are Debian packages that you can try
64-bits
mkdir debianlibssl && cd debianlibssl
wget http://security.debian.org/debiansecurity/pool/updates/main/o/openssl/libssl1.0.0_1.0.1e-2+deb7u16_amd64.deb
ar xv libssl1.0.0_1.0.1e-2+deb7u16_amd64.deb && tar zxvf data.tar.gz
cp usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 usr/lib/x86_64-linuxgnu/libssl.so.1.0.0 /lib64
32-bits
mkdir debianlibssl && cd debianlibssl
wget http://security.debian.org/debiansecurity/pool/updates/main/o/openssl/libssl1.0.0_1.0.1e-2+deb7u16_i386.deb
ar xv libssl1.0.0_1.0.1e-2+deb7u16_i386.deb && tar zxfv data.tar.gz
cp usr/lib/i386-linux-gnu/libssl.so.1.0.0 usr/lib/i386-linux-gnu/libcrypto.so.1.0.0 /lib
If there are still missing libraries or program, you may use some tools of your
distribution to find out what package you need for a given file, let's suppose
libgcc_s.so.1, the command for each distro would be something like this:
ubuntu#apt-get install apt-file && apt-file update && apt-file search libgcc_s.so.1
opensuse#zypper wp libgcc_s.so.1
slackware#slackpkg file-searh libgcc_s.so.1
fedora22#dnf provides libgcc_s.so.1preprocessing
centos#yum provides libgcc_s.so.1
fedora_old#yum provides libgcc_s.so.1
arch#pacman -S pkgfile && pkgfile --update && pkgfile -r libgcc_s.so.1
Gentoo users should try this site: http://www.portagefilelist.de/site/query to
search for package
Install some package, let's suppose wget here:
centos#yum install wget
gentoo#emerge -s wget
arch#pacman -S wget
slackware#slackpkg install wget
fedora_current#dnf install wget
fedora20#yum install wget
debianlike#apt get install
Running uTorrent
Once you solved the problem of missing dependencies, enter the uTorrent
directory and take a look on the output of the following command:
./utserver -usage
This will show you the parameters of the command line interface
Inside uTorrent directory, run the utserver binary with the settings path pointing
to it:
cd /opt/utorrent-server*
./utserver -settingspath $(pwd)
Access uTorrent
With utserver running, enter http://localhost:8080/gui, the default username
is admin and no passwordis required by default:
uTorrent login
Settings
OK, you are running the service and already logged in, you can start download
now, however there is some things you would like to set, so click on the gear icon
on the toolbar to open the configuration panel:
Set password
On the setting panel, click on Web UI at the sidebar and set the password:
Setting password
Directories
Other thing that may be useful is to set the download directories, on the sidebar,
click in Directories:
Setting directories
On the image above I have set uTorrent to move the complete downloads to my
downloads directories, also set it to automatically load torrent files from this
directories and delete them when it is loaded.
Bandwidth
If your bandwidth is limited for any reason, like a shared connection or you are
running a mission critic service, you may like the following.
Scheduler
If you want something more flexible, scheduler feature is for you, check the
option 'Enable Scheduler', set the speed limits and click on the squares of the
matrix:
In the example above, we set uTorrent that from monday to friday stop its
activities from 12:00 to 12:59 and that it should limit the speed from 18:00 to
19:59 all days from tuesday to friday.
Scripting
In uTorrent you can run arbitrary programs when the state of a torrent changes,
in fact there is a small API that can send parameters about the event to the called
program.
Voice notifications
Here is a small Bash script that will speak the state of a file when it's state
change. This is just a example of what you can do with the torrent state API of
uTorrent.
Create the file /usr/local/bin/speech.sh and paste the following code on it:
#!/bin/bash
#dirty preprocessing
Field 1:
/usr/local/bin/speech.sh '%N' complete
Field 2:
/usr/local/bin/speech.sh '%N' '%M'
Downloads
Once you have a password, pointed directories, granted that uTorernt will not use
all your internet and possibly set other things, it is time to download, here are two
ways, click on file icon highlighted in red to upload a torrent file to the server or
paste a magnet link on the input field highlighted in blue:
uTorrent download
That's all folks, you can now download and share your files from your favorite
Linux distribution. If you have any question or want to share your own experience
with uTorrent and the BitTorrent protocol leave us a comment. Thanks for
reading!