Copies files between multiple hosts at once.
hawq scp -f <hostfile_hawqssh> | -h <hostname> [-h <hostname> ...] [--ignore-bad-hosts] [-J <character>] [-r] [-v] [[<user>@]<hostname>:]<file_to_copy> [...] [[<user>@]<hostname>:]<copy_to_path> hawq scp -? hawq scp --version
hawq scp utility allows you to copy one or more files from the specified hosts to other specified hosts in one command using SCP (secure copy). For example, you can copy a file from the HAWQ master host to all of the segment hosts at the same time.
To specify the hosts involved in the SCP session, use the
-f option to specify a file containing a list of host names, or use the
-h option to name single host names on the command-line. At least one host name (
-h) or a host file (
-f) is required. The
-J option allows you to specify a single character to substitute for the hostname in the
<copy_to_path> destination strings. If
-J is not specified, the default substitution character is an equal sign (
=). For example, the following command will copy
.bashrc from the local host to
/home/gpadmin on all hosts named in
$ hawq scp -f hostfile_hawqssh .bashrc =:/home/gpadmin
If a user name is not specified in the host list or with user
@ in the file path,
hawq scp will copy files as the currently logged in user. To determine the currently logged in user, invoke the
whoami command. By default,
hawq scp copies to
$HOME of the session user on the remote hosts after login. To ensure the file is copied to the correct location on the remote hosts, use absolute paths.
hawq scp, you must have a trusted host setup between the hosts involved in the SCP session. You can use the utility
hawq ssh-exkeys to update the known host files and exchange public keys between hosts if you have not done so already.
-hoption multiple times to specify multiple host names.
$HOMEof the session user. You can also use the equal sign ’
=’ (or another character that you specify with the
-Joption) in place of a <hostname>. This will then substitute in each host name as specified in the supplied host file (
-f) or with the
-Joption allows you to specify a single character to substitute for the <hostname> in the
<copy_to_path\>destination strings. If
-Jis not specified, the default substitution character is an equal sign (
Copy the file named
/ on all the hosts in the file
$ hawq scp -f hostfile_hawqssh installer.tar =:/
Copy the file named myfuncs.so to the specified location on the hosts named
$ hawq scp -h sdw1 -h sdw2 myfuncs.so =:/usr/local/-db/lib