On Sun, March 1, 2015 10:22 am, Richard wrote:
------------ Original Message ------------
Date: Sunday, March 01, 2015 10:44:08 -0500 From: Mark LaPierre marklapier@gmail.com To: centos@centos.org, Mark LaPierre marklapier@aol.com Subject: Re: [CentOS] scp -rp behavior(SOLVED)
On 02/26/15 19:45, Valeri Galtsev wrote:
On Thu, February 26, 2015 6:34 pm, Mark LaPierre wrote:
Hey all,
I'm trying to copy configuration files from my old CentOS 6.6 32 bit machine to my new CentOS 6.6 64 bit machine.
On my 32 bit machine:
[mlapier@mushroom ~]$ ifconfig eth0 Link encap:Ethernet HWaddr 00:19:DB:E5:4E:9F inet addr:192.168.15.105
When I issue this command on my new 64 bit machine, 192.168.15.101:
scp -pr mlapier@192.168.15.105: /home/mlapier/.thunderbird /home/mlapier/.thunderbird
How about escaping dot (with backslash) for the remote machine, or just giving the whole path for remote machine in quotes:
scp -pr mlapier@192.168.15.105:"/home/mlapier/.thunderbird" /home/mlapier
?
Also, if you want to specify destination directory (say with different name) you will need to end directory with forward slash both on local and remote, like:
scp -pr mlapier@192.168.15.105:"/home/mlapier/.thunderbird/" \ /home/mlapier/.thunderbird/
(this should be one line which didn't fit for me in one line hence backslash...)
Valeri
It copies all directories and files in 192.168.15.105: /home/mlapier/ to 192.168.15.101: /home/mlapier. I don't want all that, I just want the .thunderbird folder and all it's contents.
The user and group account numbers match on the two machines for this user so that's not the issue.
When I RTFM this is what I thought it said to do. I'm I misreading the FM or is something weird going on here?
Putting the source path in quotes, because of the dot, like this:
scp -pr mlapier@192.168.15.105:"/home/mlapier/.thunderbird" /home/mlapier
worked.
If the destination also contains a dot or other such character then put the destination in quotes too:
scp -pr mlapier@192.168.15.105:"/home/mlapier/.thunderbird" "/home/mlapier/.thunderbird"
but only include the destination directory if the destination directory does not yet exist otherwise you will get a copy of the source directory inside the destination directory like this:
/home/mlapier/.thunderbird/.thunderbird
The problem is/was the space, after the colon, in your command:
scp -pr mlapier@192.168.15.105: /home/mlapier
quotes, slashes, etc. are totally unnecessary.
If you are keeping the destination name the same as the source, you only need to use a "." (dot) for the target (whether the destination directory/file already exists or not), not the full name. You only need a path on the target side if you are trying to put the directory/file in other than the home directory of the user you are logging in as.
So, assuming you were in your home directory on the source side, all you needed is/was:
scp -pr mlapier@192.168.15.105:.thunderbird .
Well, you are right about dot for local argument, namely "dot" is expanded on local machine into "path to current directory". For remote machine, however, you do have to specify absolute path to the directory you intend to rsync or scp. In your example remote directory quite likely does not exist, as your command is exact equivalent of this:
scp -pr mlapier@192.168.15.105:/.thunderbird .
whereas you may want to have:
scp -pr mlapier@192.168.15.105:/home/remote_user_name/.thunderbird .
Why "slash": /.thunderbird in case of your example? Because if you do not specify absolute path beginning with / the ssh daemon prepends your relative path with its `pwd` it runs in, and its `pwd` is "/")
Another way to specify remote user's home directory would be:
scp -pr mlapier@192.168.15.105:"~/.thunderbird" .
and here quotes prevent "~" from being expanded on local machine, thus "~" is passed verbatim to remote machine and is expanded on remote machine into path to remote user's home directory. I hope I didn't mess up anything here ;-)
Valeri
++++++++++++++++++++++++++++++++++++++++ Valeri Galtsev Sr System Administrator Department of Astronomy and Astrophysics Kavli Institute for Cosmological Physics University of Chicago Phone: 773-702-4247 ++++++++++++++++++++++++++++++++++++++++