Cron & crontab, განმარტა

ლუკაინი საზოგადოებრივი ცოტა ხნის წინ შესანიშნავი სახელმძღვანელო cron- სა და crontab- ზე რომ ვფიქრობ ღირს გაზიარება. Cron არის ერთგვარი ექვივალენტი Windows- ში დაგეგმილი ამოცანებისა, მხოლოდ ის ტერმინალიდან მუშავდება. მათ, ვისაც ვიზუალური ინტერფეისი ურჩევნია იგივე მიზნის მისაღწევად, ამის დანახვა შეუძლიათ სხვა ნივთი.

რა არის cron?

სახელი cron მომდინარეობს ბერძნული ქრონოსიდან, რაც ნიშნავს "დროს". Unix ოპერაციულ სისტემაში cron არის რეგულარული ფონის პროცესის მენეჯერი (daemon), რომელიც აწარმოებს პროცესებს ან სკრიპტებს რეგულარული ინტერვალებით (მაგალითად, ყოველ წუთს, დღეს, კვირაში ან თვეში). პროცესები, რომლებიც უნდა შესრულდეს და მათი შესრულების დრო მითითებულია crontab ფაილში.

როგორ მუშაობს

Cron daemon იწყება / და ა.შ. / rc.d/ o / და ა.შ. / in.d. განაწილებაზეა დამოკიდებული. Cron გადის უკანა პლანზე, ყოველ წუთს ამოწმებს crontab დავალების ცხრილს / etc / crontab o en / var / spool / cron შესასრულებელი ამოცანების ძიებაში. როგორც მომხმარებელი, ჩვენ შეგვიძლია cron- ში დავამატოთ ბრძანებები ან სკრიპტები ამოცანებით, რომ ავტომატიზირდეს ზოგიერთი პროცესი. ეს გამოსადეგია, მაგალითად, სისტემის ან კარგი სარეზერვო სისტემის განახლების ავტომატიზირებისთვის.

დაკავშირებული სტატია:
სახელმძღვანელო: დააინსტალირეთ .tar.gz და .tar.bz2 პაკეტები

რა არის კრონტაბი?

Crontab არის მარტივი ტექსტური ფაილი, რომელიც ინახავს ბრძანებების ჩამონათვალს, რომლებიც უნდა შესრულდეს მომხმარებლის მიერ მითითებულ დროს. Crontab გადაამოწმებს სკრიპტის ან ბრძანების შესრულების თარიღსა და დროს, შესრულების ნებართვებს და ამას გააკეთებს ფონზე. თითოეულ მომხმარებელს შეიძლება ჰქონდეს საკუთარი crontab ფაილი, სინამდვილეში / etc / crontab ითვლება, რომ ეს არის root მომხმარებლის crontab ფაილი, როდესაც ჩვეულებრივ მომხმარებლებს (და კიდევ root) სურთ შექმნან საკუთარი crontab ფაილი, ჩვენ გამოვიყენებთ crontab ბრძანებას.

Crontab არის cron ამოცანების მართვის უმარტივესი გზა მრავალ მომხმარებელთა სისტემებზე, როგორც მარტივი სისტემის მომხმარებელი, ასევე root მომხმარებელი.

Crontab– ის გამოყენება

ჩვენ ვიწყებთ უბრალო მაგალითს.

ჩვენ ვაპირებთ ავტომატიზირებას სისტემის განახლება, აღმოფხვრას შემაშფოთებელი "მე ყოველთვის უნდა განახლება და მე არ მომწონს ეს!"

როგორ უნდა
დაკავშირებული სტატია:
ბრძანებებს სისტემის ცოდნის შესახებ (იდენტიფიცირება აპარატურა და პროგრამული უზრუნველყოფის ზოგიერთი კონფიგურაცია)

უპირველეს ყოვლისა ჩვენ გავაკეთებთ სცენარს. ამ სკრიპტს დაარქმევს cron და შეიცავს ყველა ინსტრუქციას, რომლის გაკეთებაც გვინდა, ამიტომ აუცილებელია მისი ტესტირება რამდენიმე შემთხვევაში და რამდენიმე გზით, სანამ ჩასვით cron- ში, მარტივი განახლების სკრიპტი, როგორიცაა ეს:

