extras: clean up a brick's gfid xattr
* extras/clear_xattrs.sh: This script enables a brick from a deleted volume(stale brick) to be used in a new volume by clearing all the trusted.gfid xattr from the brick tree. * One should run this script on all machines which have stale bricks if one wants to re-use the same bricks for a new volume. NOTE: This script *SHOULD BE RUN ONLY AFTER STOPPING A VOLUME*, thereby ensuring that no replace-brick or rebalance operations are on-going. Change-Id: I35a4a2784fe502749184b87299b1a043b8e48e90 BUG: 765572 Signed-off-by: Rajesh Amaravathi <rajesh@redhat.com> Reviewed-on: http://review.gluster.com/781 Reviewed-by: Amar Tumballi <amar@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
This commit is contained in:
parent
31fa069329
commit
4511ed196f
43
extras/clear_xattrs.sh
Executable file
43
extras/clear_xattrs.sh
Executable file
@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Clear the trusted.gfid xattr in the brick tree
|
||||
|
||||
# This script must be run only on a stopped brick/volume
|
||||
# Stop the volume to make sure no rebalance/replace-brick
|
||||
# operations are on-going
|
||||
|
||||
# Not much error checking
|
||||
remove_xattrs ()
|
||||
{
|
||||
find "$1" -exec setfattr -h -x "trusted.gfid" '{}' \; > /dev/null 2>&1;
|
||||
find "$1" -exec setfattr -h -x "trusted.glusterfs.volume-id" '{}' \; > /dev/null 2>&1;
|
||||
}
|
||||
|
||||
main ()
|
||||
{
|
||||
if [ -z "$1" ]; then
|
||||
echo "Please specify the brick path(s)";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
which getfattr > /dev/null 2>&1;
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "attr package missing";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
which setfattr > /dev/null 2>&1;
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "attr package missing";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
for brick in "$@";
|
||||
do
|
||||
echo "xattr clean-up in progress: $brick";
|
||||
remove_xattrs "$brick";
|
||||
echo "$brick ready to be used as a glusterfs brick";
|
||||
done;
|
||||
}
|
||||
|
||||
main "$@";
|
Loading…
Reference in New Issue
Block a user