rsync与特殊文件的关系

rsync与特殊文件的关系

我正在尝试将一些现有备份从一个系统转移到另一个系统。较旧的备份系统似乎已成功备份 /dev/hda、/dev/tty0 和 /dev/null 等特殊文件,这些文件看起来像是作为操作系统构建过程的一部分创建的。

所以我尝试给rsync他们安装新机器,但我不断收到大量消息,例如:

跳过非常规文件“machineX/latest/home/machineX/build/image/rh62/dev/agpgart”

我使用的命令是:

rsync -avz /oldbackups/machineX/ newbackups:~/machineX/

AFAIK:

-a(存档)应该意味着-rlptgoD

-D应该是指--specials --devices

我检查了文件:

$ ls -la machineX/latest/home/machineX/build/image/rh62/dev/agpgart 
crw-rw-r-- 1 500 500 10, 175 Feb  4  2000 machineX/latest/home/machineX/build/image/rh62/dev/agpgart
$ file machineX/latest/home/machineX/build/image/rh62/dev/agpgart
machineX/latest/home/machineX/build/image/rh62/dev/agpgart: character special

那么这些是开关应该覆盖的特殊文件--special,不是吗?

为什么它仍然跳过这些文件?


作为参考,我使用 rsync 并具有以下详细信息:

$ rsync --version
rsync  version 3.0.9  protocol version 30
Copyright (C) 1996-2011 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
Capabilities:
    64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints,
    socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
    append, ACLs, xattrs, iconv, symtimes

答案1

并不是--special“应该”同步设备,而是--devices间接切换。为此,该man页面说:

--devices
       This option causes rsync to transfer character and block  device
       files  to  the  remote  system  to recreate these devices.  This
       option has no effect if the receiving rsync is not  run  as  the
       super-user (see also the --super and --fake-super options).

并且您似乎没有以 root 身份登录远程系统,这使得该选项无效。

相关内容