Commit Graph

43 Commits

Author SHA1 Message Date
Kirk McKusick
194a666749 Add the `L' option to dump to notify it that it is dumping a
live filesystem. To obtain a consistent dump image, dump takes
a snapshot of the filesystem and then does a dump of the snapshot.
The snapshot is removed when the dump is complete.

Also add an operator warning that the `L' option should be used
if dump is run on a live filesystem without the `L' option being
specified. The alternative would be to silently use a snapshot
any time that a live filesystem is dumped, but this change in
dump semantics seemed too drastic at this time.

Sponsored by:   DARPA & NAI Labs.
Approved by:	re
2002-12-03 18:21:09 +00:00
Kirk McKusick
ada981b228 Create a new 32-bit fs_flags word in the superblock. Add code to move
the old 8-bit fs_old_flags to the new location the first time that the
filesystem is mounted by a new kernel. One of the unused flags in
fs_old_flags is used to indicate that the flags have been moved.
Leave the fs_old_flags word intact so that it will work properly if
used on an old kernel.

Change the fs_sblockloc superblock location field to be in units
of bytes instead of in units of filesystem fragments. The old units
did not work properly when the fragment size exceeeded the superblock
size (8192). Update old fs_sblockloc values at the same time that
the flags are moved.

Suggested by:	BOUWSMA Barry <freebsd-misuser@netscum.dyndns.dk>
Sponsored by:   DARPA & NAI Labs.
2002-11-27 02:18:58 +00:00
Bruce Evans
4fb133adea Changed "file system" back to "filesystem" in the usage message. English
rules don't apply to tokens that are supposed to represent single args.
This was only fixed in the man page.

Fixed other differences between the man page and the usage message (1
formatting bug and 1 syntax bug).
2002-10-01 13:44:15 +00:00
Mike Barcroft
89fdc4e117 Use the standardized CHAR_BIT constant instead of NBBY in userland. 2002-09-25 04:06:37 +00:00
Tom Rhodes
ce66ddb763 s/filesystem/file system/g as discussed on -developers 2002-08-21 18:11:48 +00:00
Ian Dowse
617dbd3c84 Replace the use of %qd with intmax_t/%jd and fix a number of -Wall
and -Wformat warnings:
 o Include timeconv.h for the time conversion functions.
 o Remove unused variables.
 o Correct a few cases where %d was used when printing longs.
2002-07-08 00:29:23 +00:00
Kirk McKusick
1c85e6a35d This commit adds basic support for the UFS2 filesystem. The UFS2
filesystem expands the inode to 256 bytes to make space for 64-bit
block pointers. It also adds a file-creation time field, an ability
to use jumbo blocks per inode to allow extent like pointer density,
and space for extended attributes (up to twice the filesystem block
size worth of attributes, e.g., on a 16K filesystem, there is space
for 32K of attributes). UFS2 fully supports and runs existing UFS1
filesystems. New filesystems built using newfs can be built in either
UFS1 or UFS2 format using the -O option. In this commit UFS1 is
the default format, so if you want to build UFS2 format filesystems,
you must specify -O 2. This default will be changed to UFS2 when
UFS2 proves itself to be stable. In this commit the boot code for
reading UFS2 filesystems is not compiled (see /sys/boot/common/ufsread.c)
as there is insufficient space in the boot block. Once the size of the
boot block is increased, this code can be defined.

Things to note: the definition of SBSIZE has changed to SBLOCKSIZE.
The header file <ufs/ufs/dinode.h> must be included before
<ufs/ffs/fs.h> so as to get the definitions of ufs2_daddr_t and
ufs_lbn_t.

Still TODO:
Verify that the first level bootstraps work for all the architectures.
Convert the utility ffsinfo to understand UFS2 and test growfs.
Add support for the extended attribute storage. Update soft updates
to ensure integrity of extended attribute storage. Switch the
current extended attribute interfaces to use the extended attribute
storage. Add the extent like functionality (framework is there,
but is currently never used).

Sponsored by: DARPA & NAI Labs.
Reviewed by:	Poul-Henning Kamp <phk@freebsd.org>
2002-06-21 06:18:05 +00:00
Tom Rhodes
3468b317cb more file system > filesystem 2002-05-16 04:10:46 +00:00
Poul-Henning Kamp
75766e179d Sigh, more BBSIZE related breakage.
Sponsored by:	DARPA & NAI Labs.
2002-05-12 21:37:08 +00:00
Warner Losh
2db673ab00 o remove __P
o Use ANSI function definitions
o unifdef -D__STDC__
2002-03-20 22:49:40 +00:00
Ian Dowse
9ac0768d74 Add a new "-S" flag to dump to allow it just print out dump estimate
size and then exit.

PR:		bin/35450
Submitted by:	Mark Hannon <markhannon@optushome.com.au>
Obtained from:	NetBSD
MFC after:	1 week
2002-03-01 20:54:23 +00:00
Ian Dowse
2bb823d2b9 Supply progress information in dump's process title, which is useful
for monitoring automated backups. This is based on a patch by Mikhail
Teterin, with some changes to make its operation clearer and to
update the proctitle more frequently.

PR:		bin/32138
2002-02-16 21:05:16 +00:00
Matthew Dillon
170ac683f2 I've been meaning to do this for a while. Add an underscore to the
time_to_xxx() and xxx_to_time() functions.  e.g. _time_to_xxx()
instead of time_to_xxx(), to make it more obvious that these are
stopgap functions & placemarkers and not meant to create a defacto
standard.  They will eventually be replaced when a real standard
comes out of committee.
2002-01-19 23:20:02 +00:00
Ian Dowse
d2334e27e9 Zap a number of #ifdef sunos blocks, and all of the `register'
keywords.
2001-11-17 00:06:55 +00:00
Ian Dowse
a50e99d137 Give a sensible error message when the filesystem to be dumped is
not listed in /etc/fstab. Previously, the user would be greeted
with "DUMP: bad sblock magic number" when dump tried to parse
the directory contents as an FFS filesystem.

