diff --git a/ChangeLog b/ChangeLog
index afe1df91cce09472ea2aeb1e99ef770cd33b98a6..6579dac9b5a99ef1443ebf2d4e36751f315d16a4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2007-01-11  Per Cederqvist  <ceder@sedesopim.lysator.liu.se>
+
+	File exclusion on root filesystems didn't work.
+	* backup-one-task: Don't produce a garbage exclude file when a
+	.lysrdiff-exclude file is present on the / file system.
+
+	Use our own rdiff-backup program.
+	* backup-one-task: Use /opt/LYSrdiff/bin/rdiff-backup to perform
+	the backup.
+
 2007-01-10  Per Cederqvist  <ceder@sedesopim.lysator.liu.se>
 
 	Lysator configuration tweaks.
diff --git a/backup-one-task b/backup-one-task
index ffea4bc6c55824dc68f3bf2976bcf2af2e50c0b7..5370a8f4a4bcc25ada2abf458c418f7c9bad7a1b 100755
--- a/backup-one-task
+++ b/backup-one-task
@@ -122,8 +122,9 @@ scp -B -q -i /root/.ssh/backupkey \
 # Create an emtpy exclude file if non existed on the server.
 touch "$exclude"
 
-sed 's%^\([-+] \|\)\([^/]\)%\1'"$serverpath"'/\2%' \
-    < "$exclude" \
+sed < "$exclude" \
+    -e 's%^\([-+] \|\)\([^/]\)%\1'"$serverpath"'/\2%' \
+    -e 's%^\([-+] \|\)//%\1/%' \
 | tr '\n' '\0' > "$excl_abs"
 
 
@@ -147,7 +148,8 @@ schema="ssh -o BatchMode=yes -o ServerAliveInterval=120"
 schema="$schema -a -k -x -i /root/.ssh/backupkey"
 schema="$schema %s $remoterdiff --server"
 
-rdiff-backup --exclude-other-filesystems --null-separator \
+/opt/LYSrdiff/bin/rdiff-backup \
+    --exclude-other-filesystems --null-separator \
     --include-globbing-filelist "$excl_abs" \
     --remote-schema "$schema" \
     --force \