标签: rsync

SSH 上的 RYSNC 不适用于受限 shell

我需要在我的生产服务器中授予一些 X 先生的访问权限,以便他可以将文件推送到我的服务器。由于没有必要给他 shell 访问权限,我决定使用受限 shell (rssh),以便他只能将文件复制到我的服务器而无法访问它。该文件将通过 SSH 使用 RSYNC 传输。

用于传输文件的命令是

rsync -ua  -e 'ssh -p 55'  /appdata/paths/ 192.168.4.172:/home/example/ 
Run Code Online (Sandbox Code Playgroud)

但是使用受限 shell 通过 SSH 进行 rsync 似乎无法正常工作

$ rsync -ua /appdata/paths/ -e 'ssh -p 565'
example@192.168.2.142:/home/example/
#################################################################################################################

 This service is restricted to authorized users only. All activities on this system     
 are logged.            ##
  ##   Unauthorized access will be fully investigated and reported to the appropriate     
 law enforcement agencies.  ##
Run Code Online (Sandbox Code Playgroud) #
  insecure -e option not allowed.
 This account is restricted by …
Run Code Online (Sandbox Code Playgroud)

shell ssh rsync

4
推荐指数
1
解决办法
3907
查看次数

rsync 排除空文件

我最近发现卷上的一些文件被神秘地截断了 - 或者更准确地说,被零长度文件替换。

幸运的是,这些文件是从多个地方硬链接的,实际上只有大约一半的链接被一个看似相同属性的零长度文件覆盖。

但是,当我查看备份时,发现问题发生在我之前的备份之前。对于有问题的卷,一个简单的镜像备份就足够了,因为文件不应被删除——它主要是附加的。但由于该文件实际上并没有被删除,我不能简单地告诉rsync不要删除。

有没有办法告诉rsync不同步本地长度为零但远程长度非零的文件?

我当然可以简单地编写一些代码来查找零长度文件并排除它们,但这是一个额外的耗时步骤(现在对文件系统进行两次完整扫描)并且它可以排除合法应该同步的文件(在如果存在预期长度为零的文件)。

rsync

4
推荐指数
1
解决办法
4226
查看次数

如何仅将特定文件列表 rsync 到另一台服务器上的同一位置

我有一个文件列表:/location/file.txt

文件内容:

/location1/file2.abc
/location2/location3/file1.abc
/location4/location5/fileX.cde
Run Code Online (Sandbox Code Playgroud)

我想像这样将文件复制到另一台服务器:

cat /location/file.txt | xargs -i scp {} user@server:/location
Run Code Online (Sandbox Code Playgroud)

但是在上面的示例中,列表中的所有文件都复制到特定位置,而我想将它们复制到相同位置(txt 文件 /location1/、/location2/location3/ 等中的准确路径)。

我该怎么做?我也可以使用 rsync,但我只想输入一次密码(到远程服务器)。

scp awk rsync

4
推荐指数
1
解决办法
7958
查看次数

通过 ssh 运行的自动运行的 cron 作业的密钥是否应该没有密码?

我正在阅读一篇Master Linux Now 2013名为的文章,OpenSSH: Easy Loginsssh-agent允许您为您的密钥输入一次密码,然后您就可以自由地连接到远程机器,而无需在 ssh-agent 运行时再次输入。

我被这篇文章吸引的最初原因,除了不必重新输入一百万次密码之外;以便我可以通过 ssh 从远程机器上的 cron 调用 rsync 从/到远程机器进行无人值守备份;

我看到另一篇文章,有人只是跳过了密码,以便 cron 可以轻松地使用密钥登录,感觉不对,但在实践中这样做可以吗?我的意思是,如果有人掌握了该密钥文件,他们将能够对正在备份的机器造成严重破坏。

在我看来,确保用户在重新启动时登录并让他们输入一次密码会更安全,当他们登录以使代理运行时,然后等待 cron 作业在屏幕锁定的情况下运行;但我可能在这里遗漏了一些东西,比如用户或用户类型的 cron 作业运行。

ssh cron rsync

4
推荐指数
1
解决办法
1760
查看次数

通过 SFTP 将文件列表保存到文本文件

