Main index | Section 1 | 日本語 | Options |
The ctm utility is now meant to be the definitive way to make and apply a delta between two versions of a directory tree.
There are two parts to this, making the delta and applying it. These are two entirely different things.
The ctm command runs in a number of passes. It will process the entire input file in each pass, before commencing with the next pass.
Before working on a file name ctm first checks for the existence of the file name.ctm. If this file exists, ctm works on it instead.
Pass 1 will verify that the input file is OK. The syntax, the data and the global MD5 checksum will be checked. If any of these fail, ctm will simply reject the input file.
Pass 2 will validate that the directory tree is in the state expected by the CTM delta. This is done by looking for files and directories which should/should not exist and by checking the MD5 checksums of files.
If a
backup-file
had been specified using the
Pass 3 will actually apply the delta.
The list of files that would be modified by
ctm
is subject to filtering regular expressions specified
using the
The ctm utility will extract the file hierarchy below its working directory. Absolute filenames or filenames containing references through ' .amp;' and ' ..amp;' are explicitly prohibited as a security measure.
| |
Prepend the path basedir to every filename. | |
| |
Backup all files that would be modified by this CTM run to
backup-file.
If any filters are specified using the
| |
| |
Check it out, do not do anything. | |
| |
Match each name in the CTM file against
regular_expression,
and if it matches process the file, otherwise leave it alone.
There may be
any number of these options.
Use of this option disables the
.ctm_status
sequence number checks.
For example, the expression
^usr.sbin/ctm
for example, will select the
usr.sbin/ctm
source directory and all pathnames under it.
Pathnames can be disabled from being considered by CTM using the
| |
| |
Force. | |
| |
Keep files and directories and do not remove them even if the CTM file
specifies they are to be removed.
If the
| |
| |
List files that would be modified by this invocation of CTM and the
actions that would be performed on them.
Use of the
| |
| |
Tell us less. | |
| |
Use
tar-command
instead of the default archiver
tar.
This option takes effect only if a backup file had been specified using the
| |
| |
Put temporary files under tmpdir. | |
| |
Set modification time of created and modified files to the CTM delta creation time. | |
| |
Tell us more. | |
| |
Tell us more. Level is the level of verbosity. | |
| |
Match each name in the CTM file against
regular_expression
and if it matches, leave the file alone.
There may be any number of these
options.
Use of this option disables the
.ctm_status
sequence number checks.
Pathnames can be selected for CTM's consideration using the
| |
To remedy this insecurity, CTM pieces generated by FreeBSD.org are cryptographically signed in a format compatible with the GNU Privacy Guard utility, available in /usr/ports/security/gpg, and the Pretty Good Privacy v5 utility, /usr/ports/security/pgp5. The relevant public key can be obtained by fingering ctm@FreeBSD.org.
CTM deltas which are thus signed cannot be undetectably altered by an attacker. Therefore it is recommended that you make use of GPG or PGP5 to verify the signatures if you receive your CTM deltas via email.
Using the
cd ~cvs /usr/sbin/ctm ~ctm/cvs-*
To extract and patch all sources under `lib'
cd ~/lib-srcs /usr/sbin/ctm -e '^lib' ~ctm/src-cur*
Miscellaneous CTM on FreeBSD Resources,
The ctm command appeared in FreeBSD 2.1 .
The latest ctm code has been made available as a port (misc/ctm) in preparation of removal from base in FreeBSD 13.0 .
Joerg Wunsch <Mt joerg@FreeBSD.org> wrote this man-page.
CTM (1) | November 15, 2018 |
Main index | Section 1 | 日本語 | Options |
Please direct any comments about this manual page service to Ben Bullock. Privacy policy.
“ | The number of UNIX installations has grown to 10, with more expected. | ” |
— UNIX Programming Manual, 1972 |