最新消息:20210816 当前crifan.com域名已被污染,为防止失联,请关注(页面右下角的)公众号

【已解决】rsync同步时使用–password-file但是没用仍需要输入密码

rsync crifan 6852浏览 0评论

折腾:

【已解决】用rsync去同步本地文件到远程服务器

期间,

试了试用密码文件:

rsync -avz –progress –delete –password-file=remote_server_password.txt /Users/crifan/GitBook/Library/Import/http_restful_api/output [email protected]:/home/wwwroot/book.crifan.com/books/http_restful_api

rsync -avz –progress –delete –password-file=remote_server_password.txt /Users/crifan/GitBook/Library/Import/http_restful_api/output [email protected]:/home/wwwroot/book.crifan.com/books/http_restful_api

rsync -avz –progress –delete –password-file=remote_server_password.txt /Users/crifan/GitBook/Library/Import/http_restful_api/output 45.79.205.194:/home/wwwroot/book.crifan.com/books/http_restful_api

rsync -avz –progress –delete -e ssh –password-file=remote_server_password.txt /Users/crifan/GitBook/Library/Import/http_restful_api/output [email protected]:/home/wwwroot/book.crifan.com/books/http_restful_api

结果没用,还是需要输入密码。

而密码文件中,不论是:

password

还是

user:password

都没用。

看看rsync本身支持哪些命令:

➜  http_restful_api git:(master) ✗ rsync –help

rsync  version 2.6.9  protocol version 29

Copyright (C) 1996-2006 by Andrew Tridgell, Wayne Davison, and others.

<http://rsync.samba.org/>

Capabilities: 64-bit files, socketpairs, hard links, symlinks, batchfiles,

              inplace, IPv6, 64-bit system inums, 64-bit internal inums

rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you

are welcome to redistribute it under certain conditions.  See the GNU

General Public Licence for details.

rsync is a file transfer program capable of efficient remote update

via a fast differencing algorithm.

Usage: rsync [OPTION]… SRC [SRC]… DEST

  or   rsync [OPTION]… SRC [SRC]… [USER@]HOST:DEST

  or   rsync [OPTION]… SRC [SRC]… [USER@]HOST::DEST

  or   rsync [OPTION]… SRC [SRC]… rsync://[USER@]HOST[:PORT]/DEST

  or   rsync [OPTION]… [USER@]HOST:SRC [DEST]

  or   rsync [OPTION]… [USER@]HOST::SRC [DEST]

  or   rsync [OPTION]… rsync://[USER@]HOST[:PORT]/SRC [DEST]

The ‘:’ usages connect via remote shell, while ‘::’ & ‘rsync://’ usages connect

to an rsync daemon, and require SRC or DEST to start with a module name.

Options

-v, –verbose               increase verbosity

-q, –quiet                 suppress non-error messages

     –no-motd               suppress daemon-mode MOTD (see manpage caveat)

-c, –checksum              skip based on checksum, not mod-time & size

-a, –archive               archive mode; same as -rlptgoD (no -H)

     –no-OPTION             turn off an implied OPTION (e.g. –no-D)

-r, –recursive             recurse into directories

-R, –relative              use relative path names

     –no-implied-dirs       don’t send implied dirs with –relative

-b, –backup                make backups (see –suffix & –backup-dir)

     –backup-dir=DIR        make backups into hierarchy based in DIR

     –suffix=SUFFIX         set backup suffix (default ~ w/o –backup-dir)

-u, –update                skip files that are newer on the receiver

     –inplace               update destination files in-place (SEE MAN PAGE)

     –append                append data onto shorter files

-d, –dirs                  transfer directories without recursing

-l, –links                 copy symlinks as symlinks

-L, –copy-links            transform symlink into referent file/dir

     –copy-unsafe-links     only “unsafe” symlinks are transformed

     –safe-links            ignore symlinks that point outside the source tree

-k, –copy-dirlinks         transform symlink to a dir into referent dir

-K, –keep-dirlinks         treat symlinked dir on receiver as dir

-H, –hard-links            preserve hard links

-p, –perms                 preserve permissions

     –executability         preserve the file’s executability

     –chmod=CHMOD           affect file and/or directory permissions

-o, –owner                 preserve owner (super-user only)

-g, –group                 preserve group

     –devices               preserve device files (super-user only)

     –specials              preserve special files

-D                          same as –devices –specials

-t, –times                 preserve times

-O, –omit-dir-times        omit directories when preserving times

     –super                 receiver attempts super-user activities

-S, –sparse                handle sparse files efficiently

-n, –dry-run               show what would have been transferred

-W, –whole-file            copy files whole (without rsync algorithm)

-x, –one-file-system       don’t cross filesystem boundaries

-B, –block-size=SIZE       force a fixed checksum block-size

