/ 2004-10-04 14:34:08 +0200 \ Andreas Haupt:
Lars Ellenberg wrote:
Looks nice! But I have a little problem: It seems that you can only use ftp/http/rsync server to load the patches from. A (nfs) directory like in /etc/suseservers (dir://<directory>) doesn't seem to work.
You can mount the directory containing the patches to /var/cache/fou4s/packages (or set RpmDir in /etc/fou4s.conf)
better: MNTPOINT=/var/cache/fou4s/packages/localdir mkdir $MNTPOINT mount #something# $MNTPOINT or LOCALDIR=<<directory>> ln -s $DIR /var/cache/fou4s/packages/${LOCALDIR##*/}
that way you can have both remote (which will get wget/rsync'ed) or local dirs (which just happen to be there).
I tried both. They only work if I have a "server" entry in the config file. Maybe I'm just too blind to see it.
I have a directory /net/linux/updates/suse91/i386/update/9.1/ containing the normal entries (mirror):
dice:/var/cache/fou4s # ls /net/linux/updates/suse91/i386/update/9.1/ . .. misc patches patches.obsolete rpm scripts
What exactly do I have to set as RpmDir in /etc/fou4s.conf?
one way: you have some server actually using "standard" fou4s configuration, and it gets the packages, too. you export readonly its RpmDir (just leave it as /var/cache/fou4s/packages), and you mount that to your local box mount your-fou4s-server:/var/cache/fou4s/packages \ /var/cache/fou4s/packages on the local box, you put the same server in the config, you just never run fou4s -u, you only run fou4s -eni other way (you want your "fou4s client" boxes not only to not access the web, you want them to only see "approved" packages. point the local box to some "invented" server, like "my.approved.fou4s.updates", still you can not use -u or -d then, on the server, you have something like /var/cache/fou4s/packages/ftp.gwdg.de/... with all the normal patches /var/cache/fou4s/packages/my.approved.fou4s.updates/..., where you make copies or links of the full tree, BUT you have the patches/* subdirectory on its own. once approved, you copy/link the patch description: ln -s /var/.../packages/{f.g.d,my.a.f.u}/i/u/9.0/patches/<approved description> maybe additionally: implement dir:// prefix in fou4s script, and just skip any downloading operation for [[ SERVERURL == dir://* ]] if you would like the dir:// to actually temporary mount a nfs share, that needs some time hacking additional routines into fou4s. if you mount it before hand, and only point fou4s at the mountpoint, that would be an easy thing to implement. it "just" needs to ba added at all places. hth, lge