rsync가 할 수없는 것은 무엇을 볼 수 있습니까?
-
10-07-2019 - |
문제
네트워크를 통해 해체 될 Linux 서버 전체를 복사하고 싶습니다.
나는했다 du /
그리고 60GB의 아래 /가 있다고 들었습니다.
그럼 나는했다 rsync -r / root@newserver:/old-server
그리고 할 때 du
에서 old-server
dir 22GB를 받았습니다.
그렇다면 왜 그 차이가 있습니까? 그게 뭔가가 있습니까? du
볼 수 있지만 rsync
복사 할 수 없습니까?
해결책
파일 핸들이 열려 있기 때문에 아직 처리 할 수없는 파일을 삭제했을 것입니다. (DU가 이전에 사용법을 보게 될 것이라는 것을 알지 못했지만 일부 테스트는 그 사실을 보여주었습니다.) LSOF. 내 경험에서 이것의 두 가지 주요 원인은 httpd를 걷어 차지 않고 낙하 테이블을 사용하지 않고 파일 시스템에서 mySQL 테이블을 삭제하지 않고 Apache 로그를 삭제하는 것입니다.
다른 팁
손에 약간의 시간이 있다면 차이점이 무엇인지 정확히 알아낼 수 있습니다. cd /; find . > /tmp/old
이전 서버에서 cd /old-server; find . > /tmp/new
그러면 새 서버에서 vimdiff
변경된 내용을 확인하기 위해 두 파일.
복사를 피해야 할 특별한 파일 시스템이 있습니다. rsync
, 예를 들어, /proc
, /sys
, /tmp
. 그들은 당신이 보는 차이를 설명 할 수 있지만 어쨌든 너무 큰 것 같습니다.
읽을 수없는 디렉토리가있을 수 있습니다 (예 : r
또는 x
그들에게). 프로세스가 실행되는지 기억이 나지 않습니다 root
권한은 먼저 권한을 고치지 않고도 그러한 디렉토리에 액세스 할 수 있습니다.
파일 목록과 MD5 합계를 더 잘 생성하고 비교합니다.