Script Question (find, rsync)


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Script Question (find, rsync)
# 1  
Old 12-06-2011
Script Question (find, rsync)

Hello all,

I'm using rsync to maintain two copies of a music library on my main workstation and a server running MPD. I'm wondering about using the script below as a basis for cron to update my MPD db if new files have been added or existing files modified:
Code:
find -type f -iname 'FILENAME' -mmin -10 -exec 'script' \;

Would it be ill advised to simply put ~/music/*.mp3 for FILENAME? with ~160GB of music in that dir?

Would I perhaps be able to use -type d to monitor the directory itself for changes? In which case, what denotes a change to the directory (ie, adding a file?)

Any input would be greatly appreciated.

Thanks!
# 2  
Old 12-06-2011
I do not quite understand - if you want to have 2 repositories of files keep synced, why not just have rsync be triggered in an interval. Depending on the command switches you hand to it, it will keep it synced for you. Smilie It does not really need the help of find to do this.

find will run always over this 160 GB (which can still be a lot of files), which can take some time. rsync maintains a file list it builds just once and tracks only the differences which should be much faster.
# 3  
Old 12-06-2011
Quote:
Originally Posted by pmicka
Hello all,

I'm using rsync to maintain two copies of a music library on my main workstation and a server running MPD. I'm wondering about using the script below as a basis for cron to update my MPD db if new files have been added or existing files modified:
Code:
find -type f -iname 'FILENAME' -mmin -10 -exec 'script' \;

Would it be ill advised to simply put ~/music/*.mp3 for FILENAME? with ~160GB of music in that dir?
what file system are you using and what's the limit on the number of files allowed in a directory of that filesystem
Quote:
Originally Posted by pmicka
Would I perhaps be able to use -type d to monitor the directory itself for changes? In which case, what denotes a change to the directory (ie, adding a file?)
perhaps using the -mmin setting on your find call above would work?

But what zaxxon said, what's wrong with rsync?
# 4  
Old 12-06-2011
Right, but I'm trying to automate the maintenance of my MPD database because it must be manually updated and I have to SSH into that machine each time. So even though the files are identical, the MPD db is not current until I do "mpd --update-db". The cron job would look something like this:
Code:
find -type f -iname 'FILENAME' -mmin -10 -exec 'mpd --update-db' \;

# 5  
Old 12-06-2011
Ok, then just add the rsync as second line. If it has nothing to do it is no real overhead as it will do nothing.
# 6  
Old 12-06-2011
Maybe I'm not being clear, I have no problem using rsync to maintain the two directories, that's easy. I'm trying to run 'mpd --update-db' only if changes have been made to the directory located on the server.
# 7  
Old 12-06-2011
Instead of having every file inspected by a find and maybe some other additional commands, you could just issue your rsync and redirect it's output to a temporary file. Usually if it had nothing to do, it is just 4 lines of output like:
Code:
sending incremental file list

sent 95 bytes  received 12 bytes  214.00 bytes/sec
total size is 0  speedup is 0.00

So if it has more than 4 lines, you can issue your update. Can test it with
Code:
if [ $(wc -l < /tmp/rsync.out) -gt 4 ]; then
   mpd --update-db
fi

This User Gave Thanks to zaxxon For This Post:
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

rsync usage question

Hello folks; I'm using rsync on my Ubuntu servers to sync a remote folders on a remote machine to a local folders on a local machine. one thing i couldn't get to work is how to exclude folder. I know i'm suppose to use "exclude" argument but every time i do, i still see the excluded directory... (0 Replies)
Discussion started by: Katkota
0 Replies

2. Shell Programming and Scripting

rsync question...

hi all, i didnt know where to place the question on this site but seen as though it relates to a script i have done so here... my issue is this... i have 2 servers. On server 1 (master) I have a structure such as /home/test/folder1,/home/test/folder2 and /home/test/folder3. On server... (0 Replies)
Discussion started by: muay_tb
0 Replies

3. Shell Programming and Scripting

rsync question (regarding --delete)

Hi there Does anybody know of a way that i can, instead of issuing a --delete when syncing one directory to another, I can instead somehow receive a list of what would be deleted, but not actually delete it ? basically, people are occasionally putting files into one of synced folders, but... (2 Replies)
Discussion started by: rethink
2 Replies

4. UNIX for Dummies Questions & Answers

Simple Rsync question

I have a folder on a server that I update from different machines. So I think Rsync sounds like a good solution but I'm not sure how to make it a bidirectional check for updating, because if I work on the file on one of my client machines it could be newer than the server. (2 Replies)
Discussion started by: elbombillo
2 Replies

5. Shell Programming and Scripting

find and delete script question

Okay, here is what I have: #!/bin/sh cd /opt/backup/app || exit find . -name "*.tar" -mtime +7 -exec gzip {} \; find . -name "*.war" -mtime +7 -exec gzip {} \; find . -name "*.tar.back*" -mtime +7 -exec gzip {} \; #find . -name "*.gz" -type f -mtime +91 -exec rm {} \; Here is a little... (3 Replies)
Discussion started by: cbo0485
3 Replies

6. UNIX for Dummies Questions & Answers

Rsync question....

I have folders that sync over the network with an external software. I would like to know if rsync can be used to only sync permissions on files on the files. Remember I just want the permissions on the source to be copied over to the destination's already synced files. (2 Replies)
Discussion started by: elbombillo
2 Replies

7. UNIX for Advanced & Expert Users

rsync incremental question

Hi, I have problem with incremental copy of files from source to destination. I would like to copy different sources to different destinations. I made a backup script which look like that: curd=$(date +%w) day=$(date +%A) mkdir -p /home/backup/DATA/$day case $curd in 1|2|3|4|5) ... (7 Replies)
Discussion started by: zhivko.neychev
7 Replies

8. UNIX for Advanced & Expert Users

rsync question

Hey there guys I'm trying to rsync up a subdirectory only. For example /Volumes/media/WebDocuments/2006/* but not /Volumes/media/WebDocuments/2007/* rsync -va /Volumes/media/WebDocuments/2006/ \ user@host:/backups/2006/ If I do it that way I get only the contents... (3 Replies)
Discussion started by: sidmuchrock
3 Replies

9. UNIX for Dummies Questions & Answers

rsync question

Hi All I am trying to rsync the directories between two servers. The source directory is huge (8 GB) and I have the need to take an offsite backup. The directory I am trying to rsync has 774 permissions and are owned by a user/ group. To startup I backed up the source directory and restored... (1 Reply)
Discussion started by: skotapal
1 Replies

10. IP Networking

rsync question?

Does anyone know if rsync will work without ssh or rsh? I am trying to use rsync to synchronize files on two servers, one a production server and the other a standbyserver. The problem is that I have't been given the ok to install openssh on our productions servers, so I am trying to make my job... (4 Replies)
Discussion started by: cstovall
4 Replies
Login or Register to Ask a Question