如何在 linux 中恢复大文件的副本?我有一个巨大的文件 (serveral gigabyes) 部分复制到网络驱动器,这花了很长时间,而且大部分是在复制操作由于现在已修复的网络问题而停止之前完成的。如何恢复文件副本。我不想要一个低效的脚本,并且 ecp 不起作用(它似乎不适用于大文件)。
我使用带有 Hyper-V 的 Windows Server 2008 R2 和运行 Ubuntu 12.04 LTS 的来宾。
如何在 Windows Server 2008R2 和运行 Ubuntu 12.04 的来宾之间共享剪贴板?
更新
我需要什么协议来连接这些机器?我想在 Ubuntu上按ctrl+ c,然后在 Windows Server 上按ctrl+v并以这种方式复制文本。
现在我使用 WinSCP。所以我用文本创建一个文件,然后复制这个文件。这并不容易和快速。
我已经查看了之前所有的类似问题,但答案似乎无处不在,而且没有人移动大量数据(100 GB 与 10 TB 不同)。
我有大约 10 TB 的空间需要从一个 RAID 阵列移动到另一个、千兆以太网、免费百科全书、XFS文件系统。我最担心的是中途转会失败并且无法轻松恢复。速度会很好,但确保传输更重要。
通常我只会使用 tar 和 netcat,但是我要迁移的 RAID 阵列最近非常不稳定,如果它在中途掉线,我需要能够恢复和恢复。我应该看看rsync吗?
再仔细研究一下,我认为 rsync 可能太慢了,我想避免这需要 30天或更长时间。所以现在我正在寻找有关如何使用netcat监视/恢复传输的建议。
如何使用lftp在远程服务器上复制文件?
移动文件就像使用mv命令一样简单,但是有什么命令等同于cp?
我需要将一个大文件(损坏的 MySQL 表 ~40GB)移动到单独的服务器上以修复它。(在我的生产服务器上尝试修复时,它很快杀死了服务器)。
为了做到这一点,我想将 .frm、.MYI 和 .MYD 文件从我的生产服务器同步到云服务器。
我正在将文件从 /var/lib/mysql/{database}/ 复制到 /home/{myuser} 这样我就不需要为 rsync 命令启用 root 访问权限并且 100% 确定数据库文件不是在使用中(它不应该被写入或读取,但显然我不想关闭我的生产数据库来确保)。
我尝试复制的第一个文件大约为 10GB。我正在从我的生产服务器的一部分转移到另一部分,即转移到相同的磁盘阵列。
不幸的是,复制命令“cp filename newfilename”占用了太多资源,导致服务器陷入停顿。
将文件复制到其他目录时如何使用更少的资源?(需要多长时间并不重要)。
假设我设法做到了这一点,那么在将文件 rsync 到云时,我可以期待什么资源使用?
谁能建议一个更好的方法来做到这一点?我的磁盘空间很快就用完了,所以需要尽快修复和归档这个表。
我在使用 Total Commander 复制的文件上丢失时间戳(创建日期)时遇到问题 - 仅保留修改日期。它有数十万个文件和几 TB的数据,所以我不想再次复制它们。
我设法使用 robocopy 仅更新文件夹时间戳 - 效果很好:
robocopy /e /dcopy:t c:\source d:\destination
Run Code Online (Sandbox Code Playgroud)
但所有文件时间戳都被修改为复制时间。
我尝试了一些选项,例如:
robocopy /e /copy:t c:\source d:\destination
robocopy /e /copyall c:\source d:\destination
Run Code Online (Sandbox Code Playgroud)
但这没有帮助。
它可以完成这项工作,但仅当目标 为空时:
robocopy /e /copyall /dcopy:t c:\source d:\destination
Run Code Online (Sandbox Code Playgroud)
它也可以完成这项工作,但仅在 Windows 7 上(在 Windows 10 上不起作用),并且它会再次复制所有文件,这不是我想要的:
robocopy /e /copyall /is c:\source d:\destination
Run Code Online (Sandbox Code Playgroud)
有人知道如何仅更新文件的时间戳而不再次复制数据本身吗?它可以是任何应用程序/方法,但如果可能的话,我更喜欢免费的应用程序/方法。我需要重新创建整个子目录结构、隐藏文件和符号链接 - 完整镜像。:)
谢谢。
docker build 似乎不会覆盖它之前复制的文件。我有一个带有多个复制指令的 dockerfile,并且在较早的 COPY 指令中涉及的文件不会被后来的指令覆盖。
一个简化的示例(尽管如果第一个副本是恰好包含相关文件的整个目录也会发生这种情况):
COPY docker/config/file1.yml $BASE/config/thatfile.yml
COPY docker/config/file2.yml $BASE/config/thatfile.yml
Run Code Online (Sandbox Code Playgroud)
构建后,$BASE/config/thatfile.yml 包含 file1.yml 的内容。有没有办法让它包含file2.yml的内容?
我在这里的主要用例是复制整个配置文件文件夹,然后替换特定构建的选择配置文件。
我试图递归地将目录/文件结构从一个目录复制到另一个目录,只保留 html 文件。应该是包含/排除的简单案例,不是吗?
我只想先打印出文件。当我做对了,我会复制它们。
rsync -a --list-only -v SOURCEDIR --exclude='.*' --include='**/*.html'
Run Code Online (Sandbox Code Playgroud)
给我所有的文件。
rsync -a --list-only -v SOURCEDIR --include='**/*.html' --exclude='*'
Run Code Online (Sandbox Code Playgroud)
和
rsync -a --list-only -v SOURCEDIR --include='*.html' --exclude='*'
rsync -a --list-only -v SOURCEDIR --include=*.html --exclude=*
Run Code Online (Sandbox Code Playgroud)
不给我文件。
rsync -a --list-only -v SOURCEDIR --include='*.html' --exclude='*.*'
Run Code Online (Sandbox Code Playgroud)
看起来它给了我整个目录结构和只有 html 文件。但我不想要空目录。
帮助!
在 Mac OS 10.6 上
我有一个 shell 脚本,它不断在远程系统之间复制大文件(2 GB 到 5 GB)。基于密钥的身份验证与代理转发一起使用,一切正常。例如:假设 shell 脚本在机器 A 上运行并将文件从机器 B 复制到机器 C。
“scp -Cp -i 私钥 ssh_user@source-IP:source-path ssh_user@destination-IP:destination-path”
现在的问题是进程 sshd 不断占用 CPU 负载。
例如:目标机器(即机器-C)上的 top -c 显示
PID 用户 PR NI VIRT RES SHR S %CPU %MEM TIME+ 命令 14580 ssh_user 20 0 99336 3064 772 R 85.8 0.0 0:05.39 sshd:ssh_user@notty 14581 ssh_user 20 0 55164 1984 1460 S 6.0 0.0 0:00.51 scp -p -d -t /home/binary/instances/instance-1/user-2993/
这导致高平均负载。
我相信 scp 占用了太多 CPU,因为它正在加密/解密数据。但是我不需要加密数据传输,因为机器 B 和机器 C 都在局域网中。 …
我开始使用 ESXi Web 界面(版本 6.5.0 Update 1 (Build 6765664))将文件从一个数据存储复制到另一个数据存储,并且已经进行了半天。我想优雅地停止复制过程,但它似乎不允许我。有任何想法吗?如果这是唯一的方法,我可以通过 ssh 进入该框以终止该进程。
谢谢。