--- 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.
~$ echo "# apt.arvados.org" > /etc/apt/sources.list.d/apt.arvados.org.list
~$ echo "deb http://apt.arvados.org/ wheezy main" >> /etc/apt/sources.list.d/apt.arvados.org.list
~$ /usr/bin/apt-key adv --keyserver pgp.mit.edu --recv 1078ECD7
~$ /usr/bin/apt-get update
~$ /usr/bin/apt-get install keep
Verify that Keep is functional:
~$ keep -h
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.
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:
~$ keep
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= to define the location of a file containing the permission key.

It's recommended to run Keep under "runit":https://packages.debian.org/search?keywords=runit or something similar.