From: <ar...@sy...> - 2007-08-17 17:28:49
|
Author: arighi Date: 2007-08-17 09:06:05 -0500 (Fri, 17 Aug 2007) New Revision: 4186 Modified: trunk/initrd_source/skel/etc/init.d/functions Log: - overrides: hanlde file overlaps in nodes that belong to more host groups If a node belongs to more groups (defined by si_clusterconfig) sort the groups by name in alphabetical order to distribute the overrides. This means that in case of file overlaps the first hit wins: the node will receive the file that is in the first group. All the files that do not overlap will be distributed as a union of the groups. Example: group: Login = node001,node002 (override Login) group: Storage = node001,node003 (override RHEL4_Storage) Suppose to have the following files into the overrides "Login" and "RH4_Storage": /var/lib/systemimager/overrides/Login/etc/hosts /var/lib/systemimager/overrides/Login/etc/passwd /var/lib/systemimager/overrides/Login/etc/group /var/lib/systemimager/overrides/Login/etc/shadow /var/lib/systemimager/overrides/RH4_Storage/etc/hosts /var/lib/systemimager/overrides/RH4_Storage/etc/profile During the overrides distribution (at the end of the imaging) node001 will receive the following files: /var/lib/systemimager/overrides/Login/etc/hosts -> /etc/hosts /var/lib/systemimager/overrides/Login/etc/passwd -> /etc/passwd /var/lib/systemimager/overrides/Login/etc/group -> /etc/group /var/lib/systemimager/overrides/Login/etc/shadow -> /etc/shadow /var/lib/systemimager/overrides/RH4_Storage/etc/hosts (skipped) /var/lib/systemimager/overrides/RH4_Storage/etc/profile -> /etc/profile Modified: trunk/initrd_source/skel/etc/init.d/functions =================================================================== --- trunk/initrd_source/skel/etc/init.d/functions 2007-08-17 14:00:12 UTC (rev 4185) +++ trunk/initrd_source/skel/etc/init.d/functions 2007-08-17 14:06:05 UTC (rev 4186) @@ -1253,7 +1253,7 @@ # get_group_name() { [ -f ${SCRIPTS_DIR}/cluster.txt ] && \ - GROUPNAMES=`grep ${HOSTNAME} ${SCRIPTS_DIR}/cluster.txt | cut -d: -f2 | tr "\n" ' '` + GROUPNAMES=`grep ${HOSTNAME} ${SCRIPTS_DIR}/cluster.txt | cut -d: -f2 | sort -u | tr "\n" ' '` } # ################################################################################ |