Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

rsync backup to external hard disk exFat fails

I tried to back up data from my macbook to an external hard drive - formatted with exFat (bacause of the Windows and Linux/Mac compatibility).

With Automator I will create a little Program, to backup my data easily. It works fine on the local drive and from local drive to an SD-Card. But it do not work from local drive to an external hard drive. What's wrong?

SOURCE=/Users/username/Pictures/test
TARGET=/Volumes/Backup/
LOG=~/Documents/AutomatorLogs/BackupSync.log

rsync -aze "ssh" --delete --exclude=".*" "$SOURCE" "$TARGET" > "$LOG"

I got this Error:

rsync: recv_generator: mkdir "/Volumes/Backup/test" failed: Permission denied (13)

like image 685
David Strauch Avatar asked Sep 20 '15 18:09

David Strauch


People also ask

Why can't I use rsync with exFAT?

The reason is because rsync doesn't handle permissions on exfat. You will see an rsync error (in syslog or if you control-c out): Show activity on this post.

How to change an external hard drive to exFAT file system?

You can easily change an external hard drive to exFAT file system via Disk Management by following the steps listed below (supposed the operating system is Windows 10): 1. Connect the external hard drive to your computer and make sure that it can be detected by Windows. 2. Press Windows + X at the same time and choose “ Disk Management ”. 3.

Why doesn't rsync work with all my local drives?

Many rsync options seem changed or do not seem to work as expected when working with all local drives. File updates can slow to a crawl when one of the "local" drives is a networked SMB share or a large slower USB drive.

How can I use rsync to back up multiple files?

One thing you might want to consider when using rsync however is to make use of the --link-dest option. This lets you keep multiple backups, but use hard links for any unchanged files, effectively making all backups take the space of an incremental. An example use would be:


Video Answer


2 Answers

I know this is older but I just ran into this and I wanted to make sure this info was included. I know the OP is a little different, but I'm using a macbook and ran into the error I describe so I don't know how even with changing the disk name it worked.

rsync can't use -a when the target is an exfat drive. It will make the directories and seem to be backing up but no files are actually created. You need to use:

rsync -rltDv [SRC] [DESTINATION]

where:
    -v, --verbose               increase verbosity
    -r, --recursive             recurse into directories
    -l, --links                 copy symlinks as symlinks
        --devices               preserve device files (super-user only)
        --specials              preserve special files
    -D                          same as --devices --specials
    -t, --times                 preserve times

The reason is because rsync doesn't handle permissions on exfat. You will see an rsync error (in syslog or if you control-c out):

chgrp [file] failed: Function not implemented (38)
like image 146
John Smith Avatar answered Oct 02 '22 20:10

John Smith


It looks like the user that you're running the command as doesn't have permission to make a new directory in the /Volumes/Backup/ directory.

To solve this, you will probably need to change the permissions on that directory so that your script will be able to write to it and create the new directory it uses to make the backup.

Here are some links about permissions:

http://linuxcommand.org/lts0070.php

http://www.perlfect.com/articles/chmod.shtml

like image 43
mrcheshire Avatar answered Oct 02 '22 20:10

mrcheshire