-e, –rsh=COMMAND           specify the remote shell to use

     –rsync-path=PROGRAM    specify the rsync to run on the remote machine

     –existing              skip creating new files on receiver

     –ignore-existing       skip updating files that already exist on receiver

     –remove-source-files   sender removes synchronized files (non-dirs)

     –del                   an alias for –delete-during

     –delete                delete extraneous files from destination dirs

     –delete-before         receiver deletes before transfer (default)

     –delete-during         receiver deletes during transfer, not before

     –delete-after          receiver deletes after transfer, not before

     –delete-excluded       also delete excluded files from destination dirs

     –ignore-errors         delete even if there are I/O errors

     –force                 force deletion of directories even if not empty

     –max-delete=NUM        don’t delete more than NUM files

     –max-size=SIZE         don’t transfer any file larger than SIZE

     –min-size=SIZE         don’t transfer any file smaller than SIZE

     –partial               keep partially transferred files

     –partial-dir=DIR       put a partially transferred file into DIR

     –delay-updates         put all updated files into place at transfer’s end

-m, –prune-empty-dirs      prune empty directory chains from the file-list

     –numeric-ids           don’t map uid/gid values by user/group name

     –timeout=TIME          set I/O timeout in seconds

-I, –ignore-times          don’t skip files that match in size and mod-time

     –size-only             skip files that match in size

     –modify-window=NUM     compare mod-times with reduced accuracy

-T, –temp-dir=DIR          create temporary files in directory DIR

-y, –fuzzy                 find similar file for basis if no dest file

     –compare-dest=DIR      also compare destination files relative to DIR

     –copy-dest=DIR         … and include copies of unchanged files

     –link-dest=DIR         hardlink to files in DIR when unchanged

-z, –compress              compress file data during the transfer

     –compress-level=NUM    explicitly set compression level

-C, –cvs-exclude           auto-ignore files the same way CVS does

-f, –filter=RULE           add a file-filtering RULE

-F                          same as –filter=’dir-merge /.rsync-filter’

                             repeated: –filter=’- .rsync-filter’

     –exclude=PATTERN       exclude files matching PATTERN

     –exclude-from=FILE     read exclude patterns from FILE

     –include=PATTERN       don’t exclude files matching PATTERN

     –include-from=FILE     read include patterns from FILE

     –files-from=FILE       read list of source-file names from FILE

-0, –from0                 all *-from/filter files are delimited by 0s

     –address=ADDRESS       bind address for outgoing socket to daemon

     –port=PORT             specify double-colon alternate port number

     –sockopts=OPTIONS      specify custom TCP options

     –blocking-io           use blocking I/O for the remote shell

     –stats                 give some file-transfer stats

-8, –8-bit-output          leave high-bit chars unescaped in output

-h, –human-readable        output numbers in a human-readable format

     –progress              show progress during transfer

-P                          same as –partial –progress

-i, –itemize-changes       output a change-summary for all updates

     –out-format=FORMAT     output updates using the specified FORMAT

     –log-file=FILE         log what we’re doing to the specified FILE

     –log-file-format=FMT   log updates using the specified FMT

     –password-file=FILE    read password from FILE

     –list-only             list the files instead of copying them

     –bwlimit=KBPS          limit I/O bandwidth; KBytes per second

     –write-batch=FILE      write a batched update to FILE

     –only-write-batch=FILE like –write-batch but w/o updating destination

     –read-batch=FILE       read a batched update from FILE

     –protocol=NUM          force an older protocol version to be used

-E, –extended-attributes   copy extended attributes

     –cache                 disable fcntl(F_NOCACHE)

-4, –ipv4                  prefer IPv4

-6, –ipv6                  prefer IPv6

     –version               print version number

(-h) –help                  show this help (-h works with no other options)

Use “rsync –daemon –help” to see the daemon-mode command-line options.

Please see the rsync(1) and rsyncd.conf(5) man pages for full documentation.

See http://rsync.samba.org/ for updates, bug reports, and answers

语法是:

<span style="font-size: 12px; color: rgb(51, 51, 51); font-family: Monaco;"–<password-file=FILE    read password from FILE

啊,没问题啊。

rsync –password-file not work

ssh – rsync without prompt for password – Unix & Linux Stack Exchange

用sshpass利用环境变量RSYNC_PASSWORD实现输入密码

What’s the syntax and prerequisite for –password-file option in rsync? – Stack Overflow

<a href="https://stackoverflow.com/questions/13506120/whats-the-syntax-and-prerequisite-for-password-file-option-in-rsync"–<password-file只能用于rsync的deamon模式-》远端服务器中也需要运行rsync?

What’s the syntax and prerequisite for –password-file option in rsync? – Stack Overflow

sshpass还支持文件的?

linux – Rsync –password-file Not Working – Super User

rsync password-file not working

Rsync keeps asking for password even though a secrets file is configured, what could be the reason? – Server Fault

<a href="https://itefix.net/content/password-file-not-working"–<password-file= not working | itefix.net

目前还没安装sshpass

然后就是去:

【已解决】Mac中安装sshpass

安装好后再去试试

【总结】

即可用:

sshpass -f sshpass_password.txt rsync -avz –progress –delete –force /sourcePath [email protected]:/destPath

其中当前文件夹下有sshpass_password.txt存放着密码。

去实现使用本地文件存放密码,通过sshpass传递到rsync,而不会再弹出让你输入密码的事情了。

转载请注明:在路上 » 【已解决】rsync同步时使用–password-file但是没用仍需要输入密码

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
83 queries in 0.194 seconds, using 22.23MB memory