#! / bin / bash #script განახლების მაგალითი # აირჩიეთ დისტრიბუცია # debian-ubuntu # apt-get update & apt-get -y განახლება #fedora #yum -y განახლება # Arch #pacman --noconfirm -Syu

წაშალეთ # თქვენი დისტროს ხაზიდან. იმ შემთხვევაში, თუ ეს Ubuntu / Debian იქნება, ეს იწყება apt-get- ით.

ჩვენ ვინახავთ სკრიპტს, როგორც update.sh (მაგ. სკრიპტების დირექტორია თქვენს სახლში). ჩვენ ვცვლით აღნიშნულ სკრიპტის შესრულების ნებართვებს:

chmod a + x ~ / სკრიპტები / განახლება.შ

ჩვენ სკრიპტს რამდენჯერმე ვატარებთ იმის დასადასტურებლად, რომ ყველაფერი მშვენივრად მუშაობს, ჩვენ ვცვლით საჭიროს (ის არ უნდა შეიცავდეს შეცდომებს, წინააღმდეგ შემთხვევაში cron მხოლოდ იმეორებს შეცდომას განმეორებით). ახლა დაამატეთ ამოცანა ჩვენს crontab- ს.

დაამატეთ ამოცანები crontab- ს

ჩვენ ვასრულებთ crontab– ის გამოცემას crontab –e– ით, ზოგიერთ დისტროში (მაგალითად, Ubuntu) ის საშუალებას გვაძლევს ავირჩიოთ ჩვენთვის სასურველი ტექსტური რედაქტორი, დანარჩენს კი VI. Crontab ფაილი ასე გამოიყურება.

# mh მთავარი მომხმარებლის ბრძანება

სადაც:

  • m შეესაბამება იმ წუთს, როდესაც სკრიპტი შესრულდება, მნიშვნელობა მერყეობს 0-დან 59-მდე
  • h ზუსტი დრო, 24 – საათიანი ფორმატის დამუშავება ხდება, მნიშვნელობები 0 – დან 23 – მდეა, ხოლო 0 არის შუაღამის 12:00 საათი.
  • საჩუქარი ეხება თვის დღეს, მაგალითად, შეგიძლიათ მიუთითოთ 15, თუ გსურთ აწარმოოთ ყოველ 15 დღეში
  • dow ნიშნავს კვირის დღეს, ეს შეიძლება იყოს რიცხვითი (0-დან 7-მდე, სადაც 0 და 7 კვირაა) ან დღის პირველი 3 ასო ინგლისურად: mon, tue, wed, thu, fri, sat, sun.
  • მომხმარებელი განსაზღვრავს მომხმარებელს, რომელიც შეასრულებს ბრძანებას, ის შეიძლება იყოს root, ან სხვა მომხმარებელი, სანამ მათ აქვთ სკრიპტის შესრულების უფლებები.
  • ბრძანება ეხება განსახორციელებელი სკრიპტის ბრძანებას ან აბსოლუტურ გზას, მაგალითად: /home/usuario/scriptts/actualizar.sh, თუ ის სკრიპტს იძახებს, ის უნდა შესრულდეს

გარკვევა cron ამოცანების რამდენიმე მაგალითზე:

15 10 * * * მომხმარებელი /home/user/scripts/update.sh

ის განახორციელებს update.sh სკრიპტს ყოველდღე დილის 10:15 საათზე

15 22 * * * მომხმარებელი /home/user/scripts/update.sh

ის განახორციელებს update.sh სკრიპტს ყოველდღე 10:15 საათზე

00 10 * * 0 root apt-get -y განახლება Root მომხმარებელი

ის განახლდება ყოველ კვირას, დილის 10:00 საათზე

45 10 * * sun root apt-get -y განახლება

Root მომხმარებელი განახლებას განახორციელებს ყოველ კვირას (მზე) დილის 10:45 საათზე

30 7 20 11 * მომხმარებელი /home/usuario/scripts/update.sh

20 ნოემბერს 7:30 საათზე მომხმარებელი გაუშვებს სკრიპტს

30 7 11 11 მზის მომხმარებელი /home/usuario/scripts/pastel_con_velitas.sh

11 ნოემბერს დილის 7:30 საათზე და ეს არის კვირა, მომხმარებელი აღნიშნავს თავის syadadmin- ს (ეს მე ვარ)

01 * * * * მომხმარებელი / home / usuario/scripts/molestorecordatorio.sh

