The Internet Suspend/Resume® (ISR) project
   OpenISR® software: Source code and binary packages


License and Disclaimer

All software below is experimental in nature, and is provided "as is" with no warranties of any kind. See the appropriate license text for full text of disclaimers and caveats: GNU General Public License v2, GNU Lesser General Public License v2.1, or Eclipse Public License v1.0. (Different components of the system are licensed under different terms, as specified in the source code headings.)


System Requirements

To run the client:
  • Linux kernel (versions 2.6.18 through 2.6.31 supported)
  • Linux userspace: curl, zlib, e2fsprogs libuuid, libarchive, libgmp, libtasn1, GTK+, Perl, Python, gtk-vnc Python bindings, udev, ssh, rsync
  • VirtualBox, KVM, VMware Workstation, or VMware Player
  • An accessible OpenISR server and at least 10GB free disk space (for parcel cache)
To run the server:
  • Linux userspace: An HTTP server, an ssh server, rsync, Perl, zlib, e2fsprogs' uuidgen, libarchive, libgmp, libtasn1
  • Lots of free disk space (depending on the number and size of parcels to be stored)

Recent Changes

Changes in version 0.9.7 include:
  • Support Fedora 12 and Ubuntu 9.10
  • Support kernel 2.6.31
  • Support the version of KVM shipped with RHEL 5.4
  • Add server-side tools to convert a parcel to/from a flat disk image
  • Add parcel resizing support
  • Add new, more user-friendly interface for KVM
  • Add "isr poweroff" command to delete a parcel's memory image
  • Various other improvements
Changes in version 0.9.6 include:
  • Support Fedora 11, Ubuntu 9.04, and RHEL 5
  • Support VirtualBox 2.2 and 3.0
  • Support kernel 2.6.30
  • No longer upload session log to the server on checkin/sync
  • Various other improvements
Changes in version 0.9.5 include:
  • Support 2.6.28 and 2.6.29 kernels
  • Support new versions of VirtualBox and KVM
  • Add rewritten dirtometer
  • Relicense several components to GPLv2 or LGPLv2.1
  • Various other improvements
Changes in version 0.9.4 include:
  • Add support for VirtualBox and KVM
  • Add support for 2.6.27 kernel
  • Drop support for kernels older than 2.6.18
  • Various other fixes
For details and older changes, see the CHANGES file.

GPG Key

OpenISR source releases, binary packages, and release tags in Git are signed with GPG. The public key for isr@cs.cmu.edu is:
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.6 (GNU/Linux)

mQGiBEX5u28RBADyIe4k/TTVn2R+syOCcA6KtN0hdxGmN0VABvF9ZHmqIPcGoZx3
sxgDrch+PLm5b782smtbnpuzz8NgH4lAGtrYJnT+c1ak2hURXI6+GXlqG8mSMTyo
WzqgbRp0XVI56Fccx7hqI9qvC2YOixM6dB9WtI1iiyd3hlTNcxYgT4lZqwCgt9Ty
BDAjDIDIw/hij/WO5iaXM40D/j7tZB5DuR2bZh5EZF9Rvwqc9oRxn0+Q90MCYtNJ
WDYY5MbhRl9+TyqoEcSBxghAVrQ501p/d5e/5+QmxqJNbYQsEimsk8AtqGPV5xAp
+joqY+0TuByFTQ05DxN/eQLM9Rj0yE+7GaI6aVBck8uXF+H1BDtrnYCcxYT90Le6
Q2YNA/sGBFuBg/QX2gT4ovzX6r6fY++nGcMbeB3+S/CKeTekx3aoC5RjSXVUbpf/
5maJWSScQX5U2K8Gk7zsPTg8Yy7LjikuRbNfCqYxK/9Xm0CworEQr0u0aZWuCSvI
iqFh2yQQ3EtDoN4hF64s/flNFpUoj2PpH2fm1IFfUISdRiIY6rQoSW50ZXJuZXQg
U3VzcGVuZC9SZXN1bWUgPGlzckBjcy5jbXUuZWR1PohmBBMRAgAmBQJF+btvAhsD
BQkJZgGABgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQdL7DVyG5drx6QwCfWl/X
kkCPFNYcqgiTtbN8EiuP/88AnjZ0bdrffF0+akayEMJOtIrlYXmw
=Qnpm
-----END PGP PUBLIC KEY BLOCK-----

