Я использую следующий оператор cron для резервного копирования из одной папки в другую папку на том же компьютере:
19 21 * * * root rsync -ac --delete /source/folder /dest/folder
Когда я использую pstree
, Я вижу, что cron разветвил три процесса
├─cron───cron───rsync───rsync───rsync
И ps
9972 ? Ds 1:00 rsync -ac --delete /source/folder /dest/folder
9973 ? S 0:29 rsync -ac --delete /source/folder /dest/folder
9974 ? S 0:09 rsync -ac --delete /source/folder /dest/folder
Почему три процесса? Могу ли я ограничиться только одним?
http://rsync.samba.org/how-rsync-works.html
Rsync сильно конвейерен. Это означает, что это набор процессов, которые взаимодействуют (в основном) однонаправленным образом. После того, как список файлов был опубликован, конвейер ведет себя следующим образом:
генератор → отправитель → получательВыходной сигнал генератора является входом для отправителя, а выходной сигнал отправителя является входом для получателя. Каждый процесс выполняется независимо и задерживается только при остановке конвейеров, ожидании дискового ввода-вывода или ресурсов ЦП.
Вы запускаете локальный rsync (источник и место назначения - локальная файловая система), поэтому все три процесса будут работать там.
Вы ничего не можете сделать, это сделано специально.