ক্রোন.অওয়ারলি চলবে না


54

ঠিক আছে, তাই আমি আমার স্ক্রিপ্ট তৈরি করেছি, আমি এটি ফাইলটি /etc/cron.hourlyপরে ফেলেছি chmod 777তবে ফাইলটি এটি স্বয়ংক্রিয়ভাবে চলবে না। আমি যদি ম্যানুয়ালি এটি চালায় তবে এটি ঠিক আছে। আমার আর কিছু করার দরকার আছে?


এই উত্তরটি ফাইল এবং বিষয়বস্তুর নাম ব্যতীত অনেকগুলি আপগেট পাওয়া উচিত হয়নি।
ব্যবহারকারী অজানা

উত্তর:


13

ক্রন্টাব (/ ইত্যাদি / ক্রন্টব) কেন ব্যবহার করবেন না এবং ঘন্টা ক্ষেত্রের ক্ষেত্রে * / 1 ব্যবহার করুন? আমি প্রতি 5 মিনিটে স্ক্রিপ্ট চালাতে এটি ব্যবহার করেছি এবং এটি ভালভাবে কাজ করে:

# m h dom mon dow user  command
* */1  * * *   user    command

6
cron.dailyমেশিনটি সার্বক্ষণিক চলমান না থাকলে ব্যবহার এবং বন্ধুরা কিছুটা ভাল কাজ করে, কারণ অ্যানাক্রন সঠিক সময়সূচির আনুমানিক চেষ্টা করার চেষ্টা করে যেখানে মেশিন সারা রাত না থাকলে প্লেইন ক্রোন কেবল তাদের চালায় না। প্রতি ঘন্টা কাজের জন্য সম্ভবত এটি এতটা গুরুত্বপূর্ণ নয়।
পুলি 0

9
আমি পরবর্তী উত্তরটির সত্যই প্রশংসা করি, কারণ এটি কোনও কাজের সন্ধানের চেয়ে ক্রোন.হওয়ারি দিয়ে সমস্যার সমাধান করে।
তিশমা

4
এটি প্রশ্নের উত্তর নয়
josh123a123

@poolie যেভাবে এতে দেখা গেছে যাবে/etc/crontab : cron.daily, cron.weeklyএবং cron.monthly anacron দিয়ে চালানো (যদি উপলব্ধ থাকে) কিন্তু ঘনঘন run-parts --report /etc/cron.hourly
পাবলো এ

144

এন্ট্রিগুলি cron.hourlyরান-পার্টস মেকানিজম দ্বারা চালিত হয় ( man run-partsআরও তথ্যের জন্য)। এবং run-partsকোন ফাইলের নামগুলি এটি বৈধ বলে মনে করে তা সম্পর্কে উপযুক্ত।

উদাহরণস্বরূপ, আপনার স্ক্রিপ্টকে একটি এক্সটেনশান দেওয়া এটিকে অবৈধ করে দেবে এবং ফলস্বরূপ কাজটি চালিত হবে না। [a-zA-Z0-9_-]বৈধ অক্ষর, তাই '। এটি অবৈধ করে তোলে।

/etc/cron.hourly(বা .daily, .weeklyইত্যাদি) - তে কোনও কাজ যুক্ত করার পরে সর্বদা পরীক্ষা করুন run-partsযা কমান্ড জারি করে এটি চালিত করবে:

run-parts --test /etc/cron.hourly

যদি এই কমান্ডটি চালিত করে এটি আপনার ফাইলটি দেখায় এর অর্থ এটি কাজ করে। অন্যথায়, যদি কিছু না দেখায় তবে আপনার ফাইলের নামটি বৈধ নয়।

আপনার লিপির নাম কী ছিল?


দুটি আছে: সেরিব্রো_রান্ডম_সিস্পোনস.শ এবং সেরেব্রো টেম্পারেচার.শ ভাল নেই?
সুইচকিক

21
সঠিক, কোনও ভাল নয় :) [a-zA-Z0-9_-] হ'ল বৈধ অক্ষর, তাই '।' এটি অবৈধ করে তোলে। 'আপনার স্ক্রিপ্টকে একটি এক্সটেনশান দেওয়ার ফলে এটি অবৈধ হয়ে যাবে'
চাইছি

11
ওএমজি, এটি কেবল একটি বিশাল মাথাব্যথা বাঁচিয়েছে। ধন্যবাদ! giving your script an extension will make it invalid and result in the job not being run
জোনাথন এস ফিশার

আপনি --reportআসলে স্ক্রিপ্টগুলি চালাতে ব্যবহার করতে পারেন ।
পাবলো এ

5

আপনার সমস্যা সম্ভবত অত্যধিক ওপেন অনুমতিগুলির মধ্যে রয়েছে, যার ফলে আপনার ফাইলটি যে কেউ সম্পাদনা করতে পারবেন। 755পরিবর্তে চেষ্টা করুন।

আপনার সিসলগ আউটপুটে ক্রোন এন্ট্রিগুলি সন্ধান করা এটির নিশ্চিত হওয়া উচিত।


4

ডাইথিএফের উত্তরটি সঠিক উত্তর হওয়া উচিত।

এছাড়াও, আমার স্ক্রিপ্টটি #!/bin/bashপ্রথম লাইনে ছিল না। যদিও কমান্ড লাইনের সাথে স্ক্রিপ্টটি কার্যকর করা যেতে পারে, run-partsএটি "এক্সিকিউট ফর্ম্যাট ত্রুটি" বলে প্রত্যাখ্যান করে।

থেকে ফাইলের নাম পরিবর্তন scriptname.shকরা scriptnameএবং #!/bin/bashপ্রথম লাইনে যুক্ত করা আমার স্ক্রিপ্টটি প্রতি ঘন্টা চালাতে সক্ষম করে।


-1

আপনি যখন দৌড়াবেন

crontab -l

এই কাজ তালিকায় আছে?

যদি না হয়, এটি যোগ করুন

crontab -e

এই লাইন যুক্ত করুন

0 * * * * yourScript

যদি এটি এই তালিকায় থাকে তবে আপনার স্ক্রিপ্টের শীর্ষে প্রোগ্রামিং ভাষার পথ যুক্ত করার চেষ্টা করুন

উদাহরণ:

bash: #!/bin/bash

এই 2 টি জিনিস সর্বদা আমার সমস্যার সমাধান করে :)


এটি শেষ হয়ে গেল এবং স্ক্রিপ্টটি ভাল, এটি কবজির মতো কাজ করে। এটি ক্রন্টব তালিকায়ও রয়েছে তবে কোনও ঘন্টা ঘন্টা কাজ চালায় না। ধন্যবাদ যাহাই হউক না কেন :(
Switchkick
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.