შემაშფოთებელი შეხსენება ყოველდღე ყოველ საათში ყოველ წუთში (არ არის რეკომენდებული).

მათი მოგვარება მაინც შეიძლება სპეციალური დიაპაზონი:

30 * * * 17

შუადღის 5:30 საათზე ყოველდღე ორშაბათიდან პარასკევის ჩათვლით.

00 12 1,15,28 * *

ყოველი თვის პირველი, მეთხუთმეტე და 12-ე დღის 28 საათზე (იდეალურია ხელფასისთვის)

თუ ეს დამაბნეველია, crontab ამუშავებს სპეციალური სიმები ამ დიაპაზონის დასადგენად.

@reboot გაუშვით ერთხელ, გაშვებისას
@ ადრეული აწარმოებს მხოლოდ წელიწადში ერთხელ: 0 0 1 1 *
@ ყოველწლიურად იგივე, რაც @yearly
@ ყოველთვიურად გადის თვეში ერთხელ, პირველ დღეს: 0 0 1 * *
@ ყოველკვირეულად ყოველკვირეულად კვირის პირველი საათის პირველი წუთი. 0 0 * * 0.
ყოველდღე ყოველდღიურად, 12:00 საათზე. 0 0 * * *
@ შუაღამე იგივეა, რაც @daily
@ საათში ყოველ საათში პირველ საათზე: 0 * * * *

მისი გამოყენება ძალიან მარტივია.

@ საათობრივი მომხმარებელი /home/user/scripts/molestorecordatorio.sh @ ყოველთვიური მომხმარებელი /home/user/scripts/backup.sh @ ყოველდღიური root apt-get განახლება && apt-get -y განახლება

ბოლო, მაგრამ არანაკლებ მნიშვნელოვანი:

Cron სამუშაოს მენეჯმენტი

crontab ფაილი

შეცვალეთ არსებული crontab ფაილი მომხმარებლის მიერ განსაზღვრული ფაილით

crontab -e

შეცვალეთ მომხმარებლის crontab ფაილი, თითოეული ახალი სტრიქონი იქნება ახალი crontab ამოცანა.

crontab -l

ჩამოთვალეთ მომხმარებლის crontab ყველა ამოცანა

კრონტაბი -დ

მომხმარებლის crontab წაშლა

crontab -c რეჟ

განსაზღვრავს მომხმარებლის crontab დირექტორიას (ამას უნდა ჰქონდეს მომხმარებლის დაწერის და შესრულების უფლებები)

crontab -u მომხმარებელი

პრეფიქსი, რომ გაუმკლავდეს სხვა მომხმარებლის crontab, მაგალითები:

$ sudo crontab -l -u root $ sudo crontab -e user2 #crontab -d -u მომხმარებელი

ეს ინსტრუმენტი, ისევე როგორც მრავალი სხვა, უფრო ღრმად და უფრო დეტალურად ჩანს შემდეგში:

მადლობა ლუკაინ!

სტატიის შინაარსი იცავს ჩვენს პრინციპებს სარედაქციო ეთიკა. შეცდომის შესატყობინებლად დააჭირეთ ღილაკს აქ.

48 კომენტარი დატოვე შენი

დატოვე კომენტარი

თქვენი ელფოსტის მისამართი გამოქვეყნებული არ იყო. აუცილებელი ველები აღნიშნულია *

*

