Skip to content
A wrapper script for the zram linux kernel module with zsh and openrc support
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
openrc Log errors. Add defaults where half of memory is used for zram Mar 4, 2019
systemd/system Log errors. Add defaults where half of memory is used for zram Mar 4, 2019
zsh Support zstd (default, help text, zsh completion) Aug 13, 2018
AUTHORS Log errors. Add defaults where half of memory is used for zram Mar 4, 2019


A wrapper script for the zram kernel module with interactive and init support

(C) Martin Väth (martin at Many thanks to all people in the AUTHORS file for contributing. The license of this package is the GNU Public License GPL-2.

This is a small helper script to setup a zram device as swap or as a ramdisk. Also a zsh completion file and openrc and systemd init-scripts are provided.

If zramctl (from >=util-linux-2.26) is available, this is used by default. Currently, this is not a dependency: a manual method is provided as a fallback. The latter might be removed in a future release of this script.

If you want to use one of the options -K -M -2 -Z to pass generic args, you need (v2.0 or newer) in your $PATH, see

To install this script, just copy the content of sbin into root's $PATH. To obtain support for zsh completion, copy the content of zsh to zsh's $fpath. For openrc support, the content of openrc should go into /etc. For systemd support, the content of systemd/system should go into a systemd unit directory (pkg-config --variable=systemdsystemunitdir systemd, usually /lib/systemd/system or /usr/lib/systemd/system) and be modified and enabled with systemctl enable ... for the desired setting. (Or install locally, e.g. directly into /etc/systemd/system). For systemd and optionally also for openrc the content of modprobe.d should go into /lib/modprobe.d or /etc/modprobe.d and be modified appropriately.

To use LZ4 compression with zram your kernel needs to be compiled with a corresponding options. Depending on your kernel version this might be

  • CONFIG_ZRAM_LZ4_COMPRESS=y (for older kernels)
  • CONFIG_CRYPTO_LZ4=y (for recent kernels)

For Gentoo, there is an ebuild in the main tree (older version) and in the mv overlay (current version). For Alpine Linux, a zram-init package is available.

You can’t perform that action at this time.