RE: Copying an image from one server to another

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The pattern in you --include-from=FILE_CONTAINING_FILENAME_PATTERNS could be
just a list of files that you can generate from your PhpScript.  Get it now?

-----Original Message-----
From: ioannes [mailto:ioannes@xxxxxxxxxxxxxx] 
Sent: Tuesday, February 05, 2008 1:22 PM
To: php-db@xxxxxxxxxxxxx
Subject: Re:  Copying an image from one server to another

I am and have been reading http://samba.org/ftp/rsync/rsync.html, which 
is one web page but 44 real pages.  I see that FILE is a term used the 
rsynch script.  Is this something output from the php script, and if so 
how is it channelled from one to the other?

I see the following:

- start quote -
****

**--exclude-from=FILE**
    This option is related to the *--exclude* option, but it specifies a
    FILE that contains exclude patterns (one per line). Blank lines in
    the file and lines starting with ';' or '#' are ignored. If /FILE/
    is *-*, the list will be read from standard input. 

**--include-from=FILE**

    This option is related to the *--include* option, but it specifies a
    FILE that contains include patterns (one per line). Blank lines in
    the file and lines starting with ';' or '#' are ignored. If /FILE/
    is *-*, the list will be read from standard input. 

**--files-from=FILE**
    Using this option allows you to specify the exact list of files to
    transfer (as read from the specified FILE or *-* for standard
    input). It also tweaks the default behavior of rsync to make
    transferring just the specified files and directories easier:

            * The *--relative* (*-R*) option is implied, which preserves
              the path information that is specified for each item in
              the file (use *--no-relative* or *--no-R* if you want to
              turn that off).
            * The *--dirs* (*-d*) option is implied, which will create
              directories specified in the list on the destination
              rather than noisily skipping them (use *--no-dirs* or
              *--no-d* if you want to turn that off).
            * The *--archive* (*-a*) option's behavior does not imply
              *--recursive* (*-r*), so specify it explicitly, if you
              want it.
            * These side-effects change the default state of rsync, so
              the position of the *--files-from* option on the
              command-line has no bearing on how other options are
              parsed (e.g. *-a* works the same before or after
              *--files-from*, as does *--no-R* and all other options).

    The filenames that are read from the FILE are all relative to the
    source dir -- any leading slashes are removed and no ".." references
    are allowed to go higher than the source dir. For example, take this
    command:

        |rsync -a --files-from=/tmp/foo /usr remote:/backup|

    If /tmp/foo contains the string "bin" (or even "/bin"), the /usr/bin
    directory will be created as /backup/bin on the remote host. If it
    contains "bin/" (note the trailing slash), the immediate contents of
    the directory would also be sent (without needing to be explicitly
    mentioned in the file -- this began in version 2.6.4). In both
    cases, if the *-r* option was enabled, that dir's entire hierarchy
    would also be transferred (keep in mind that *-r* needs to be
    specified explicitly with *--files-from*, since it is not implied by
    *-a*). Also note that the effect of the (enabled by default)
    *--relative* option is to duplicate only the path info that is read
    from the file -- it does not force the duplication of the
    source-spec path (/usr in this case).

    In addition, the *--files-from* file can be read from the remote
    host instead of the local host if you specify a "host:" in front of
    the file (the host must match one end of the transfer). As a
    short-cut, you can specify just a prefix of ":" to mean "use the
    remote end of the transfer". For example:

        |rsync -a --files-from=:/path/file-list src:/ /tmp/copy|

    This would copy all the files specified in the /path/file-list file
    that was located on the remote "src" host.

- end quote -

but I don't understand anything really from the synopsis:

- start quote -


    SYNOPSIS

Local:  rsync [OPTION...] SRC... [DEST]

Access via remote shell:
  Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]
  Push: rsync [OPTION...] SRC... [USER@]HOST:DEST

Access via rsync daemon:
  Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
        rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
  Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
        rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST

- end quote -

What is push and pull?

I am guessing I might achieve something by writing a rsynch script with 
lines like:

|rsync -avz foo:src/bar/ /data/tmp

