On Sun, Dec 28, 2008 at 08:28:52PM +0100, Matthias Kilian spoke thusly:
> On Sun, Dec 28, 2008 at 12:39:57PM -0600, Denny White wrote:
> > I know from past experience and doing a lot of online searching
> > that this problem crops up from time to time. Usually someone
> > just did a new install and doesn't know the locate.datebase
> > isn't created by default.
> 
> There's an empty /var/db/locate.database in etcXX.tgz. Didn't you
> install etcXX.tgz?
> 
> Ciao,
>       Kili

Okay, maybe I worded my question wrong. Sure, I installed all
sets including etcXX.tgz. Regardless, I'm still trying to solve
the problem of the update failing now. As I said before, I've
tried to check every conceivable thing I could come up with
that might be causing it and am still coming up emtpy. Weird.
And, IIRC, I did have to get it kicked off originally manually.
Just for fun I just copied the original empty file to /var/db/

-r--r--r--  1 root wheel 0 Dec 28 15:16  locate.database

and ran weekly again. Did a listing from another term to show
it had started and was trying:

-rw------- 1 root  wheel  0  Dec 28 15:19  locate.database.Hojrmm6565

After about 10 seconds it failed again. I ran top to watch how
much load it was creating, not that it ever came anywhere near
what it does while kernel or userland building, but just to see
at what point it failed in case it would help someone else who
was trying to help with the problem.

18714 root  57  0 4324K 5912K run  -  0:10 31.49% perl

That probably won't help but I'm at the 'shooting in the dark'
point here. For the record, here's the locate portion of weekly
to show that nothing's been altered. I decreased the indentation
to keep within 72 characters: 

echo ""
if [ -f /var/db/locate.database ]; then
      TMP=`mktemp /var/db/locate.database.XXXXXXXXXX`
      if [ $? -eq 0 ]; then
          trap 'rm -f $TMP; exit 1' 0 1 15
          echo "Rebuilding locate database:"
          UPDATEDB="/usr/libexec/locate.updatedb"
          echo "${UPDATEDB} --fcodes=- --tmpdir=${TMPDIR:-/var/tmp}" | \
              nice -5 su -m nobody 2>/dev/null 1>$TMP
          if [ -s "$TMP" ]; then
                  chmod 444 $TMP
                  chown root:wheel $TMP
                  mv -f $TMP /var/db/locate.database
          else
                  echo "Not installing locate database; zero size"
          fi
  else
          echo "Not rebuilding locate database; can't create temp file"
  fi
else
  echo "Not rebuilding locate database; no /var/db/locate.database"
fi


I'm just wondering, since perl moved to a new number if something's
changed there that's causing the problem. At that point I wouldn't
know what to do. I did check ulimit to see what the settings were.
As a user I get

time(cpu-seconds)    unlimited
file(blocks)         unlimited
coredump(blocks)     unlimited
data(kbytes)         524288
stack(kbytes)        4096
lockedmem(kbytes)    166098
memory(kbytes)       497108
nofiles(descriptors) 128
processes            64

and as root

time(cpu-seconds)    unlimited
file(blocks)         unlimited
coredump(blocks)     unlimited
data(kbytes)         1048576
stack(kbytes)        8192
lockedmem(kbytes)    166098
memory(kbytes)       497108
nofiles(descriptors) 128
processes            1310

Once again, shooting in the dark.


Denny White 

-- 

 /"\    ASCII Ribbon Campaign
 \ /    Respect for low technology.
  X     Keep e-mail messages readable by any computer system.
 / \    Keep it ASCII.
===============================================================
GnuPG key  : 0x1644E79A  |  http://wwwkeys.nl.pgp.net
Fingerprint: D0A9 AD44 1F10 E09E 0E67  EC25 CB44 F2E5 1644 E79A
===============================================================

Reply via email to