rsync 프로세스 실행 모니터링 / 감시


22

crontab에 추가 된 rsync 작업이 있으며 실행 중일 때 rsync PID가 있는지 확인하고 htop으로 n 양의 CPU와 RAM을 사용하고 있음을 확인할 수 있습니다.

내가하고 싶은 것은 실제로 어떤 파일이 실시간으로 rsync되고 있는지 모니터링하는 것입니다. 참고로 명령에 자세한 옵션을 전달하지 않았거나 로깅을 추가하지 않았습니다. 나는 정말로 필요할 때 rsync되고있는 것을 확인하고 싶습니다.

내가 어떻게 그것을 달성 할 수 있는지 아는가?

답변:


38

넌 할 수있어:

strace -e open $(ps -o lwp= -LC rsync | sed 's/^/-p/')

그것이 무엇을하고 있는지, 또는

lsof -ad3-999 -c rsync

현재 열린 파일을 확인하십시오.


3

가장 간단한 해결책은 rsync의 출력을 로그 파일로 리디렉션하는 것입니다.

rsync -avz /something /somwhere >> ~/rsynclog

1

두 가지 방법이 있습니다

화면에서 : cron 작업에 화면 세션을 첨부하십시오.

화면 rsync-진행 src dst

이렇게하면 현재 처리중인 파일을 확인할 때마다 rsync 작업에 다시 연결할 수 있습니다 (rsync 작업을 시작한 파일과 동일한 사용자 여야 함).

screen -x

로그인으로 당신의 rsync를 작업에 추가 로깅 :

rsync --log-file=/tmp/rsync-status.txt  src dst

그런 다음 실시간으로 로그를 따르십시오.

 tail -f /tmp/rsync-status.txt

0

또 다른 방법은 동기화 할 대략적인 디렉토리를 알고 있다면 (예를 들어, 우리는 'movies'디렉토리를 사용할 것입니다) lsof와 grep의 조합을 사용할 수 있습니다.

lsof | grep rsync | grep 영화

lsof는 열려있는 파일을 나열하고, rsync에 의해 열린 파일을 찾기 위해 grep에 출력을 파이프하고, 열려있는 디렉토리 / 파일을 찾기 위해 grep에 출력하는 파이프입니다.


0

랄리 이스트 반이 제안, 나는 실행하고

rsync -ravz /Users/jkirby/Music/iTunes/* .

다음과 같은 출력을 제공합니다

Jeffs-MBP-2:2016-08-15 jkirby$ rsync -ravz /Users/jkirby/Music/iTunes/* .
building file list ... done
Temp File 1.tmp
Temp File.tmp

그 출력에서 ​​어떤 디렉토리가 복사되고 있는지 알 수 있습니다.

rsync많은 큰 파일을 천천히 복사하는 경우에는 watch그렇게 사용하여 해당 디렉토리를 모니터링합니다 . 이렇게하면 rsync생성 된 임시 파일을 볼 수 있으며 현재 복사중인 파일의 크기가 커지는 것을 볼 수 있습니다.

watch -n1 "~/Music/iTunes"

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.