PR:		bin/12789
Submitted by:	Bob Willcox <bob@pmr.com>
2001-11-16 22:13:44 +00:00
Matthew Dillon
5b3817c60b Make the protocol/dumprestore.h header match restore's idea of the dump
header for the case where sizeof(time_t) != sizeof(int).  dumprestore.h
was embedding time_t when it should have been embedding int32_t.

Use time_to_time32() and time32_to_time() to convert between the
protocoll/file-format time and time_t.
2001-10-28 20:01:38 +00:00
Ruslan Ermilov
4a315a9af3 SECURITY.
Notify operators using wall(1)'s -g option.
Drop ``setgid tty'' privilege.

Obtained from:	OpenBSD
MFC after:	1 month
2001-09-05 15:37:01 +00:00
Matthew Dillon
988d64c256 Add manual page and usage for dump -D (supplied by Dima Dorfman) (will also
be MFC'd)

Submitted by: Dima Dorfman <dima@unixfreak.org>
2001-07-09 03:06:56 +00:00
Matthew Dillon
cedae1f478 Oops, forgot to add 'D' to the option morphing block. 2001-07-08 19:48:37 +00:00
Matthew Dillon
3860f7810d Add a -D option to dump, allowing the path for the /etc/dumpdates file to be
changed, so independant entities backing up the same thing to different
media can be made not to trip over each other.

MFC after: 3 days
2001-07-08 19:45:20 +00:00
Dima Dorfman
33d3b9f878 Since we use getopt (in rev. 1.12), there's no need for the case's for
the individual options to increment argv and decrement argc.  This
caused the -T option to swallow an extra argument.

PR:		27982
Submitted by:	Samuel Greear <sgreear@vsni.com>
2001-06-09 04:32:46 +00:00
Poul-Henning Kamp
bfa0b2984d Use \a instead of \007 for making noise.
Submitted by:	"Jason Smethers" <jsmethers@pdq.net>
2001-01-28 21:21:37 +00:00
Joerg Wunsch
04285c0615 Avoid rawname() stupidly prepending an `r' before the device name even
in cases where the supplied name was already pointing to a character
special device.  This fixes the breakage that occured when trying to
dump a filesystem by name (e. g. /usr), with an fstab already
mentioning the raw device name (like /dev/rda0g) where dump attempted
to use /dev/rrda0g then.

Also removed the now obsolete remark that fstab were carrying block
special names.
2000-04-02 10:16:40 +00:00
Peter Wemm
7f3dea244c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
Jean-Marc Zucconi
8878be20f8 Fix typo in dump reporting
PR:		bin/10573
Submitted by:	Christian Weisgerber <naddy@mips.rhein-neckar.de>
1999-05-24 00:35:47 +00:00
Andreas Klemm
678bcd7728 checked, that new sa CAM driver takes care of using buffer sizes
<= 64 KB. Was able to dump/restore with block sizes of 96, 128 and
200. using systat -vmstat I noticed transfer blocksizes <= 64KB,
so physio's limits aren't touched.
Since this check was originally from me, I feels safe now to back it
out.
1998-09-16 20:52:12 +00:00
Joseph Koshy
f69e804d24 Make `dump' exit codes confirm to manual page.
PR: 5346
Style-check-by: bde
1998-07-14 09:19:47 +00:00
Philippe Charnier
7580ffbbbd Correct use of .Nm. Add rcsid. Remove unused #includes. 1998-06-15 06:58:13 +00:00
Philippe Charnier
a1e5f53b8f Add Id. Cosmetic in usage string. 1997-06-10 11:14:04 +00:00
Garrett Wollman
1982ee69fd Implement Kerberized rcmd for rdump/rrestore. This is lacking the
options one would normally expect to set the realm, enable encryption,
and whatnot, but this actually is able to contact the remote server,
so at least it's a start.  (As a bonus, the stripped static binary is
unquestionably exportable.)
1997-04-29 17:46:27 +00:00
Peter Wemm
79aed3fe40 The -a option (autosize) option got mangled during the Lite2 merge.
Pointed out by:  Tom Jackson <tom@peeper.jackson.org>
1997-03-15 05:32:40 +00:00
Peter Wemm
a37c38b8d8 Merge Lite2 changes (rather bigish, the dump/restore folks should check) 1997-03-11 12:09:50 +00:00
Joerg Wunsch
af00957e47 Add the a' option (`auto-size'') to bypass all tape length
considerations, and dump right to the end of medium.
1997-02-01 23:44:19 +00:00
Peter Wemm
9e0dc595f6 Fix double typo 1997-01-08 03:00:42 +00:00
Warner Losh
f5dcc2f1e6 Fix many buffer overflows, correct usage of strcat and implement
$TAPE.  Inspired by OpenBSD's work in this area.

