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-cpu
and--jobs-net
control 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-update
uses HTTP/1 pipelining on a single connection, which basically nobody else in the world supports.freebsd-rustdate
uses 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.