rpm-ostree rpm-ostree Developer Colin Walters walters@redhat.com rpm-ostree 1 rpm-ostree Operating system upgrade and software management tool rpm-ostree COMMAND OPTIONS Description rpm-ostree (also called "atomic" if configured) is a system software management tool that combines features of both traditional RPM and OSTree. It has support for both server-side composing of trees, as well as client-side upgrading and management of deployments. On an rpm-ostree managed system, the traditional yum (if installed) and rpm tools operate in a read-only state; the RPM database is stored in /usr/share/rpm which is underneath a read-only bind mount. Instead of live package-by-package upgrades, the underlying OSTree layer replicates a complete filesystem tree from a compose server into a new deployment, available on the next reboot. One benefit of this is that there will always be a previous deployment, available for rollback. Note in this "pure replication" model, at present there is no dependency resolution on the client machines, nor any ability to add or remove packages. You may however use /usr/local/bin, or an application mechanism such as docker1. Commands upgrade Download the latest version of the current tree, and deploy it, setting it up as the default for the next boot. By design, this has no effect on your running filesystem tree. You must reboot for any changes to take effect. --reboot or -r to initiate a reboot after upgrade is prepared. --allow-downgrade to permit deployment of chronologically older trees. to download only /usr/share/rpm in order to do a package-level diff between the two versions. rollback OSTree manages an ordered list of bootloader entries, called "deployments". The entry at index 0 is the default bootloader entry. Each entry has a separate /etc, but they all share a single /var. You can use the bootloader to choose between entries by pressing Tab to interrupt startup. This command then changes the default bootloader entry. If the current default is booted, then set the default to the previous entry. Otherwise, make the currently booted tree the default. --reboot or -r to initiate a reboot after rollback is prepared. rebase Switch to a different remote, or a different tree, while preserving local state in /var and configuration in /etc. This is an extension of upgrade which switches to a newer version of the current tree. compose Entrypoint for tree composition; most typically used on servers to prepare trees for replication by client systems. Currently has two subcommands, tree and sign. status Gives information pertaining to the current deployment in use. Lists the names and refspecs of all possible deployments in order, such that the first deployment in the list is the default upon boot. The deployment marked with * is the current booted deployment, and marking with 'r' indicates the most recent upgrade (the newest deployment version). rpm Gives information pertaining to rpm data within the file system trees within the ostree commits. There are three sub-commands: diff to see how the packages are different between the trees in two commits. The option uses - for removed packages, + for added packages, and finally ! for the old version of an updated package, with a following = for the new version. list to see which packages are within the commit(s) (works like yum list). At least one commit must be specified, but more than one or a range will also work. version to see the rpmdb version of the packages within the commit (works like yum version nogroups). At least one commit must be specified, but more than one or a range will also work. See Also ostree1, rpm8