so to create a volume for fc5 lcfg rpms say, you would run (as an AFS admin user):
vos create wyvern vicepa bin.fc5.lcfg
to add the first replication site:
vos addsite wyvern vicepa bin.fc5.lcfg
vos release bin.fc5.lcfg
To access this volume, you need to mount it in the AFS file system. To mount it as /afs/inf.ed.ac.uk/pkgs/rpms/fc5/lcfg (say), you need to create the intermediate directories:
mkdir -p /afs/.inf.ed.ac.uk/pkgs/rpms/fc5 (note the '.' in front of inf.ed.ac.uk which puts us on the RW path)
and then create the mountpoint
fs mkmount /afs/.inf.ed.ac.uk/pkgs/rpms/fc5/lcfg bin.fc5.lcfg
To make this new mount available from the RO path, you need to release the volume which /afs/inf.ed.ac.uk/pkgs is the mountpoint for. This is called pkgsdir so to release it, you would say:
vos release pkgsdir
Having done all this, you'll want to set an appropriate ACL for your newly mounted volume before you start populating it. Something like
fs setacl /afs/.inf.ed.ac.uk/pkgs/rpms/fc5/lcfg ascobie:mp-unit all system:authuser read
will give members of the mp unit full access to the volume and will allow all Informatics users to list and read the contents of the volume. To propagate the new ACL to the RO copies, you'll need to release the volume again:
vos release bin.fc5.lcfg
Set quota on volume to 0
fs sq /afs/inf.ed.ac.uk/pkgs/rpms/fc5/lcfg 0
When creating a volume, add a mirror for the volume on vicepf on hawthorn
vos addsite hawthorn vicepf bin.fc5.lcfg
-- AlastairScobie - 21 Sep 2007
Creating SL7 Package Buckets
This is how I created the package buckets for SL7. (We couldn't make them automatically because of our Perl-AFS troubles.)
First make the RW volumes
/usr/sbin/vos create -verbose -server huldra -partition /vicepp -name bin.sl7.lcfg
/usr/sbin/vos create -verbose -server huldra -partition /vicepp -name src.sl7.lcfg
/usr/sbin/vos create -verbose -server huldra -partition /vicepp -name bin.sl7.world
/usr/sbin/vos create -verbose -server huldra -partition /vicepp -name src.sl7.world
/usr/sbin/vos create -verbose -server huldra -partition /vicepp -name bin.sl7.devel
/usr/sbin/vos create -verbose -server huldra -partition /vicepp -name src.sl7.devel
/usr/sbin/vos create -verbose -server huldra -partition /vicepp -name bin.sl7.uoe
/usr/sbin/vos create -verbose -server huldra -partition /vicepp -name src.sl7.uoe
/usr/sbin/vos create -verbose -server huldra -partition /vicepp -name bin.sl7.inf
/usr/sbin/vos create -verbose -server huldra -partition /vicepp -name src.sl7.inf
Then the RO volumes
/usr/sbin/vos addsite -server huldra -partition /vicepp -id bin.sl7.lcfg -verbose
/usr/sbin/vos addsite -server huldra -partition /vicepp -id src.sl7.lcfg -verbose
/usr/sbin/vos addsite -server huldra -partition /vicepp -id bin.sl7.world -verbose
/usr/sbin/vos addsite -server huldra -partition /vicepp -id src.sl7.world -verbose
/usr/sbin/vos addsite -server huldra -partition /vicepp -id bin.sl7.devel -verbose
/usr/sbin/vos addsite -server huldra -partition /vicepp -id src.sl7.devel -verbose
/usr/sbin/vos addsite -server huldra -partition /vicepp -id bin.sl7.uoe -verbose
/usr/sbin/vos addsite -server huldra -partition /vicepp -id src.sl7.uoe -verbose
/usr/sbin/vos addsite -server huldra -partition /vicepp -id bin.sl7.inf -verbose
/usr/sbin/vos addsite -server huldra -partition /vicepp -id src.sl7.inf -verbose
and RO volumes on another server
/usr/sbin/vos addsite -server pyrolisk -partition /vicepx -id bin.sl7.lcfg -verbose
/usr/sbin/vos addsite -server pyrolisk -partition /vicepx -id src.sl7.lcfg -verbose
/usr/sbin/vos addsite -server pyrolisk -partition /vicepx -id bin.sl7.world -verbose
/usr/sbin/vos addsite -server pyrolisk -partition /vicepx -id src.sl7.world -verbose
/usr/sbin/vos addsite -server pyrolisk -partition /vicepx -id bin.sl7.devel -verbose
/usr/sbin/vos addsite -server pyrolisk -partition /vicepx -id src.sl7.devel -verbose
/usr/sbin/vos addsite -server pyrolisk -partition /vicepx -id bin.sl7.uoe -verbose
/usr/sbin/vos addsite -server pyrolisk -partition /vicepx -id src.sl7.uoe -verbose
/usr/sbin/vos addsite -server pyrolisk -partition /vicepx -id bin.sl7.inf -verbose
/usr/sbin/vos addsite -server pyrolisk -partition /vicepx -id src.sl7.inf -verbose
Release these so we can start to use them
/usr/sbin/vos release -id bin.sl7.lcfg -verbose
/usr/sbin/vos release -id src.sl7.lcfg -verbose
/usr/sbin/vos release -id bin.sl7.world -verbose
/usr/sbin/vos release -id src.sl7.world -verbose
/usr/sbin/vos release -id bin.sl7.devel -verbose
/usr/sbin/vos release -id src.sl7.devel -verbose
/usr/sbin/vos release -id bin.sl7.uoe -verbose
/usr/sbin/vos release -id src.sl7.uoe -verbose
/usr/sbin/vos release -id bin.sl7.inf -verbose
/usr/sbin/vos release -id src.sl7.inf -verbose
Make a directory to contain the sl7 'os' mount points
mkdir -p /afs/.inf.ed.ac.uk/pkgs/rpms/os/sl7
cd /afs/.inf.ed.ac.uk/pkgs/rpms/os/sl7
Make the 'os' mount points - these are read/write
fs mkmount -rw -dir lcfg -vol bin.sl7.lcfg
fs mkmount -rw -dir world -vol bin.sl7.world
fs mkmount -rw -dir devel -vol bin.sl7.devel
fs mkmount -rw -dir uoe -vol bin.sl7.uoe
fs mkmount -rw -dir inf -vol bin.sl7.inf
mkdir -p /afs/.inf.ed.ac.uk/pkgs/srpms/os/sl7
cd /afs/.inf.ed.ac.uk/pkgs/srpms/os/sl7
fs mkmount -rw -dir lcfg -vol src.sl7.lcfg
fs mkmount -rw -dir world -vol src.sl7.world
fs mkmount -rw -dir devel -vol src.sl7.devel
fs mkmount -rw -dir uoe -vol src.sl7.uoe
fs mkmount -rw -dir inf -vol src.sl7.inf
Make the 'layers' mount points - these are read-only
cd /afs/.inf.ed.ac.uk/pkgs/rpms/layers/lcfg/
fs mkmount -dir sl7 -vol bin.sl7.lcfg
cd /afs/.inf.ed.ac.uk/pkgs/srpms/layers/lcfg/
fs mkmount -dir sl7 -vol src.sl7.lcfg
cd /afs/.inf.ed.ac.uk/pkgs/rpms/layers/world/
fs mkmount -dir sl7 -vol bin.sl7.world
cd /afs/.inf.ed.ac.uk/pkgs/srpms/layers/world/
fs mkmount -dir sl7 -vol src.sl7.world
cd /afs/.inf.ed.ac.uk/pkgs/rpms/layers/devel/
fs mkmount -dir sl7 -vol bin.sl7.devel
cd /afs/.inf.ed.ac.uk/pkgs/srpms/layers/devel/
fs mkmount -dir sl7 -vol src.sl7.devel
cd /afs/.inf.ed.ac.uk/pkgs/rpms/layers/uoe/
fs mkmount -dir sl7 -vol bin.sl7.uoe
cd /afs/.inf.ed.ac.uk/pkgs/srpms/layers/uoe/
fs mkmount -dir sl7 -vol src.sl7.uoe
cd /afs/.inf.ed.ac.uk/pkgs/rpms/layers/inf/
fs mkmount -dir sl7 -vol bin.sl7.inf
cd /afs/.inf.ed.ac.uk/pkgs/srpms/layers/inf/
fs mkmount -dir sl7 -vol src.sl7.inf
Release the volume containing them so we can start to use the new mount points
/usr/sbin/vos release pkgsdir
Copy ACLs from existing volumes
fs copyacl -clear -fromdir /afs/.inf.ed.ac.uk/pkgs/rpms/os/sl6/lcfg -todir /afs/.inf.ed.ac.uk/pkgs/rpms/os/sl7/*
fs copyacl -clear -fromdir /afs/.inf.ed.ac.uk/pkgs/srpms/os/sl6/lcfg -todir /afs/.inf.ed.ac.uk/pkgs/srpms/os/sl7/*
Set quotas to ~1GB for now - Neil's suggestion - we can increase the
quotas once we've move all the buckets to a more capacious disk
partition. Until that's been done we REALLY don't want to run off the end
of the disk partition, and we're in danger of doing that since our
quotas are collectively far too big for it.
fs setquota /afs/.inf.ed.ac.uk/pkgs/rpms/os/sl7/lcfg 1000000
fs setquota /afs/.inf.ed.ac.uk/pkgs/srpms/os/sl7/lcfg 1000000
fs setquota /afs/.inf.ed.ac.uk/pkgs/rpms/os/sl7/world 1000000
fs setquota /afs/.inf.ed.ac.uk/pkgs/srpms/os/sl7/world 1000000
fs setquota /afs/.inf.ed.ac.uk/pkgs/rpms/os/sl7/devel 1000000
fs setquota /afs/.inf.ed.ac.uk/pkgs/srpms/os/sl7/devel 1000000
fs setquota /afs/.inf.ed.ac.uk/pkgs/rpms/os/sl7/uoe 1000000
fs setquota /afs/.inf.ed.ac.uk/pkgs/srpms/os/sl7/uoe 1000000
fs setquota /afs/.inf.ed.ac.uk/pkgs/rpms/os/sl7/inf 1000000
fs setquota /afs/.inf.ed.ac.uk/pkgs/srpms/os/sl7/inf 1000000
-- ChrisCooke - 17 Jan 2014