在后台运行rsync

| 我用它在后台运行rsync
rsync -avh /home/abc/abac /backups/ddd &
当我这样做时,我看到一行说1进程停止。 现在这是否意味着我的进程仍在运行或已停止     
已邀请:
它可能正在尝试从终端读取信息(也许是要求您输入密码)。当后台进程尝试从终端读取时,它将停止。 您可以通过从/ dev / null重定向stdin来使错误消失:
rsync -avh /home/abc/abac /backups/ddd < /dev/null &
...但是这样可能会失败,因为它将无法读取任何尝试读取的内容。     
当您按\“ ctrl + z \”时,该过程停止并转到后台。   [1] +已停止rsync -ar --partial / home / webup / / mnt / backup / 现在按\“ bg \”,它将在后台停止上一个进程。   [1] + rsync -ar --partial / home / webup / / mnt / backup /& 按“作业”以查看该进程正在运行   [1] +运行rsync -ar --partial / home / webup / / mnt / backup /& 如果要进入前台,请按\“ fg 1 \” 1是进程号     
保持rsync在后台运行的解决方案
nohup rsync -a host.origin:/path/data destiny.host:/path/ &
Nohup允许运行进程/命令或Shell脚本以在后台继续工作,即使您关闭终端会话也是如此。 在我们的示例中,我们还在末尾添加了“&”,这有助于将流程发送到后台。 输出示例:
 nohup rsync -avp root@61.0.172.109:/root/backup/uploads/ . &

 [1] 33376
 nohup: ignoring input and appending output to \'nohup.out\'
就是这样,现在您的rsync进程将在后台运行,无论发生什么情况,除非您从命令行中终止该进程,但如果您关闭linux终端或从服务器注销,它都不会被中断。 。 RSync状态
cat nohup.out
    
不,这意味着它已停止。 您可以用
jobs
进行确认。 输出示例:
jobs
[1]+  Stopped                 yes
然后您可以使用
fg
重新激活,例如:
fg 1
    
这很安全,您可以监视nohup.out以查看进度。
nohup rsync -avrt --exclude \'i386*\' --exclude \'debug\' rsync://mirrors.kernel.org/centos/6/os . & 
    
如果一切正常,则您的呼叫应返回新进度的PID,并在一段时间后返回“完成”消息。 是的,您的输出看起来好像您的进程未运行。 检查ps以查看rsync是否正在运行。     
文件传输:
nohup scp oracle@<your_ip>:/backup_location/backup/file.txt . > nohup.out 2>&1 &
然后按ctrl-z
$ bg
使命令生效     

要回复问题请先登录注册