Commands
Contents
Overview
freebsd-rustdate has a variety of commands, some of which you’ll use regularly,
and some rarely. See the individual command pages for details of using
them and their options; many of them have a lot of options with a lot of
detail available.
Basic Upgrading
In day-to-day use, you’ll be using fetch for updating to newer
patchlevels of your current release, and upgrade for updating
to newer releases. After doing the fetch or upgrade,
you’ll use install to install the new changes.
Reviewing Or Preparing Installation
Once you’ve done a fetch or upgrade, you’ll have
things staged up to install (assuming you weren’t already up-to-date of
course). Running show-install will give you a summary of them,
and can show more detail.
On an upgrade, there may be files that have merged in your
local changes (config files in /etc are a common case). Running show-merges can show you the results of those merges. If conflicts
are encountered, you’ll use resolve-merges to deal with them.
Checking For Updates
Running fetch is naturally one way of checking for updates.
The check-fetch command does a quick check of your patchlevel
against the server; this isn’t quite as thorough a check, but is much
faster, much easier on your system, and much lighter weight on the
freebsd-update server as well.
cron
The cron command, like the same-named command in freebsd-update,
does the equivalent of a fetch attempt from cron and emails you
when there’s something to do.
check-fetch also has a mode to run via cron; running it with
the -qc options will have it quietly check, and only output something
(which cron would then email you) when there looks to be an update
ready.
Examining Your Current System
Strictly speaking, these are things not really related to upgrading per se.
The check-sys command lets you check what your system has
against what freebsd-update thinks should be the current state. It’ll
give you unhelp results if you’re not fetch’d up to the current
patchlevel, doesn’t know anything about intentional local changes,
etc. But it can be a useful way to check what’s different, and see if
it’s what you expect. It can be used in a similar way to freebsd-update’s
IDS command.
The extract command will let you surgically overwrite
particular files with the “pristine” upstream versions.
Misc
complete can generate shell completion files.
Global Arguments
freebsd-rustdate takes some global args; see help for details.
A few quick tidbits:
-
--config,--basedir,--workdir,--server, etc, are pretty much like you’d expect, and do the same sorta thing as their counterparts infreebsd-update. They override the values in the config file as necessary. -
--jobs-cpuand--jobs-netcontrol parallelism.In this context, “CPU” also mostly covers “disk IO”, because they’re often intertwined. e.g., when scanning the current system, there’s disk IO in the form of
stat()’s and walking directory trees, but also CPU work in the form of hashing the files.Network mostly means doing the HTTP fetches.
freebsd-updateuses HTTP/1 pipelining on a single connection, which basically nobody else in the world supports.freebsd-rustdateuses multiple parallel fetchers. The default is probably reasonable. Maybe if you have a personal mirror that’s a huge bandwidth/delay product away, it’s worth cranking that number, but generally, I’d leave it be…
List
All commands, alphabetically.