save it as rsynch.txt and call it from a cron job. I don't understand 
how I build up a file list of the jpgs I want to copy.  Patterns will 
not do it.  I need to create an array from the database and get those 
files into the new site.

John
|

Mr Webber wrote:
> FILE is there reference from the man page.  It contains the files to
include
> in the sync.
>
> Have you read the man page for rsync?
>
> -----Original Message-----
> From: ioannes [mailto:ioannes@xxxxxxxxxxxxxx] 
> Sent: Tuesday, February 05, 2008 9:48 AM
> To: php-db@xxxxxxxxxxxxx
> Subject: Re:  Copying an image from one server to another
>
> I was unsure what was meant by FILE in php - is that the global?  How do 
> I reference a remote site's jpg file into FILE?  Then how to I create 
> the output from the php into stdout - using the return of a function?  
> or print?   Then how to launch rsynch - I understand how to call it from 
> cron, as my web server kindly gives me an interface for this, but to 
> create the file I would need to know what extension to save with the 
> script name, and how to make it execute, ie the equivalent of <?php for 
> rsynch scripts.   Then how is FILE read by rsynch script.  So lots more 
> questions just to copy a publicly available image into my site.  There 
> has got to be an easier way.
>
> John
>
> Mr Webber wrote:
>   
>> Note the rsync option:
>>
>> --include-from=FILE
>>        This  option  is  related  to  the --include option, but it
>>     
> specifies
>   
>> a FILE that contains include patterns (one per line).  Blank
>>        lines in the file and lines starting with ';' or '#' are ignored.
>>     
> If
>   
>> FILE is -, the list will be read from standard input.
>>
>> So, from a PhpScript, you manage the contents of "FILE" and then launch
>> rsync with the appropriate additional options.
>>
>> -----Original Message-----
>> From: ioannes [mailto:ioannes@xxxxxxxxxxxxxx] 
>> Sent: Monday, February 04, 2008 12:59 PM
>> To: php-db@xxxxxxxxxxxxx
>> Subject: Re:  Copying an image from one server to another
>>
>> Initially I could not find much on SCP and rsynch is about synchronising 
>> folders, but that is only part of the problem.  I don't want files in 
>> the target location that are not referenced from the target database.  I 
>> hold references like this
>>
>> img[]=pic1.jpg&img[]=pic2.jpg
>>
>> then I parse it out into the img array. 
>>
>> So I want to do it from php programming and am on a shared server.  I 
>> may have access to the terminal for linux/unix but I am not too strong 
>> in that area.  So am I wrong to be still thinking of cURL?
>>
>> John
>>
>> Aleksandar Vojnovic wrote:
>>   
>>     
>>> How about sending the file via SCP? (it would be a much more safer to 
>>> transfer files)
>>>
>>> -Aleksander
>>>
>>> Chris wrote:
>>>     
>>>       
>>>> ioannes wrote:
>>>>       
>>>>         
>>>>> I am trying to:
>>>>>
>>>>> - check whether an image file exists on a server,
>>>>> - check whether it does not exist on another server, and if not exists
>>>>> - to copy from the first location to the second.
>>>>>
>>>>> I am using cURL.  First step to capture the image from the first 
>>>>> server.  When I return this image to the browser I get a lot of 
>>>>> strange characters.  So has this captured the image and what do I 
>>>>> use next to upload to the second server?
>>>>>
>>>>> I was trying to use file_exists and had problems referencing the 
>>>>> file location as "http://wwww.mysite.com/pic.jpg";.  But I know I can 
>>>>> also look at using readfile() and file_put_contents(), $fp = 
>>>>> fopen(), fputs(), fpassthru() etc.  What is best way?
>>>>>         
>>>>>           
>>>> FTP.
>>>>
>>>> There's no way fopen is going to be able to write to a remote url, 
>>>> that'd just be such a huge security issue it's not funny.
>>>>
>>>>       
>>>>         
>>>     
>>>       
>>   
>>     
>
>   

-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [Postgresql Discussion]     [Kernel Newbies]     [Postgresql]     [Yosemite News]

  Powered by Linux