Puncte:0

Cum aflăm unde este programată rsync-ul și cum îl putem reprograma?

drapel cn

Cum aflăm unde este programată rsync-ul? Am un rsync care se face de la serverul A la serverul B și trebuie să găsesc pe serverul A unde este apelat rsync și unde și cum este programat. Există un fișier pentru asta în care configurațiile sunt setate ca pentru cronjobs? Am câteva probleme de performanță pe serverul B și trebuie să reprogramez rsync-ul astfel încât să se întâmple numai în afara orelor de vârf.

drapel in
Probabil că aș începe cu ceva simplu, cum ar fi `grep 'rsync' -R /etc /var/spool/cron /var/log`. Presupunând că jobul sau scriptul conține numele „rsync” care probabil va găsi fie intrarea cron log, fie crontab, sau poate un script. Dacă știți când pornește, ați putea să vă uitați la jurnalele dvs. și să vedeți cron care rulează sarcina, presupunând că cron o execută.
Puncte:2
drapel pt

Din păcate, rsync nu se înregistrează automat undeva de fiecare dată când este utilizat. Va fi necesară o muncă de detectiv.

Un pariu bun este că rsync este rulat de la „cron” undeva. (cron este un sistem care rulează periodic o linie de comandă sau un script. De exemplu, am un job cron orar care actualizează o bază de date și un job cron zilnic care rulează scripturile mele de rezervă.)

Cron (de fapt crond) păstrează un jurnal al tuturor comenzilor („locuri”) în care rulează /var/log/cron. (Unele sisteme Unix/Linux o pun într-un loc diferit. Verificați pagina de manual.) Puteți pisică acel fișier pentru a-l examina (este un fișier text.)

Configurația lui Cron este stocată în /etc sau /var/spool/cron sau ambele, în funcție de sistemul dumneavoastră Unix/Linux. Pagina de manual va ajuta, la fel ca și a face ceva de genul

găsiți /etc /var -name '*cron*'

Puteți căuta rsync în acele fișiere făcând ceva de genul:

grep rsync -R /etc /var/spool/cron

Cu toate acestea, jobul cron ar putea apela un script care apelează rsync. Este posibil ca numele scriptului să nu includă literele „rsync”. Poate fi numită „copie de rezervă” sau „actualizare” sau poate este numită după sistemul din care sunt transferate sau extrase datele.

Dacă sistemul dumneavoastră folosește „systemd”, există șansa ca acesta să fie rulat de acolo. Verificați acele configurații prin greping /etc recursiv.

Dacă nimic din toate acestea nu funcționează, există două lucruri pe care le puteți face în „modul disperare”.

  1. Scoateți rsync comandă pentru a forța copierea de rezervă să eșueze. Mesajul de eroare poate apărea în e-mail (cron trimite e-mail proprietarului jobului când ceva nu merge bine) sau în syslog. Ai putea doar să faci:
mv /usr/bin/rsync /usr/bin/rsync.NOT
# așteptați puțin, vedeți ce se întâmplă.

# Reveniți modificarea
mv /usr/bin/rsync.NU /usr/bin/rsync
  1. Înlocuiți rsync cu un script wrapper care înregistrează ceea ce face, apoi apelează rsync-ul real.

Creați un fișier numit /usr/bin/rsync.wrapper care contine:

#!/bin/sh
echo „$@” >>/var/tmp/my.rsync.log
pwd >>/var/tmp/my.rsync.log
exec /usr/bin/rsync.REAL „$@”

Acum instalați ambalajul:

atingeți /var/tmp/my.rsync.log
chmod a+w /var/tmp/my.rsync.log
chmod a+rx /usr/bin/rsync.wrapper
mv /usr/bin/rsync /usr/bin/rsync.REAL
ln -s /usr/bin/rsync.wrapper /usr/bin/rsync

Când ați terminat, anulați aceste modificări cu

rm /usr/bin/rsync
mv /usr/bin/rsync.REAL /usr/bin/rsync

FYI: Nu recomand aceste ultime 2 idei (eliminarea rsync, folosind un wrapper). Sunt periculoase și ar putea să vă deranjeze sistemul. Cu toate acestea, dacă toate celelalte nu reușesc, soluția de ambalare ar trebui să fie cea mai bună!

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.