*

  1. მონაცემებზე პასუხისმგებელი: მიგელ ანგელ გატონი
  2. მონაცემთა მიზანი: სპამის კონტროლი, კომენტარების მართვა.
  3. ლეგიტიმაცია: თქვენი თანხმობა
  4. მონაცემთა კომუნიკაცია: მონაცემები არ გადაეცემა მესამე პირებს, გარდა სამართლებრივი ვალდებულებისა.
  5. მონაცემთა შენახვა: მონაცემთა ბაზა, რომელსაც უმასპინძლა Occentus Networks (EU)
  6. უფლებები: ნებისმიერ დროს შეგიძლიათ შეზღუდოთ, აღადგინოთ და წაშალოთ თქვენი ინფორმაცია.

  1.   ალვარო ორტიზი დიჯო

    უჰ ... ცოტა გაუგებარია.

  2.   მატონიზირებელი დიჯო

    * / 30 აკლია (წუთების ველში), რომელიც გადის ყოველ 30 წუთში ...

    1.    erm3nda დიჯო

      ამის გაკეთებას ვაპირებდი კომენტარის გაკეთებამდე, სანამ არ გადავწყვიტე კომენტარების გადახედვა
      ეს მოდიფიკატორი არის ძალიან მნიშვნელოვანი ინფორმაცია და ძალიან სასარგებლო.

      1.    კიკა დიჯო

        Hello!
        ახლა მე ვცდილობ კონფიგურაციას ყოველ 45 წუთში ერთხელ.

        * / 45 * * * * და ინსტრუქცია შესრულებულია ყოველ საათში 45 წუთზე და ყოველ საათში. ეს არის იმის თქმა:

        ის მუშაობს 3:45, შემდეგ 4:00, 4:45, შემდეგ 5:00, 5:45, 6:00, 6:45 და ა.შ.

        რაღაც მაქვს არასწორად? რისი გაკეთება შემიძლია მხოლოდ 45 წუთში ერთხელ, ან ერთხელ მაინც 45 საათში ერთხელ ყოველ საათში.

    2.    კიკა დიჯო

      Hello!
      ახლა მე ვცდილობ კონფიგურაციას ყოველ 45 წუთში ერთხელ.

      * / 45 * * * * და ინსტრუქცია შესრულებულია ყოველ საათში 45 წუთზე და ყოველ საათში. ეს არის იმის თქმა:

      ის მუშაობს 3:45, შემდეგ 4:00, 4:45, შემდეგ 5:00, 5:45, 6:00, 6:45 და ა.შ.

      რაღაც მაქვს არასწორად? რისი გაკეთება შემიძლია მხოლოდ 45 წუთში ერთხელ, ან ერთხელ მაინც 45 საათში ერთხელ ყოველ საათში.

  3.   Slack დიჯო

    გამარჯობა, სუპერ სასარგებლო ინფორმაცია იმის გასარკვევად, თუ როგორ მუშაობს cron.
    bytes

  4.   Slack დიჯო

    ამისთვის *

  5.   მონადირე დიჯო

    შესანიშნავია, მადლობა იმის გასარკვევად, თუ როგორ მუშაობს cron .. მოდით, ცოტა ხელი დავაჭიროთ

  6.   იაკობ დიჯო

    როგორც მე მესმის, ეს სტრიქონი შესრულდება საღამოს 10:15 საათზე, შეასწორეთ, თუ ვცდები
    კარგად, იქ ნათქვამია დილის 10:15 საათზე
    15 22 * * * მომხმარებელი /home/user/scripts/update.sh

  7.   აგუსტინი დიჯო

    გამარჯობა! ძალიან კარგი ინფორმაცია.
    სკრიპტის შესასრულებლად ყოველ ნახევარ საათში, სტრიქონი, რომელიც უნდა დაემატოს CronTab, იქნება: "30 * * * * root Scrip.sh" სწორია? Დიდი მადლობა!

  8.   მოდით გამოვიყენოთ linux დიჯო

    არა. თუ სწორად მახსოვს, ამისთვის უნდა დააყენოთ / 30 * * * * root Scrip.sh.
    ანუ დაამატეთ / 30-მდე.
    Გაუმარჯოს! პავლე

  9.   ჯონათან დიჯო

    გამარჯობა მომეწონა თქვენი პოსტი, ძალიან დასრულებულია მაგრამ მინდოდა რამე მეკითხა.
    ამ ბრძანებასთან დაკავშირებით პრობლემები მაქვს და ისიც, როგორიცაა "at".

    მსურს გარკვეულ დროს გავაწარმოო სკრიპტი და დავსვა

    –f /home/mi_user/Desk/script.sh 18:08 მაგალითზე

    და სკრიპტი არ არის შესრულებული ეკრანზე, ანუ ტერმინალში, იგი შესრულებულია უკანა პლანზე?

    და cron- ით იგივე მემართება, მე ვამუშავებ crontab ფაილს "crontab -e" - ით

    დასასრულს მე დავამატებ ამ სტრიქონს:

    46 19 my_user /home/mi_user/Desk/script.sh

    და ის არაფერს აკეთებს, ის არ აჩვენებს სცენარს.

    რაიმე შემოთავაზება გაქვთ? დიდი მადლობა და ბოდიშს გიხდით შეფერხებისთვის

    1.    მოდით გამოვიყენოთ linux დიჯო

      ტერმინალის გამოჩენისთვის შეიძლება დაგჭირდეთ ტერმინალის გაშვება და სკრიპტის პარამეტრად გადაცემა.

      მაგალითად:

      lxterminal -e "my_user /home/my_user/Desk/script.sh"

      გამოსაყენებელი პარამეტრი შეიძლება განსხვავდებოდეს თქვენს მიერ გამოყენებული ტერმინალის ემულატორის საფუძველზე.

      ვიმედოვნებ, რომ მუშაობს.

      ჩახუტება! პავლე

  10.   პატრეტკები დიჯო

    წვლილი შეაფასა.

    10 ქულა !!

    სალუ 2 !!

  11.   Rodolfo დიჯო

    დიდი მადლობა, ეს ძალიან დამეხმარა გარკვეულ საკითხებში გარკვევაში, დიდი მადლობა, დამატებითი ინფორმაციისთვის ან კითხვებისთვის გადავდივარ MAN PAGE- ზე, კიდევ ერთხელ ვიმეორებ მისალმებებს.

  12.   ჯაჰირი დიჯო

    ძია დიდი მადლობა, მე ვკითხულობ და ვამოწმებ მაგალითებს. დიდი მადლობა ... ძალიან გასაგებია. Გაუმარჯოს

  13.   ჯოვანი დიჯო

    მე გამოვიყენე ubuntu Server 12.04.2 LTS და crontab ის ვერსია, რომელიც მე მაქვს, მომხმარებლის სამუშაოების სიის წასაშლელად გამოიყენება crontab -r (და -l, როგორც ამ სახელმძღვანელოში წერია). რა თქმა უნდა, ეს ვერსიების საკითხია.

    მეორეს მხრივ, მე მხოლოდ crontab- ს ვაწარმოებდი და ამ ტიპის ნება მიბოძეთ შემექმნა ჩემი საკუთარი სააღსრულებო ფაილი, მაგრამ ეს არ იყო ის, ვისაც ასრულებდნენ. ის, რაც მუშაობს, არის / etc / crontab- ში. იქნებ ვინმე გამოიყენოს კომენტარი.

    PS (მე ვიპოვნე ლოკალიზაციის და სადაც crontab– ით, მაგრამ მან მხოლოდ დამიბრუნა ზემოხსენებული მისამართი და დაშიფრული სხვა ფაილი, ასე რომ, თუ ის, ვინც შესრულდა იყო ის / etc / crontab, მაგრამ crontab –e ბრძანების შესრულებისას, ჩემი გამოჩნდა ყველა იმ ვაკანსიით, რაც მე მქონდა განსაზღვრული) სად ინახებოდა ეს ფაილი '???? პატივისცემით. მე ყოველთვის შედიხართ root- ით.

  14.   სებასტიან დიჯო

    შესანიშნავი, ძალიან სასარგებლო !!!

  15.   mmm დიჯო

    გამარჯობა, მე მსურს ამის გაკეთება «15 10 * * * root ifdown eth0»

    ეს არის იმის თქმა, რომ გარკვეულ დროს ქსელის ბარათი გამორთულია ………… კარგად, მე ჩავდე crontab- ში და არ იმუშავა …… .. რა ხდება?

    მივესალმები და მადლობა

  16.   მიგელ დიჯო

    თქვენ გამოტოვეთ "mon" - ის განსაზღვრა სათაურის შემდეგ "დაამატეთ ამოცანები crontab- ს"

    სტატია ჯერ კიდევ კარგია, cron ძალიან სასარგებლო.

  17.   ოსკარი დიჯო

    რა მაგარი იყო ეს კარგი პოსტი, მკითხე
    თუ მსურს დავაკვირდე დავალებების შესრულების შედეგად დატოვებულ ჩანაწერებს, სად ვნახო ეს?

    უნდა გადავწყვიტო, რომ მსურს ამ ფაილის წარსულში განხორციელებული მოქმედებების ისტორია და ვნახო ვინ შეცვალა იგი და თარიღი

    gracias

  18.   oscar დიჯო

    მე მინდა შეამოწმო ამის ცვლილებების ისტორია

    როგორ შემიძლია ამის გაკეთება

    gracias

  19.   ანდრეს ლედო დიჯო

    დილა მშვიდობისა,

    მე ვფიქრობ, რომ ubuntu სკრიპტში თქვენ შეცდომა დაუშვით, თქვენ დააყენეთ ap-get -y განახლება apt-get -y განახლების ნაცვლად. (თქვენ t დატოვეთ).

    მისალოცი.

    1.    მოდით გამოვიყენოთ linux დიჯო

      ასეც არის. Გმადლობთ!
      ჩახუტება! პავლე

  20.   გაბრიელ დიჯო

    მსურს ვიცოდე როგორ უნდა შექმნათ cron ფაილი, რომ შევძლოთ განვსაზღვროთ თითოეული დრო შესრულების დროს, დირექტორია და ა.შ.

  21.   ვალენტინ დიჯო

    მადლობა ოპერაციის გარკვევისა და cron– ის ძირითადი ბრძანებებისათვის, ახლა ცოტათი გაერთეთ.

  22.   Sander დიჯო

    ყოველთვის, როდესაც ვეძებ ინფორმაციას Gnu / Linux– სთან დაკავშირებულ ნებისმიერ თემაზე, მე ვათვალიერებ და ვცდილობ 90% შემთხვევაში ვიპოვო საუკეთესო სახელმძღვანელო ამ დიდ საზოგადოებაში, ვფიქრობ, რომ ახლა დავიწყებ აქ და შემდეგ სხვაგან.

    დაკავშირებით

    1.    მოდით გამოვიყენოთ linux დიჯო

      მადლობა სანდერ! Ჩახუტება! პავლე

  23.   დარიო დიჯო

    dom = თვის დღე
    dow = კვირის დღე
    უფრო ადვილია, თუ ასოცირდება

  24.   პასკუალი დიჯო

    დიდი მადლობა, ძალიან სრული და კარგად ახსნილი.

  25.   მაქსილია დიჯო

    ეს იგივეა, რაც ოპერაციული სისტემების მასწავლებელმა მოგვცა, მე არაფერს ვცვლი, ახლა ვხედავ, რატომ არის კლასი ასე ცუდი .-.

  26.   Marcelo დიჯო

    დადგენილია,

    მოთხოვნა, შეიძლება ამოცანის ხანგრძლივობა შეიზღუდოს?
    მაგალითად, მე მაქვს დავალება, რომელიც მეორდება 5 წუთში ერთხელ, გამეორების შემთხვევაში, თუ ეს დავალება ისევ აქტიურია, მოკალით ის და ისევ გაუშვით.

    მადლობა,
    მარსელო .-

    1.    მოდით გამოვიყენოთ linux დიჯო

      გამარჯობა, მარსელო!

      ვფიქრობ, უკეთესი იქნება, თუ ამ კითხვას დააყენებთ ჩვენს კითხვაზე პასუხის გაცემაში ჰკითხეთ FromLinux- ს ისე, რომ მთელი საზოგადოება დაგეხმარებათ თქვენი პრობლემის მოგვარებაში.

      ჩახუტება, პაბლო.

  27.   aj დიჯო

    კარგი პოსტი
    რა არის ბრძანება ტერმინალზე, რომ დაამატოთ ამოცანები crontab- ს (crontab- ში შესვლის გარეშე და მათ ხელით დაამატოთ 'crontab -e' ან შეცვალონ crontab სხვა crontab- ით 'crontab ფაილი').
    იდეა არის შექმნათ გარე სკრიპტი, რომ დაამატოთ ამოცანები crontab- ს
    მადლობა

    1.    david დიჯო

      მეჩვენება, რომ შეგიძიათ გამოიყენოთ "ექო", რისი დამატებაც გსურთ "| კატა >> 'cronotab გზა (/ etc / cronotab)' «

  28.   რაფაელ ვერა დიჯო

    როგორ შესრულდა გამოთქმა ზუსტად 3 დღეში ერთხელ

  29.   ხოსე ანტონიო დიჯო

    Hello.

    მე მაქვს პრობლემა cron job- ის შესრულებისას.

    შემდეგ ამოცანას ვაწარმოებ cronta -e- ით:

    01 * * * * root /home/user/script/mfile.sh

    მაგრამ ამოცანა შესრულებული არ არის. მე გადავამოწმე, რომ myfile.sh- ს აქვს შესრულების ნებართვა და მომხმარებელი, რომელიც მას ასრულებს, არის root.

    იგივე დავალებას ვასრულებ / etc / crontab– ში და სერვისის გადატვირთვის შემდეგ, არც ის გამოდგება ჩემთვის.
    Myfile.sh- ის შინაარსი არის ბრძანება, რომელიც განაახლებს DB- ს და თუ მას ვაწარმოებ კონსოლში, ის მუშაობს.
    რაიმე იდეა რა პრობლემა შეიძლება იყოს?

    1.    ფრედი დიჯო

      მონაცემთა ბაზის მომხმარებელს შეიძლება არ ჰქონდეს ყველა ნებართვა და პირველ რიგში თქვენ უნდა მოახდინოთ გარემოს ცვლადების ექსპორტი თქვენი მონაცემთა ბაზის ძრავიდან.
      მაგალითად db2- ში ეს სტრიქონი მიდის სკრიპტის დასაწყისში
      . / მთავარი / db2inst1 / sqllib / db2profile

      კიდევ ერთი მიზეზი შეიძლება იყოს ის, რომ სკრიპტი მოითხოვს მონაცემთა ბაზასთან დაკავშირებას, მონაცემთა ბაზასთან კავშირის დამყარება სკრიპტის ფარგლებში

  30.   LA3 დიჯო

    მე არ ვიცოდი, რომ უნდა გამეკეთებინა ნაყინი, ამას ცოტა ხნით ვებრძოდი

  31.   კენია დიჯო

    მათ იციან, როგორ მიუთითონ, რომ დავალება შესრულებულია თვის ბოლოს, მითითებულ დროს .. დეტალია ის, რომ ვერ მივაღწიე, თუ როგორ ვიცი, რომ ყოველი თვის ბოლო დღე სჭირდება .. ?? სათითაოდ უნდა ჩამომეწერა, მაგრამ როდესაც თებერვლის თვის ბოლოს დადგება, რომ ეს ყველაზე რთულია, ჩემთვის რთულია ..

  32.   იესო დიჯო

    კარგი დღე!!

    როგორ შევაჩერო პროცესი, რომელიც ხორციელდება crontab- ში?

  33.   იესო დიჯო

    პროცესი *

  34.   Julianna დიჯო

    იქნებ დამეხმაროთ? eu tenho um სკრიპტის ავტორია minha, რომელიც არ მუშაობს არ crontab! დააჭირეთ ყველა ნებართვას, არა კონკრეტულ cron- ს ან მომხმარებელს, რომელსაც შეუძლია შეასრულოს ეს, მაგრამ არაფერი ხდება! მინდა ვიცოდე, თუ დამეხმარებით, სხვა რამეები არ მუშაობს! Vlws

  35.   ანტოქსი დიჯო

    როგორ დააყენებთ დავალებას, რომ აწარმოოთ თვის ბოლო დღე (დღეები: 31-30-28)?

  36.   ტფერჩო დიჯო

    როგორც მოგეხსენებათ, su ბრძანება გამოიყენება მომხმარებლის კონსოლში შესაცვლელად. თუ ბრძანებას su ასე გამოვიყენებ: "თქვენი მომხმარებელი" შეცვლის მომხმარებელს, მაგრამ "მომხმარებლის" სათანადო პარამეტრების გარეშე, თუ მე ვაწარმოებ su- ს: "სუ მომხმარებელი" შეცვლის მომხმარებელს, რომელიც იტვირთება მომხმარებლის პარამეტრებში. Cron- ით ვაჩვენებ მომხმარებელს, მაგრამ როგორ ვტვირთავ ამ მომხმარებლის პარამეტრებს?

  37.   რობ დიჯო

    და თუ მინდა ამის შეჩერება?

  38.   რეგი დიჯო

    Hello,
    არ ვიცი რას ვაკეთებ არასწორად, მაგრამ ნაბიჯებს მივყვები და არაფერი არ არის შესრულებული. Მე ვცადე:
    59 * * * * / usr / bin / gedit
    * * * * * / usr / bin / gedit
    * * * * * root / usr / bin / gedit
    * * * * * usr / bin / test.sh
    * * * * * root usr / bin / test.sh

    და საერთოდ არაფერი. ის არაფერს ასრულებს. მე გადავტვირთე და ყველაფერი.

  39.   ფერკოსი დიჯო

    დიდი მადლობა