Mention when we run fakeroot.
[rsync/rsync.git] / testsuite / chown.test
... / ...
CommitLineData
1#! /bin/sh
2
3# Copyright (C) 2002 by Martin Pool <mbp@samba.org>
4
5# This program is distributable under the terms of the GNU GPL (see
6# COPYING).
7
8# Test that when rsync is running as root and has -a it correctly sets
9# the ownership of the destination.
10
11# We don't know what users will be present on this system, so we just
12# use random numeric uids and gids.
13
14. "$suitedir/rsync.fns"
15
16set -x
17
18case `id -u` in
19'') ;; # If "id" failed, try to continue...
200) ;;
21*) if [ -f /usr/bin/fakeroot ]; then
22 echo "Let's try re-running the script under fakeroot..."
23 exec /usr/bin/fakeroot /bin/sh "$0"
24 fi
25 ;;
26esac
27
28# Build some hardlinks
29
30mkdir "$fromdir"
31name1="$fromdir/name1"
32name2="$fromdir/name2"
33echo "This is the file" > "$name1"
34echo "This is the other file" > "$name2"
35
36chown 5000 "$name1" || test_skipped "Can't chown (probably need root)"
37chown 5001 "$name2" || test_skipped "Can't chown (probably need root)"
38chgrp 5002 "$name1" || test_skipped "Can't chgrp (probably need root)"
39chgrp 5003 "$name2" || test_skipped "Can't chgrp (probably need root)"
40
41checkit "$RSYNC -aHvv \"$fromdir/\" \"$todir/\"" "$fromdir" "$todir"
42
43# The script would have aborted on error, so getting here means we've won.
44exit 0