我在下面提供了我自己的答案。

我们有许多使用 SFTP 可以正常工作的 bash 脚本,我想要做的是简单地将文件夹的 ls 或 dir 重定向到我们 SFTP 服务器上的文件。

我们可以将其作为cron 作业运行,也可以手动运行。我可以查看来自远程服务器的文件列表,但我想以文本文件的形式生成从远程服务器到本地服务器的文件列表。 .

到目前为止,这是我对 bash 脚本所拥有的内容。下面列出的第四个回声是有问题的行。

#!/bin/bash

localpath=/home/localacct/somepath
remotelocation=/home/account/logs/archive
remotehost=' account@1.1.1.1'

    echo  > $localpath/list.sftp
    echo "cd $remotelocation " >> $localpath/list.sftp
    echo "dir *.* " >> $localpath/list.sftp
    echo "dir *.* > $localpath/dirlist.txt " >> $localpath/list.sftp
    echo "bye " >> $localpath/list.sftp
    sftp -b $localpath/list.sftp $remotehost

exit
Run Code Online (Sandbox Code Playgroud)

sftp rsync shell-script

4
推荐指数
3
解决办法
4万
查看次数

在 rsync 命令方面,差异备份和增量备份有什么区别?

我使用以下 rsync 命令将我的本地文件夹~/dir1备份到远程备份服务器:

rsync -a ~/dir1 username@remote_host:destination_directory
Run Code Online (Sandbox Code Playgroud)

根据我的理解,它是增量备份;如果我误解了,请纠正。

我们如何使用差异备份rsync

backup rsync

4
推荐指数
2
解决办法
9818
查看次数

rsync 并观看部分传输的视频文件

我试图将一个大视频从我的服务器复制到我的本地设备

rsync -aP remotefile.mov localfile.mov
Run Code Online (Sandbox Code Playgroud)

但是除非我停止 rsync 进程,否则本地文件不会显示。

然后我可以在 VLC 中毫无问题地观看部分视频。

我怎样才能在 rsync 的同时观看它?

video rsync file-transfer

4
推荐指数
1
解决办法
628
查看次数

Rsync 仅来自远程服务器的新文件

我有一个带有 rsync 共享的远程服务器,我只需要提取最近 7 天的文件。

我可以使用以下方法根据日期发送文件:

find /path -mtime 7 ... -exec rsync -a
Run Code Online (Sandbox Code Playgroud)

但我不能只是登录到服务器并将文件发送到我的本地机器,所以我需要一种方法来使用 rsync 来获取所有不到 7 天的文件并抓取它们。

我不能简单地同步所有内容,因为服务器上的总数据超过 100TB,而且除了 rsync 模块之外,我无权访问远程服务器。

ssh find rsync

4
推荐指数
2
解决办法
2559
查看次数

Rsync 临时文件扩展名

如果我不使用 --inplace 选项,我很难找到 Rsync 如何“选择”复制文件时创建的临时文件的扩展名。

示例:我想用 Rsync复制sourceDirectory/myFile.txttargetDirectory/

虽然复制myFile.txttargetDirectory/Rsync的将创建一个名为文件.myFile.txt.W4zvLitargetDirectory/

然后 Rsync 将重命名.myFile.txt.W4zvLimyFile.txt.

问题是为什么 Rsync 使用W4zvLi扩展以及为什么每次执行 Rsync 程序时它似乎都会改变?

rsync filenames

4
推荐指数
1
解决办法
2715
查看次数

我是否需要以 root 用户身份使用 rsync 运行备份?

我正在为我的笔记本电脑 (Ubuntu) 创建一个基于rsync. 当后备起来/etc,我得到了很多的Operation not permitted (1)Permission denied (13)错误的。

是否需要执行sudo rsync ...或无论如何都不需要有问题的文件和文件夹?

ubuntu backup rsync

4
推荐指数
1
解决办法
1072
查看次数

标签 统计

rsync ×10

ssh ×3

backup ×2

awk ×1

cron ×1

file-transfer ×1

filenames ×1

find ×1

scp ×1

sftp ×1

shell ×1

shell-script ×1

ubuntu ×1

video ×1