summaryrefslogtreecommitdiffstats
path: root/sbin/fsck/fsck.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove redundant declaration of the perror() function, it's provided by stdio.h.trhodes2003-10-291-1/+0
| | | | Don't define DKTYPENAMES without using it.
* o Fix usage(): remove '-l', add missed '-f', sort.maxim2003-07-261-1/+1
|
* Convert fsck and mount to using execvP to find fsck_foo and mount_foo.gordon2003-06-291-28/+7
| | | | | | | This simplifies the code path and makes the default path easy to override in the /rescue case. Submitted by: Tim Kientzle <kientzle@acm.org>
* Back out previous delta to fix fsck on filesystems without an fstab entry,jmallett2003-04-251-1/+23
| | | | | | | | | | | | | where we want to take the disklabel filesystem type of "4.2BSD" and use fsck_4.2bsd on those filesystems. Add a comment about why the code is there, now that we know: * XXX This is a kludge to make automatic filesystem type guessing * from the disklabel work for "4.2BSD" filesystems. It does a * very limited subset of transliteration to a normalised form of * filesystem name, and we do not seem to enforce a filesystem * name character set.
* Strip out bogus difference from when this came from NetBSD: transliteratingjmallett2003-03-031-17/+1
| | | | | | | | | | | | | | | | | | upper-case alphabetical characters to lower-case ones, and spaces to dashes. The person who added this when bringing the code from NetBSD has no idea why he added it, and nobody on freebsd-fs came up with any cases where the icky part (the conversion of spaces to underscores) was needed. The removal of the upper-case conversion follows an even more obvious logic: it avoids any sort of namespace issues. People using StUdLy caps for filesystem names deserve everything they get. Otherwise, Efs and efs might be totally different things, but would use the same fsck. And we don't want that, right? That just provokes the sort of foot-shooting this would prevent. If you have problems with this, I'll walk you through using sed on your fstab, cause the only way you could have problems is if you spelled ufs as "UFS". Most likely, you haven't done that. MFC after: 1 month
* Give a meaningfull diagnostic when we cannot determine the filesystem type.phk2002-10-311-1/+3
|
* s/filesystem/file system/g as discussed on -developerstrhodes2002-08-211-6/+6
|
* more file system > filesystemtrhodes2002-05-161-1/+1
|
* Usage style sweep: spell "usage" with a small 'u'.des2002-04-221-1/+1
| | | | | Also change one case of blatant __progname abuse (several more remain) This commit does not touch anything in src/{contrib,crypto,gnu}/.
* Replace __progname with the functionally identical but moremarkm2002-03-241-5/+3
| | | | acceptable (documented) getprogname(3).
* o __P removedimp2002-03-201-45/+24
| | | | | | | o ansi function prototypes o unifdef -D__STDC__ o __dead2 on usage prototype o remove now-bogus main prototype
* Update usage message with new options.mckusick2001-04-301-1/+1
| | | | Submitted by: Ruslan Ermilov <ru@FreeBSD.org>
* Add support for running foreground (-F) and background (-B) checks.mckusick2001-04-251-20/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | Traditionally, fsck is invoked before the filesystems are mounted and all checks are done to completion at that time. If background checking is available, fsck is invoked twice. It is first invoked at the traditional time, before the filesystems are mounted, with the -F flag to do checking on all the filesystems that cannot do background checking. It is then invoked a second time, after the system has completed going multiuser, with the -B flag to do checking on all the filesystems that can do background checking. Unlike the foreground checking, the background checking is started asynchonously so that other system activity can proceed even on the filesystems that are being checked. At the moment, only the fast filesystem supports background checking. To be able to do background checking, a filesystem must have been running with soft updates, not have been marked as needing a foreground check, and be mounted and writable when the background check is to be done (i.e., not listed as `noauto' in /etc/fstab). These changes are the final piece needed to support background filesystem checking. They will not have any effect until you update your /etc/rc to invoke fsck in its new mode of operation. I am still playing around with exactly what those changes should be and should be committing them later this week.
* This change sanitizes the way fsck deals with pass numbers.phk2001-03-301-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Consider this /etc/fstab: # Device Mountpoint FStype Options Dump Pass# /dev/ad1s1b none swap sw 0 0 /dev/ad0s1b none swap sw 0 0 /dev/ad0s1a / ufs rw 1 1 /dev/ad0s1e /home ufs rw 2 2 /dev/ad1s1e /tmp ufs rw 2 2 /dev/ad1s1f /usr ufs rw 2 2 /dev/ccd0c /syv ufs rw 2 11 proc /proc procfs rw 0 0 ccd0c is striped over /dev/ad0f and /dev/ad1g Without this pass, fsck in preen mode will check ad0s1a first, and then issue three processes in parallel: One process doing ad0s1e One process doing ad1s1e and ad1s1f One process doing ccd0c There is no way to tell it that ccd0c overlaps ad0 and ad1. With the patch, it will do it this way: pass 2: One process doing ad0s1e One process doing ad1s1e and ad1s1f and when they are complete: pass 11: One process doing ccd0c This is much faster and more sane. Valid pass numbers are anything from 1 to INTMAX-1. I retired the '-l' option which tried to allow people to do something like this, but which didn't work and which complicated the code an awful lot.
* Use macro API to <sys/queue.h>phk2000-12-301-4/+4
| | | | | Submitted by: "Peter Avalos" <pavalos@theshell.com> Reviewed by: /sbin/md5
* We want the FreeBSD ID as the RCS ID, not the NetBSD one.obrien2000-10-101-4/+3
|
* Reviewed by: rwatson, bpadrian2000-10-091-0/+540
Approved by: rwatson Obtained from: NetBSD source tree Second part of the fsck wrappers commit. This commit enables the new fsck code (removing the fsck/* code and replacing it with the netbsd fsck wrapper code), and enabling some FFS-based utilities to compile. Details: * quotacheck, fsdb required modification to use the fsck_ffs/ code rather than fsck/ . This might change later since quotacheck requires preen.c which should exist in fsck/ rather than fsck_ffs/ * src/Makefile has fsck_ffs added to it so it it built as part of the tree now * share/doc/smm/03.fsck/ uses the SMM.doc/ stuff from fsck_ffs, not fsck. I've tested this, and it shouldn't require any changes on your machine. The fsck wrapper reads /etc/fsck and is command-line-compatible enough to not require rc changes (well, most changes unless you want to do anything nifty by specifying the fs types explicityly, read the man page if you want further details on what it can do.) This now allows us to support multiple filesystem types during bootup.
OpenPOWER on IntegriCloud