Since not all nodes in our system has a namespace directory I had to use NFS to create the namespace files and directories from those nodes. I also did not create directories on the bricks; these were all good on our system. So I ended up with this slighly modified version of the script: #!/bin/bash # Script for restoring the namespace of a GlusterFS node # # By hypobyte for Jotta AS # No rights reserved # MOUNT=/mnt/ NS=~/ns/ DRIVES=(data01 data02) TOTAL_FILES=0 TOTAL_DIRS=0 # Builds the namespace for a drive function restore() { echo "Restoring drive $1 to $NS" FILES=0 DIRS=0 for path in `find $1`; do # Remove the root path from the filename file=$NS${path#*$1/} if test -d $path; then #echo "Restoring directory $path to $file" mkdir -p "$file" DIRS=$(($DIRS+1)) else #echo "Restoring file $path to $file" touch --reference="$path" "$file" FILES=$(($FILES+1)) fi done echo "Restored $FILES files and $DIRS directories from $1" TOTAL_FILES=$(($TOTAL_FILES+$FILES)) TOTAL_DIRS=$(($TOTAL_DIRS+$DIRS)) } for drive in ${DRIVES[@]}; do restore "$MOUNT$drive" done echo "Finished namespace restore of $TOTAL_FILES files and $TOTAL_DIRS directories" I then used the "ls -lR" command to trigger self-healing of the FS. This copied the new namespace to the replicated namespace node, and seems to have restored data correctly where it should. I did get a lot of these errors on the servers during self-heal: [2009-06-26 18:26:29] E [server-protocol.c:6387:server_setdents] server: fd - 0 (55697410): received a null buffer, returning EINVAL Not sure if that is something I need to worry about. AFAICT everything is fine now. Thanks for your help! Trygve On Fri, Jun 26, 2009 at 2:17 PM, Trygve Hardersen <trygve at jotta.no> wrote: > Thanks, I'll try this. > > Trygve > > > On Fri, Jun 26, 2009 at 2:02 PM, David Saez Padros <david at ols.es> wrote: > >> Hi >> >> In our case the unify volume appears completly empty altough the >> disks have data, also the server log shows some lines about activating >> auto-heal but nothing happens, so we have build a script to populate >> the namespace, in our case we have a folder that contains a subfolder >> named 'namespace' and 6 subfolders named 1 to 6 where each one is a >> brick of the unify volume, then running this on the main folder >> populates the namespace and creates appropiate folders in all bricks: >> >> #!/bin/bash >> >> for disk in 1 2 3 4 5 6 ; do >> for file in `find $disk`; do >> rel=${file#*/} >> if test -d $file ; then >> mkdir -p namespace/$rel >> for dsk in 1 2 3 4 5 6 ; do >> mkdir -p $dsk/$rel >> done >> else >> touch --reference=$file namespace/$rel >> fi >> done >> done >> >> >> >> Hi >>> >>> We have a similar problem. Our file system became unusable for some >>> reason. It seems to me like GlusterFS believes that files are present on >>> some nodes when they really are not. I want to try to regenerate the >>> namespace from the data that is actually present on the nodes. >>> >>> Does anyone have information about how that can be achieved? Somewhere I >>> read that: >>> >>> Namespace does not hold any crucial data, it is just like a cache. Infact >>> you can wipe our your namespace anytime and it will rebuild again. >>> >>> Thanks for your help >>> >>> Trygve Hardersen >>> Jotta AS >>> >>> On Tue, Jun 23, 2009 at 12:11 PM, David Saez Padros <david at ols.es<mailto: >>> david at ols.es>> wrote: >>> >>> Hi >>> >>> i have setup a unify volume using glusterfs 2.0.1 using several >>> disks with existing data, but once mounted in the remote client >>> the volume appears empty where it was suposed to auto-heal it's >>> contents automatically, is there any way to automatically >>> generate the namespace so existing data is visible to clients ? >>> >>> -- Thanx & best regards ... >>> >>> ---------------------------------------------------------------- >>> David Saez Padros http://www.ols.es >>> On-Line Services 2000 S.L. telf +34 902 50 29 75 >>> ---------------------------------------------------------------- >>> >>> >>> >>> _______________________________________________ >>> Gluster-users mailing list >>> Gluster-users at gluster.org <mailto:Gluster-users at gluster.org> >>> http://zresearch.com/cgi-bin/mailman/listinfo/gluster-users >>> >>> >>> >>> ------------------------------------------------------------------------ >>> >>> _______________________________________________ >>> Gluster-users mailing list >>> Gluster-users at gluster.org >>> http://zresearch.com/cgi-bin/mailman/listinfo/gluster-users >>> >> >> -- >> Salu-2 y hasta pronto ... >> >> >> ---------------------------------------------------------------- >> David Saez Padros http://www.ols.es >> On-Line Services 2000 S.L. telf +34 902 50 29 75 >> ---------------------------------------------------------------- >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://zresearch.com/pipermail/gluster-users/attachments/20090626/797f5852/attachment-0001.htm>