1
0
Fork 0
mirror of https://gitlab.com/sortix/sortix.git synced 2023-02-13 20:55:38 -05:00
sortix--sortix/sysinstall/sysmerge.8

124 lines
3 KiB
Groff
Raw Normal View History

.Dd $Mdocdate: February 14 2016 $
.Dt SYSMERGE 8
.Os
.Sh NAME
.Nm sysmerge
.Nd upgrade current operating system from a sysroot
.Sh SYNOPSIS
.Nm sysmerge
.Op Fl w
.Op Fl \-booting
.Op Fl \-cancel
.Op Fl \-wait
.Ar source
.Sh DESCRIPTION
.Nm
upgrades the current operating system by copying the system files from the
specified
.Ar source
directory (usually a sysroot) onto the current root filesystem. This is meant
to be used when building the operating system from source as described in
.Xr development 7 .
.Pp
.Nm
installs the
.Sy system
manifest from the tix repository in the
.Ar source
directory, as well as all the ports found. The
.Xr initrd 7
is regenerated using
.Xr update-initrd 8 .
If grub is enabled in
.Xr upgrade.conf 5 ,
then the bootloader is reinstalled and reconfigured as needed.
.Pp
.Nm
is an automatic and non-interactive upgrade. It is meant to be used as part of
the development process to upgrade to locally built versions. It does not
contain compatibility to help upgrade across larger changes, or to easily handle
changes to configuration file formats, or other caveats. It places a burden on
the system administrator/developer to know the system changes in detail and to
do any necessary tasks manually.
.Pp
The
.Xr sysupgrade 8
program is by contrast an interactive program, meant to help upgrading across
much larger development distances. It contains compatibility to automatically
handle changes in configuration files and other larger changes.
.Pp
The options are as follows:
.Bl -tag -width "12345678"
.It Fl \-booting
It's boot time, complete the system upgrade that was delayed. This is meant to
be used by
.Xr init 8
through the
.Sy merge
boot target. This installs the
.Pa /sysmerge
directory onto the root filesystem and removes the
.Pa /sysmerge
directory.
.It Fl \-cancel
Cancel a pending upgrade that would trigger on the next boot. Remove the
.Pa /sysmerge
directory and restore the old
.Xr kernel 7
and
.Xr initrd 7 .
.It Fl w , Fl \-wait
Wait until the next boot to complete the upgrade, rather than finishing it now.
This installs into the
.Pa /sysmerge
directory instead and replaces the
.Xr kernel 7
with the new kernel
and
.Xr initrd 7
with an initrd that runs
.Sy /sysmerge/sbin/sysmerge --booting
on boot through the
.Sy chain-merge
.Xr init 8
boot target. Backups are made of the
.Xr kernel 7
and
.Xr initrd 7
such that the operation can be rolled back.
.El
.Sh FILES
.Bl -tag -width "/boot/sortix.initrd.sysmerge.orig" -compact
.It Pa /boot/sortix.bin
system
.Xr kernel 7
.It Pa /boot/sortix.bin.sysmerge.orig
system
.Xr kernel 7
(backup)
.It Pa /boot/sortix.initrd
system
.Xr initrd 7
.It Pa /boot/sortix.initrd.sysmerge.orig
system
.Xr initrd 7
(backup)
.It Pa /etc/machine
processor platform of this installation
.It Pa /etc/sortix-release
the current system release
.It Pa /etc/upgrade.conf
controls the bootloader upgrade behavior (see
.Xr upgrade.conf 5 )
.It Pa /sysmerge
pending upgrade is stored here
.El
.Sh SEE ALSO
.Xr development 7 ,
.Xr initrd 7 ,
.Xr installation 7 ,
.Xr kernel 7 ,
.Xr upgrade 7 ,
.Xr sysinstall 8 ,
.Xr sysupgrade 8