and is available for download here.

Source Releases

The latest source release is openisr-0.9.7.tar.gz. For client installation instructions, see the README. For server installation instructions, see README.server. Older releases are available here.

SHA1 checksum:
31f62e9c4049deb5742e4ef01bd935d77750d93b  openisr-0.9.7.tar.gz

The OpenISR 0.9.7 source tarball is signed with GPG:
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQBK+dYOdL7DVyG5drwRAkCiAJ0Vuzzpkc1fx3g2CHF/rvAw0XjoBwCePsaY
OWEJ/AZRgH54gpHRKOeu7Fg=
=bwe8
-----END PGP SIGNATURE-----


Binary Packages

Debian/Ubuntu
OpenISR client packages are available via APT for the following distributions:
  • Debian 4.0 (Etch)
  • Debian 5.0 (Lenny)
  • Ubuntu 8.04 (Hardy)
  • Ubuntu 8.10 (Intrepid)
  • Ubuntu 9.04 (Jaunty)
  • Ubuntu 9.10 (Karmic)
To install, first add the OpenISR package repository to APT:
  1. Add the appropriate line to /etc/apt/sources.list, depending on your distribution version:
    deb http://isr.cmu.edu/debian etch/
    or...
    deb http://isr.cmu.edu/debian lenny/
    or...
    deb http://isr.cmu.edu/ubuntu hardy/
    or...
    deb http://isr.cmu.edu/ubuntu intrepid/
    or...
    deb http://isr.cmu.edu/ubuntu jaunty/
    or...
    deb http://isr.cmu.edu/ubuntu karmic/
    
    If you would like to be able to get the OpenISR source code with apt-get source, you can also add a deb-src line:
    deb-src http://isr.cmu.edu/debian etch/
    or...
    deb-src http://isr.cmu.edu/debian lenny/
    or...
    deb-src http://isr.cmu.edu/ubuntu hardy/
    or...
    deb-src http://isr.cmu.edu/ubuntu intrepid/
    or...
    deb-src http://isr.cmu.edu/ubuntu jaunty/
    or...
    deb-src http://isr.cmu.edu/ubuntu karmic/
    
  2. Import the OpenISR public key into your APT keyring:
    curl http://isr.cmu.edu/software/isr-signing-key | sudo apt-key add -
Then, to install the client:
  1. Install the openisr-client package:
    sudo apt-get install openisr-client
  2. Add any local users who will use OpenISR to the isrusers group. You will need to log out and log back in for this change to take effect.
To install the server: (This is only necessary if you do not have access to an existing OpenISR server!)
  1. Install the openisr-server package:
    sudo apt-get install openisr-server
  2. Configure your web server to map http://your-server/isr to the /var/lib/openisr/server directory. With Apache, this can be done by adding this line to your Apache configuration file:
    Alias /isr /var/lib/openisr/server
  3. Ensure that sshd is configured to start at boot.
  4. Use the isr_admin tool to create user accounts and parcels.
Fedora/RHEL
OpenISR packages are available via Yum for Fedora 10, Fedora 11, Fedora 12, and Red Hat Enterprise Linux 5. To install, first add the OpenISR repository to Yum by installing the appropriate repository RPM for your distribution:

Then, to install the client:

  1. Use Yum to install the openisr-client package.
  2. Add any local users who will use OpenISR to the isrusers group. You will need to log out and log back in for this change to take effect.
To install the server: (This is only necessary if you do not have access to an existing OpenISR server!)
  1. Use Yum to install the openisr-server package.
  2. Configure Apache to map http://your-server/isr to the /var/lib/openisr/server directory by adding this line to your Apache configuration file:
    Alias /isr /var/lib/openisr/server
  3. Ensure that httpd and sshd are configured to start at boot.
  4. Use the isr_admin tool to create user accounts and parcels.

Development Repository

The OpenISR platform is developed using the Git version control system. You can get the latest development sources by pulling from:
git://isr.cmu.edu/openisr.git