Контролюйте / спостерігайте за запуском процесу rsync


22

У мене є робота rsync, яка була додана в crontab, і коли вона працює, я можу лише перевірити наявність rsync PID і підтвердити htop, що вона з'їдає n кількість процесора та оперативної пам'яті.

Що я хотів би зробити, це контролювати, які файли насправді rsync'ed в режимі реального часу ... коли я хочу. FYI Я не передав жодної багатослівної опції в команду, і не додав журналів. Я дійсно просто хочу перевірити, що робиться rsync'ed на вимогу.

Будь-яка ідея, як я міг цього досягти?

Відповіді:


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

це дозволить вам знову долучитись до завдання rsyncb будь-коли, коли ви хочете перевірити, які файли обробляють його в даний час (просто не забудьте бути тим самим користувачем, як і той, що запустив завдання rsync) за допомогою

screen -x

За допомогою журналу додайте журнал до вашої роботи rsync:

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

потім слідкуйте за журналом у режимі реального часу за допомогою:

 tail -f /tmp/rsync-status.txt

0

Інший спосіб, який ви можете зробити, це якщо ви знаєте грубу папку, яку ви будете синхронізувати (тобто ми будемо використовувати, наприклад, каталог «фільми»), ви можете використовувати комбінацію lsof та grep:

lsof | греп rsync | греп-фільми

lsof перелічить ваші відкриті файли, передає вихід на grep, щоб знайти будь-які відкриті rsync, труби, які виводять в 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"

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.