Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 Aug 1999 15:33:20 +0200
From:      Andre Albsmeier <andre.albsmeier@mchp.siemens.de>
To:        Khetan Gajjar <khetan@os.org.za>
Cc:        questions@FreeBSD.ORG
Subject:   Re: Unknown UID quota problems on a softupdate-enabled slice
Message-ID:  <19990829153320.A80250@internal>
In-Reply-To: <Pine.BSF.4.10.9908090207350.651-100000@chain.freebsd.os.org.za>
References:  <Pine.BSF.4.10.9908090207350.651-100000@chain.freebsd.os.org.za>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 09-Aug-1999 at 02:13:04 +0200, Khetan Gajjar wrote:
> Hi.
> 
> I have a recurring problem with user quotas on one of my slices
> (/home).
> 
> Quotacheck on bootup kept taking extremely long, so I ran it manually,
> and it says

See PR# 2325. It is an old problem and I hope that it will be
fixed somedays...


> 2=[root@blah] ~# quotaoff /home; quotacheck -v /home; quotaon /home
> *** Checking user quotas for /dev/rwd1s1e (/home)
> unknown uid: 4143380214
> arbuser  fixed: inodes 0 -> 9   blocks 0 -> 18
> 
> I let it complete, and it seemed happy. I then dropped to single
> user mode, fsck'ed the drive, and went back into multi-user mode.
> I re-ran quotacheck on the drive, and it returned the same thing,
> but for a different user. On every reboot, or more accurately, mount and
> unmount of the slice (after turning off quota's, of course), it
> generates the same error on the quotacheck. 
> 
> For now, I just CTRL-C the quotacheck and enable quotas.
> 
> Any idea how to a) get rid of the unknown UID 4143380214 and b) fix
> the problem permanently ?

I had the problem when PC-NFS clients wrote nobody owned files
to the disk. PC-NFS uses -2 as nobody userid and this has
been the 4xxxxxxxxx (don't remeber exactly) value here.

I have a rather ugly but well functioning solution here because I
don't use UID's greater that 65535: I simply map all user id's
greater than 65535 to the nobody user, 65534. This one has 5 Meg
quota space and that's all:

--- sbin/quotacheck/quotacheck.c.ORI	Thu May 13 20:58:27 1999
+++ sbin/quotacheck/quotacheck.c	Wed May 12 20:38:41 1999
@@ -506,6 +506,10 @@
 	struct fileusage *fup, **fhp;
 	int len;
 
+#ifdef ANDRE
+	if( id > 65535 )
+		id = 65534;
+#endif
 	if ((fup = lookup(id, type)) != NULL)
 		return (fup);
 	if (name)
--- sys/ufs/ufs/ufs_quota.c.ORI	Sun Jan 31 14:57:58 1999
+++ sys/ufs/ufs/ufs_quota.c	Sun Jan 31 14:58:01 1999
@@ -730,6 +730,10 @@
 	struct uio auio;
 	int error;
 
+#ifdef ANDRE
+	if( id > 65535 )
+		id = 65534;
+#endif
 	dqvp = ump->um_quotas[type];
 	if (dqvp == NULLVP || (ump->um_qflags[type] & QTF_CLOSING)) {
 		*dqp = NODQUOT;

> 
> The slice in question does have soft-updates installed.
> I'm running 4.0-CURRENT built today, but I don't think that's the cause
> of my problem :)
> 
> But, for completeness sake :
> 
> /dev/wd1s1e on /home (local, soft-updates, writes: sync 9 async 1249)
> FreeBSD blah 4.0-CURRENT FreeBSD 4.0-CURRENT #0: Sun Aug  8 11:09:59 SAST 1999     root@blah:/usr/src/sys/compile/BLAH  i386

As you can see in my PR, the problem is quite old...

Sorry for the late reply, but I was on holidays.

	-Andre


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990829153320.A80250>