--- layout: default navsection: installguide title: Install Keep ... This installation guide assumes you are on a 64 bit Debian or Ubuntu system. First add the Arvados apt repository, and then install the Keep package. <notextile> <pre><code>~$ <span class="userinput">echo "# apt.arvados.org" > /etc/apt/sources.list.d/apt.arvados.org.list</span> ~$ <span class="userinput">echo "deb http://apt.arvados.org/ wheezy main" >> /etc/apt/sources.list.d/apt.arvados.org.list</span> ~$ <span class="userinput">/usr/bin/apt-key adv --keyserver pgp.mit.edu --recv 1078ECD7</span> ~$ <span class="userinput">/usr/bin/apt-get update</span> ~$ <span class="userinput">/usr/bin/apt-get install keep</span> </code></pre> </notextile> Verify that Keep is functional: <notextile> <pre><code>~$ <span class="userinput">keep -h</span> keep -h 2014/07/24 15:38:27 Keep started: pid 13606 Usage of keep: -data-manager-token-file="": File with the API token used by the Data Manager. All DELETE requests or GET /index requests must carry this token. -enforce-permissions=false: Enforce permission signatures on requests. -listen=":25107": Interface on which to listen for requests, in the format ipaddr:port. e.g. -listen=10.0.1.24:8000. Use -listen=:port to listen on all network interfaces. -permission-key-file="": File containing the secret key for generating and verifying permission signatures. -permission-ttl=1209600: Expiration time (in seconds) for newly generated permission signatures. -pid="": Path to write pid file -serialize=false: If set, all read and write operations on local Keep volumes will be serialized. -volumes="": Comma-separated list of directories to use for Keep volumes, e.g. -volumes=/var/keep1,/var/keep2. If empty or not supplied, Keep will scan mounted filesystems for volumes with a /keep top-level directory. </code></pre> </notextile> Prepare one or more volumes for Keep to use. Simply create a /keep directory on all the partitions you would like Keep to use, and then start Keep. For example, using 2 tmpfs volumes: <notextile> <pre><code>~$ <span class="userinput">keep</span> 2014/07/24 11:41:37 Keep started: pid 20736 2014/07/24 11:41:37 adding Keep volume: /tmp/tmp.vwSCtUCyeH/keep 2014/07/24 11:41:37 adding Keep volume: /tmp/tmp.Lsn4w8N3Xv/keep 2014/07/24 11:41:37 Running without a PermissionSecret. Block locators returned by this server will not be signed, and will be rejected by a server that enforces permissions. 2014/07/24 11:41:37 To fix this, run Keep with --permission-key-file=<path> to define the location of a file containing the permission key. </code></pre> </notextile> It's recommended to run Keep under "runit":https://packages.debian.org/search?keywords=runit or something similar.