Reviewed by:	Peter Wemm, Guido van Rooij and Jordan Hubbard.
Obtained from: OpenBSD
1997-01-07 20:48:24 +00:00
Paul Traina
71fbc63c69 bin/1789: dump estimates a negative number of tapes needed for huge dumps 1997-01-07 20:15:04 +00:00
Bruce Evans
eaa86f9d7f Don't use __dead or __pure in user code. They were obfuscations
for gcc >= 2.5 and no-ops for gcc >= 2.6.  Converted to use __dead2
or __pure2 where it wasn't already done, except in math.h where use
of __pure was mostly wrong.
1996-09-14 03:00:32 +00:00
Joerg Wunsch
3be059bae1 Put the superfluous "DUMP:" back in the statistics line, to make
Amanda happy.
1995-12-23 11:53:56 +00:00
Joerg Wunsch
019420a58f Andreas Klemm's patch set for dump(8), with some minor (cosmetic)
changes and one addition by me.

. Use reasonable defaults for the tape drive (/dev/rst0) instead of
  something we actually don't have.

. Add a summary line displaying the alapsed time and the total throughput.

. Replace "rmt" for the remote location of rmt(8) by "/etc/rmt", since this
  is the historical protocol, and relying on the $PATH causes a big pain.
  Make it adjustable via an environmental variable though.

Reviewed by:	joerg (for Andreas' part)
Submitted by:	andreas@knobel.gun.de (Andreas Klemm)
1995-11-18 18:00:43 +00:00
Jordan K. Hubbard
abdec3e35c Fix a silly bug where MAXPATHLEN was subtracted from the string length rather
than the other way around!
Submitted by:	Elmar Bartel <bartel@informatik.tu-muenchen.de>
1995-10-24 13:46:35 +00:00
Rodney W. Grimes
5ebc7e6281 Remove trailing whitespace. 1995-05-30 06:12:45 +00:00
Joerg Wunsch
56d5f6db85 Fixed an evil bug where rawname() could write across the boundaries of
an array. The bug became obvious in the old system where the array was only
32 characters long (now MAXPATHLEN). Dump honored its name then (:-)
and dumped its core when calling dump -w for a fstab that contained rather long
NFS file system names. Even though this is rather unlikely to happen now,
a bug is a bug:)
1994-10-28 17:26:27 +00:00
Rodney W. Grimes
8fae3551ec BSD 4.4 Lite sbin Sources
Note:  XNSrouted and routed NOT imported here, they shall be imported with
usr.sbin.
1994-05-26 06:35:07 +00:00