8
S3QL depends on several other programs and libraries that have to be
9
installed first. The best method to satisfy these dependencies depends
10
on your distribution. In some cases S3QL and all its dependencies can
11
be installed with as little as three commands, while in other cases more work
14
The `S3QL Wiki <http://code.google.com/p/s3ql/w/list>`_ contains
15
installation instructions for quite a few different Linux
16
distributions. You should only use the generic instructions in this
17
manual if your distribution is not included in the `distribution-specific
18
installation instructions
19
<http://code.google.com/p/s3ql/w/list?q=label:Installation>`_ on the wiki.
25
The following is a list of the programs and libraries required for
26
running S3QL. Generally, you should first check if your distribution
27
already provides a suitable packages and only install from source if
30
* Kernel version 2.6.9 or newer. Starting with kernel 2.6.26
31
you will get significantly better write performance, so you should
32
actually use *2.6.26 or newer whenever possible*.
34
* The `FUSE Library <http://fuse.sourceforge.net/>`_ should already be
35
installed on your system. However, you have to make sure that you
36
have at least version 2.8.0.
38
* The `PyCrypto++ Python Module
39
<http://pypi.python.org/pypi/pycryptopp>`_. To check if this module
40
is installed, try to execute `python -c 'import pycryptopp'`.
42
* The `argparse Python Module
43
<http://pypi.python.org/pypi/argparse>`_. To check if this module is
44
installed, try to execute `python -c 'import argparse; print
45
argparse.__version__'`. If argparse is installed, this will print
46
the version number. You need version 1.1 or later.
48
* The `APSW Python Module <http://code.google.com/p/apsw/>`_. To check
49
which (if any) version of APWS is installed, run the command ::
51
python -c 'import apsw; print apsw.apswversion(), apsw.sqlitelibversion()'
53
If APSW is installed, this should print two version numbers which
54
both have to be at least 3.7.0.
56
* The `PyLibLZMA Python module
57
<http://pypi.python.org/pypi/pyliblzma>`_. To check if this module
58
is installed, execute `python -c 'import lzma; print
59
lzma.__version__'`. This should print a version number. You need at
62
* The `Python LLFUSE module
63
<http://code.google.com/p/python-llfuse/>`_. To check if this module
64
is installed, execute `python -c 'import llfuse; print
65
llfuse.__version__'`. This should print a version number. You need at
68
Note that earlier S3QL versions shipped with a builtin version of
69
this module. If you are upgrading from such a version, make sure to
70
completely remove the old S3QL version first.
72
* If you want to use the SFTP backend, then you also need the
73
`Paramiko Python Module <http://www.lag.net/paramiko/>`_. To check
74
if this module is installed, try to execute `python -c 'import
83
To install S3QL itself, proceed as follows:
85
1. Download S3QL from http://code.google.com/p/s3ql/downloads/list
86
2. Unpack it into a folder of your choice
87
3. Run `python setup.py test` to run a self-test. If this fails, ask
88
for help on the `mailing list
89
<http://groups.google.com/group/s3ql>`_ or report a bug in the
90
`issue tracker <http://code.google.com/p/s3ql/issues/list>`_.
92
Now you have three options:
94
* You can run the S3QL commands from the `bin/` directory.
96
* You can install S3QL system-wide for all users. To do that, you
97
have to run `sudo python setup.py install`.
99
* You can install S3QL into `~/.local` by executing `python
100
setup.py install --user`. In this case you should make sure that
101
`~/.local/bin` is in your `$PATH` environment variable.