problems with rsync

Discussion in 'Installation/Configuration' started by unsichtbare, Nov 24, 2008.

  1. unsichtbare

    unsichtbare Member HowtoForge Supporter

    When I run rsync I get:

    Code:
    rsync: opendir "/var/www/web5/user/web5_rsts/Maildir" failed: Permission denied (13)
    rsync: opendir "/var/www/web5/user/web5_rsts/.spamassassin" failed: Permission denied (13)
    rsync: opendir "/var/www/web5/user/web5_test/Maildir" failed: Permission denied (13)
    rsync: opendir "/var/www/web5/user/web5_test/.spamassassin" failed: Permission denied (13)
    Although it does successfully copy some files.

    Also, when I try to automate the rsync process following the tutorial, it still asks for a password, then fails.

    Code:
    root@mirrior1:~# rsync -avz --delete --exclude=**/stats --exclude=**/error --exclude=**/files/pictures -e "ssh -i /root/rsync/mirror-rsync-key" [email protected]:/var/www/ /var/www/
    [email protected]'s password:
    bash: /home/someuser/rsync/checkrsync: /bin/shcase: bad interpreter: No such file or directory
    rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
    rsync error: remote command could not be run (code 126) at io.c(454) [receiver=2.6.9]
    Yes I actually created a user account "someuser", following the tutorial.

    Any suggestions?

    One other thing, when I ran:

    Code:
    ssh-keygen -t dsa -b 2048 -f /root/rsync/mirror-rsync-key
    as root, it told me that the key needed to be 1024 bits so I changed 2048 to 1024 and re-ran it.

    -J
     
  2. till

    till Super Moderator Staff Member ISPConfig Developer

    Please run the rsync command as root user, otherwise the process does not has the permissions to copy the files.
     
  3. unsichtbare

    unsichtbare Member HowtoForge Supporter

    Code:
    login as: root
    [email protected]'s password:
    Last login: Mon Nov 24 08:13:47 2008 from 
    Linux mirrior1.myserver.com 2.6.20-15-server #2 SMP Sun Apr 15 07:41:34 UTC                        2007 i686
    
    The programs included with the Ubuntu system are free software;
    the exact distribution terms for each program are described in the
    individual files in /usr/share/doc/*/copyright.
    
    Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
    applicable law.
    root@mirrior1:~# rsync -avz --delete --exclude=**/stats --exclude=**/error --exclude=**/files/pictures -e "ssh -i /root/rsync/mirror-rsync-key" [email protected]:/var/www/ /var/www/
    [email protected]'s password:
    bash: /home/someuser/rsync/checkrsync: /bin/shcase: bad interpreter: No such file or directory
    rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
    rsync error: remote command could not be run (code 126) at io.c(454) [receiver=2.6.9]
    root@mirrior1:~#
    
    I was careful to run commands either as "someuser" or root as specified in the tutorial.

    -J
     
  4. till

    till Super Moderator Staff Member ISPConfig Developer

    Yes, but if someuser has not the permissions to read files, it can not be synced :)
     
  5. falko

    falko Super Moderator Howtoforge Staff

    What's in /home/someuser/rsync/checkrsync?
     
  6. unsichtbare

    unsichtbare Member HowtoForge Supporter

    /home/someuser/rsync/checkrsync
    Code:
    #!/bin/shcase "$SSH_ORIGINAL_COMMAND" in        *\&*)                echo "Rejected"                ;;        *\(*)                echo "Rejected"                ;;        *\{*)                echo "Rejected"                ;;        *\;*)                echo "Rejected"                ;;        *\<*)                echo "Rejected"                ;;        *\`*)                echo "Rejected"                ;;        rsync\ --server*)                $SSH_ORIGINAL_COMMAND                ;;        *)                echo "Rejected"                ;;esac
    ~
    

    -J
     
  7. falko

    falko Super Moderator Howtoforge Staff

    The problem is that you have everything in one line. It must look like this instead:

    Code:
    #!/bin/sh
    
    case "$SSH_ORIGINAL_COMMAND" in
            *\&*)
                    echo "Rejected"
                    ;;
            *\(*)
                    echo "Rejected"
                    ;;
            *\{*)
                    echo "Rejected"
                    ;;
            *\;*)
                    echo "Rejected"
                    ;;
            *\<*)
                    echo "Rejected"
                    ;;
            *\`*)
                    echo "Rejected"
                    ;;
            rsync\ --server*)
                    $SSH_ORIGINAL_COMMAND
                    ;;
            *)
                    echo "Rejected"
                    ;;
    esac
     
  8. andrercmeira

    andrercmeira New Member

    I use rsync in my server, vmail copy normaly, but www not copy,

    i follow http://www.howtoforge.com/mirroring_with_rsync,

    its work for vmail, my reverse dns files, but not for /var/www

    Code:
    root@johan:/var/vmail# rsync -avzu --delete --exclude=*/tmp/ --exclude=.bash_history -e "ssh -i /root/rsync/mirror-rsync-key" [email protected]:/var/www/ /var/www/
    receiving incremental file list
    rsync: opendir "/var/www/clients/client1/web1/cgi-bin" failed: Permission denied (13)
    IO error encountered -- skipping file deletion
    rsync: opendir "/var/www/clients/client1/web1/ssl" failed: Permission denied (13)
    rsync: opendir "/var/www/clients/client1/web1/web" failed: Permission denied (13)
    rsync: opendir "/var/www/clients/client2/web2" failed: Permission denied (13)
    rsync: opendir "/var/www/clients/client2/web3" failed: Permission denied (13)
    
    sent 225 bytes  received 94091 bytes  188632.00 bytes/sec
    total size is 49697052  speedup is 526.92
    rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1526) [generator=3.0.7]
    
     
  9. falko

    falko Super Moderator Howtoforge Staff

    There seems to be a permissions problem. Can you, for example, post the output of
    Code:
    ls -la /var/www/clients/client1/web1/cgi-bin/
    ?

    BTW, you use ISPConfig 3, not 2, right? Because this is the ISPConfig 2 forum... ;)
     
  10. Ripeed

    Ripeed Member

    Hi, I have the same problem. I dont want to use root for rsync but I dont know how get read rights to some user.

    This is my output

    Code:
    root@sue:~# ls -la /var/www/clients/client1/web1/cgi-bin/
    total 8
    drwxr-x--x 2 web1 client0 4096 Oct  6 10:07 .
    drwxr-x--x 6 web1 client1 4096 Oct 10 10:03 ..
    
     
  11. falko

    falko Super Moderator Howtoforge Staff

    If you use web1 as the rsync user or any user that belongs to the client0 group, everything should be fine. I don't recommend to change permissions of your web folders as this might result in unpredictable behaviour.
     
  12. Ripeed

    Ripeed Member

    Thanks but, I want to sync by some user from WWW directory. If I add new web I dont want adding new backup process. Can you help me with this? Now I can do that by root user. I think its not good:)
     
  13. falko

    falko Super Moderator Howtoforge Staff

    But that's the best solution if you want to sync directories that are owned by different users/groups.
     

Share This Page