Linux Crontab redno izvaja ukaze skriptnih nalog in nastavlja uporabo konfiguracijske datoteke

Vgrajeni proces cron v Linuxu nam lahko pomaga doseči naše potrebe po izvajanju načrtovanih opravil. Z uporabo skriptov cron in lupine lahko preprosto izvedemo zelo zapletene ukaze opravil po urniku.

Kaj je Cron?

Pogosto uporabljamo ukaz crontab , kar je okrajšava za cron table.

To je konfiguracijska datoteka za cron, ki se lahko imenuje tudi seznam opravil.

Ustrezne konfiguracijske datoteke lahko najdemo v naslednjih mapah.

  • V imeniku /var/spool/cron/ so shranjena opravila crontab za vsakega uporabnika, vključno s korenom, in vsako opravilo je poimenovano po ustvarjalcu
  • /etc/crontab Ta datoteka je odgovorna za načrtovanje različnih administrativnih in vzdrževalnih nalog.
  • /etc/cron.d/ Ta imenik se uporablja za shranjevanje datotek crontab ali skriptov, ki jih je treba izvesti.
  • Skripte lahko postavimo tudi v /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly, /etc/cron.monthly, naj se izvede vsako uro/dan/teden, mesec.

Kako se zdravilo Crontab uporablja?

Naši običajno uporabljeni ukazi so naslednji:

crontab [-u username]    //省略用户名表示操作当前用户的crontab
    -e      (编辑工作表)
    -l      (列出工作表里的命令)
    -r      (删除工作表)

uporabljamocrontab -eVnesite urejanje delovnega lista trenutnega uporabnika, ki je običajen vmesnik vim.Vsaka vrstica je ukaz.

Uredi delovni list▼

crontab -e

Seznam delovnih listov▼

crontab -l

Izbriši delovni list ▼

crontab -r 

Ukazi crontab so strukturirani kot čas + dejanje. Časovne možnosti vključujejo minute, ure, dan, mesec in petek. Operatorji vključujejo ...

  • * vse številke v območju
  • / koliko številk
  • - od X do Z
  • ,hash številke

Primer ukaza za izvedbo načrtovanega opravila Crontab

Linux Crontab izvaja načrtovane ukaze opravil in nastavi uporabo konfiguracijske datoteke

Primer 1: Izvedite myCommand vsako 1 minuto

* * * * * myCommand

Primer 2: Izvedba 3. in 15. minute vsake ure

3,15 * * * * myCommand

实例3:在上午8点到11点的第3和第15分钟执行

3,15 8-11 * * * myCommand

实例4:每隔两天的上午8点到11点的第3和第15分钟执行

3,15 8-11 */2  *  * myCommand

实例5:每周一上午8点到11点的第3和第15分钟执行

3,15 8-11 * * 1 myCommand

Primer 6: Ponovno zaženite smb ob 21 vsak večer

30 21 * * * /etc/init.d/smb restart

实例7:每月1、10、22日的4 : 45重启smb

45 4 1,10,22 * * /etc/init.d/smb restart

Primer 8: Ponovno zaženite smb ob 1:10 vsako soboto in nedeljo

10 1 * * 6,0 /etc/init.d/smb restart

Primer 9: Znova zaženite smb vsakih 18 minut med 00:23 in 00:30 vsak dan

0,30 18-23 * * * /etc/init.d/smb restart

Primer 10: Ponovno zaženite smb vsako soboto ob 11

0 23 * * 6 /etc/init.d/smb restart

Primer 11: Znova zaženite smb vsako uro

* */1 * * * /etc/init.d/smb restart

Primer 12: Znova zaženite smb vsako uro med 11 in 7

* 23-7/1 * * * /etc/init.d/smb restart

Kako izbrisati določeno nalogo Crontab?

SSH vnesite naslednji ukaz crontab ▼

crontab -e
  • Ob predpostavki več opravil izbrišite določeno načrtovano opravilo v vim (premaknite kazalec na konfiguracijsko vrstico, ki jo želite izbrisati, pritisnite tipko za brisanje za brisanje)

pritisnite :wq shrani in zapusti

Preverite, ali je bila naloga Crontab izbrisana?

crontab -l
  • Ugotovljeno je, da načrtovano opravilo crontab, ki je bilo pravkar izbrisano, ne obstaja, kar pomeni, da je brisanje uspešno.

Kako znova zagnati storitev Cron?

Uporaba ukazov za upravljanje sistemskih storitev : V nekaterih primerih boste morda morali za ponovni zagon storitve cron neposredno uporabiti ukaze za upravljanje sistemskih storitev.

Predvsem pri dodajanju ali spreminjanju načrtovanih opravil Cron v HestiaCP je treba storitev Cron znova zagnati, da spremembe začnejo veljati.

To običajno vključuje enega od naslednjih ukazov:

  • Za uporabo systemd Sistem:

    sudo systemctl restart cron
    
  • Za uporabo init.d Skripta za stare sisteme:

    sudo /etc/init.d/cron restart
    
  • Za uporabo service Komandni sistem:

    sudo service cron restart
    

Nadzorna plošča CWPKako nastaviti Crontab načrtovana opravila

  • V načrtovani nalogi dodajte sinhronizacijski ukaz za samodejno sinhronizacijo varnostnih kopij nadzorne plošče CWP z GDrive.

Če uporabljate nadzorno ploščo CWP, se prijavite v nadzorno ploščo CWP的 Server Setting → Crontab for root ▼

Kako nastaviti časovno razporejena opravila Crontab za samodejno sinhronizacijo z GDrive na nadzorni plošči CWP?

V »Add Full Custom Cron Jobs« vnesite naslednji popolnoma prilagojeni ukaz cron ▼

00 7 * * * rclone sync /backup2 gdrive:cwp-backup2
55 7 * * * rclone sync /newbackup gdrive:cwp-newbackup
  • (Samodejno sinhroniziraj lokalni imenik vsako jutro ob 7 /backup2na omrežni disk s konfiguracijskim imenom gdrivebackup2Kazalo)
  • (Samodejno sinhroniziraj lokalni imenik vsako jutro ob 7 /newbackup  na omrežni disk s konfiguracijskim imenom gdrivecwp-newbackupKazalo)
  • SinhronizirajWordPressZa datoteke spletnih mest je priporočljivo, da varnostno kopiranje ne poteka postopno, ker je test ugotovil, da če so imena datotek enaka, vendar je vsebina datotek drugačna, te ne bodo sinhronizirane.

Ker lahko proces rclone še naprej teče v ozadju po načrtovanem začetku samodejne sinhronizacije, lahko porabi do 20 % virov procesorja, kar povzroči izgubo virov strežnika.

Zato je treba dodati popolnoma prilagojen ukaz za načrtovano opravilo, da se postopek rclone prisili k zaprtju ▼

00 09 * * * killall rclone
  • (Samodejno prisilno zaprite proces rclone ob 7:00 vsako jutro)

Če nadzorna plošča CWP ne more urejati načrtovanih opravil Crontab, lahko uporabite FTP软件odpreti datoteko /var/spool/cron/ Neposredno urejajte časovno razporejena opravila Crontab.

Kako uporabiti rclone za varnostno kopiranje VPS-ja? Za ogled vadnice za CentOS o samodejni sinhronizaciji z uporabo GDrive kliknite spodnjo povezavo ▼

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

Pomaknite se na vrh