কীভাবে সময় পরিবর্তন করবেন ক্রোন.ডেইলি লিনাক্সে চালিত হয়


22

আমার ক্রোন.ডাইলে একটি স্ক্রিপ্ট রয়েছে যা প্রতি সকালে একটি নির্দিষ্ট সময়ে চলে। আমার যে সময়টি চালানো হয়েছে তা বদলাতে হবে।

ক্রোন.ডেইলি স্ক্রিপ্টগুলি চালানোর সময়টি কীভাবে পরিবর্তন করব?

linux  cron  redhat 

উত্তর:


24

রেড হ্যাট 5 বা ততোধিক বয়সীতে এটি নিয়ন্ত্রণ করা হয় /etc/crontab

আরও নতুন সংস্করণ ব্যবহার /etc/anacrontab। ডিফল্টরূপে, cron.dailyস্ক্রিপ্টগুলি 4:02 এ চালিত হয়। সম্পাদনা /etc/crontabসেই সময়টি সংশোধন করবে।

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly

ডেবিয়ান / উবুন্টু সিস্টেমে এটিও নিয়ন্ত্রণ করা /etc/crontabহয়।

উদাহরণ স্বরূপ; একটি ডিফল্ট উবুন্টু 12.04 ইনস্টলেশন:

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

এবং উভয় ক্ষেত্রেই, আপনি এখানে কী সিনট্যাক্স ব্যবহার করবেন সে সম্পর্কে বিস্তারিত জানতে পারেন: http://linux.die.net/man/5/crontab অথবা man 5 crontabপ্রায় কোনও লিনাক্স সিস্টেমে চালিয়ে running


3
sudo systemctl restart cron.serviceআপনি এটি সংশোধন করার পরে সঞ্চালন করতে ভুলবেন না । এটি systemdআধুনিক ডেবিয়ান এবং উবুন্টুর মতো ভিত্তিক সিস্টেমগুলির ক্ষেত্রে সত্য ।
ট্রান্সলুসেন্টক্লাউড

3

আরএইচইএল / সেন্টোস 6 এবং তারপরে

# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.

SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# the maximal random delay added to the base delay of the jobs

RANDOM_DELAY=45

# the jobs will be started during the following hours only

START_HOURS_RANGE=3-22

#period in days   delay in minutes   job-identifier   command
1       5       cron.daily              nice run-parts /etc/cron.daily

7       25      cron.weekly             nice run-parts /etc/cron.weekly

@monthly 45     cron.monthly            nice run-parts /etc/cron.monthly

সুতরাং, কীভাবে এটি সময় চালায় তা পরিবর্তনের প্রশ্নে উত্তর দেওয়ার জন্য, আমাকে START_HOURS_RANGE সম্পাদনা করা উচিত, সঠিক?
21:17 এ

1

ওপেনসুসে, ক্রোনটব দেখতে দেখতে:

SHELL=/bin/sh
PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin
MAILTO=root
#
# check scripts in cron.hourly, cron.daily, cron.weekly, and cron.monthly
#
-*/15 * * * *   root  test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1

run-cronsকমান্ড ফাইল টাইমস্ট্যাম্প যাচাই /var/spool/cron/lastrunঅন্যান্য বিষয়ের মধ্যে। শেষ মৃত্যুদন্ড কার্যকর হওয়ার পরে যখন সময়টি শেষ হয়ে গেছে তখন এটি আবার ক্রোন ফাইল চালাবে।

ফাইলটি স্পর্শ করে সময়টি প্রভাবিত হতে পারে। উদাহরণস্বরূপ, এটিকে 2012-11-17 03:15 এ সেট করতে:

touch -t 201211140315 /var/spool/cron/lastrun/cron.daily

0

যদি লাইনটি না থাকে তবে এটি কোনও সমস্যার সমাধান করবে না।

ক্রোন.ডেইলি কোথায় উল্লেখ করা হয়েছে তা অনুসন্ধান করার চেষ্টা করুন

grep -R cron.daily /etc

তারপর সেখান থেকে নিয়ে যাও।


আপনি যদি এই আদেশটি ব্যবহার করেন তবে আপনাকে খুব সাবধানতা অবলম্বন করতে হবে। আমার রেডহ্যাটের উদাহরণস্বরূপ এটি / ইত্যাদি / ক্রন্টব এবং / ইত্যাদি / অ্যানাক্রান্তব ফাইলগুলি ফেরত দেয়। এবং যদি আপনি ক্রোন.ডেইলি এন্ট্রি সহ লাইনগুলি সরিয়ে থাকেন তবে আপনি কেবলমাত্র সমস্ত স্ক্রিপ্টগুলির দৈনিক চালানো উচিত যা কেবল আমার জন্য চালানো উচিত (আমার জন্য এটি লোগ্রোটেট, টেম্পওয়াচ, কাপ এবং অন্যান্য)।
লুকাস্জ স্টেলমাচ

2
আমি লাইনটি সরিয়ে দেওয়ার পরামর্শ দিইনি, প্রশ্নটি ছিল ক্রোন.ডিইলি সময়টি কোথায় পরিবর্তন করতে হবে। এইভাবে আপনি এটি সনাক্ত করেন (সুতরাং এটি আরও একটি "তাদের নিজেদেরকে সহায়তা করতে" এক ধরনের জবাব ছিল)

-1

আপনি দুটি জিনিস করতে চান:

  1. ক্রোন.ডেইলি থেকে স্ক্রিপ্টটি সরান এবং অন্য কোথাও রাখুন।
  2. নির্দিষ্ট সময়ে নির্দিষ্ট স্ক্রিপ্টটি চালানোর জন্য আপনার ক্রোনটবে একটি এন্ট্রি যুক্ত করুন:

00 10 * * * /path/to/script

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.