ক্রোন.ডেইলি চাকরি চলছে না


19

আমি চালানোর জন্য 3 টি ক্রোন জব তৈরি করেছি।

নীচে তিনটি দেওয়া আছে যা ইত্যাদি / ক্রোন.ডাইলে রাখা হয়

rkhunter.sh

#!/bin/sh
(
rkhunter --versioncheck
rkhunter --update
rkhunter --cronjob --report-warnings-only
) | mail -s 'rkhunter Daily Run (my server)' me@email.com

chkrootkit.sh

#!/bin/bash
chkrootkit | mail -s "chkrootkit Daily Run (my server)" me@email.com

logwatch.sh

#!/bin/sh
(
logwatch
) | mail -s 'logwatch Daily Log (my server)' me@email.com

আমি আমার ইমেলের সাথে me@email.com অফ কোর্সটি প্রতিস্থাপন করেছি।

আমি যদি এই ক্রোনজব ম্যানুয়ালি চালিত করি তবে এটি ঠিকঠাক কাজ করে ./nameoffile.sh

তবে এটি প্রতিদিন চালায় না, কারণ কী হতে পারে বা আমি কীভাবে এটি পরীক্ষা করে দেখতে পারি?


2
নিশ্চিত হয়ে নিন যে আপনি ক্রোন.ডেইলি / সাপ্তাহিক / ঘন্টা / ঘন্টা ইত্যাদিতে তৈরি ফাইলগুলি কেবল একটি chmod + x
/etc/cron.daily/w যাই হোক না কেন করুন

উত্তর:


6

দুটি সম্ভাব্য সন্দেহভাজন রয়েছে যা সাধারণত cronচাকরি চালাতে না পারার কারণ হয়।

প্রথমটি হ'ল অনুমতি সংক্রান্ত সমস্যাগুলি, এটি হ'ল কোনও ব্যবহারকারী স্ক্রিপ্ট / কমান্ড চালাতে পারে তবে ক্রোন ডেমন পারে না কারণ কাজটি ভুল ব্যবহারকারীর ক্রোন কাজগুলিতে রয়েছে। উদাহরণস্বরূপ, ব্যবহারকারী কোনও স্ক্রিপ্ট তৈরি করে বা উন্নত সুবিধাসমূহের সাহায্যে একটি কমান্ড চালায় অর্থাৎ ব্যবহার করে sudo, তারপরে ক্রোন জব ( crontab) এর তালিকায় পরীক্ষিত স্ক্রিপ্ট / কমান্ড যুক্ত করে । ফলাফলটি হ'ল ব্যবহারকারীর ক্রোন জব চালাতে সক্ষম হবে না কারণ এটির উন্নত সুবিধাগুলি প্রয়োজন।

  • বর্তমান ব্যবহারকারীর ক্রন্টব টাইপের ক্রোন জব স্থাপন করা crontab -e
  • রুটের ক্রন্টব টাইপের ক্রোন জব লাগাতে sudo crontab -e

দ্বিতীয় কারণটি হ'ল পাথগুলি, স্ক্রিপ্টটি কার্যকর হবে কিনা তা নিশ্চিত হওয়ার জন্য, ব্যবহারকারীকে ক্রোনট্যাব সম্পাদন করার জন্য স্ক্রিপ্টের পুরো পথটি যুক্ত করতে হবে। আর একটি সমাধান হ'ল মূল ব্যবহারকারীদের PATH ভেরিয়েবলটি তাদের ক্রন্টব ফাইলের শীর্ষে নীচে রেখে লাইনটি প্রসারিত করা হবে:

PATH=/usr/sbin:/usr/bin:/sbin:/bin

সম্প্রদায় উইকি হিসাবে উল্লেখ

আপনি ক্রোন সম্পর্কে সম্প্রদায় উইকিটি পড়তে চাইতে পারেন কারণ এটি উপরোক্ত সম্পর্কে আরও বিশদ সরবরাহ করে।


সুতরাং আমি কি কেবল সেখানে ফাইলের নামটি রেখেছি?
সোনিকবুম

এটি আসলে বলছে যে মূলের জন্য কোনও পূর্ববর্তী ক্রোন জব নেই এবং আপনি প্রথমে আপনার লিখতে চলেছেন এবং তারপরে ক্রন্টাবটি পরিবর্তন করতে আপনাকে একটি সম্পাদক বাছাই করতে বলেছে। মেনু থেকে কেবল একটি চয়ন করুন (1.bin / ed, ইত্যাদি)। ন্যানো এটি সহজ চয়ন করুন, কেবল নির্দেশাবলীতে মনোযোগ দিন।
স্টিফ কে

তাই 10PM এ দিনে একবার চালানোর জন্য আমি * 22 * ​​* * পরীক্ষা> rkhunter.sh লাগিয়ে দেব?
সোনিকবুম

আহ আহ! অসুস্থ এখনই চেষ্টা করুন!
সোনিকবুম

Rkhunter.sh পরীক্ষাটি কী জন্য?
Sonicboom

76

এই প্রতিক্রিয়া অনুসারে , সমস্যাটি .sh এক্সটেনশনের মধ্যে রয়েছে। এটি মুছে ফেলুন (উদাহরণস্বরূপ rkhunter.sh থেকে rkhunter এ আপনার ফাইলটির নাম পরিবর্তন করুন।

নিশ্চিত করতে নিম্নলিখিত কমান্ডটি চালান run-parts --test /etc/cron.daily

যদি আপনার স্ক্রিপ্ট (rkhunter) ফলাফলগুলিতে অন্তর্ভুক্ত করা হয় তবে সমস্ত ভাল। রান-পার্টস কমান্ড সম্পর্কে আরও তথ্যের জন্য, এর ম্যান পেজগুলি পড়ুনman run-parts


1
এই উত্তরটি আমি খুঁজছিলাম, বিভিন্ন পরীক্ষার পরে, আমি বুঝতে পেরেছিলাম যে এক্স এক্সটেনশন ছাড়াই অন্য একটি স্ক্রিপ্ট ফাইল কার্যকর করা হয়েছে
অ্যালবার্ট

5
যেমন @ ররিসিসো তার উত্তরে বলেছিলেন। ".sh" এর সাথে এটি "ইস্যু হিসাবে এতটা সমস্যা নয়।" কোনও এক্সটেনশন সহ যে কোনও ফাইল মিস করা হবে। সরাসরি উদ্ধৃত করা থেকে man run-parts"নামগুলো upper- হওয়া ASCII সম্পূর্ণভাবে গঠিত এবং অক্ষর, হওয়া ASCII সংখ্যা, হওয়া ASCII আন্ডারস্কোর, এবং হওয়া ASCII বিয়োগ-হাইফেন-কেস নীচু আবশ্যক"
উত্তর-ব্র্যাডলি

11

আমার সিস্টেমে এটি কারণ এ্যানাক্রোন ইনস্টল করা হয়নি।

grep run-parts /etc/crontab

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 )

সুতরাং হয় অ্যানাক্রন ইনস্টল করুন বা পরীক্ষা -x / usr / sbin / anacron মুছে ফেলুন


1
+1 অ্যানক্রোন কি ডিফল্টরূপে ইনস্টল করা হয় না? আমি এটা আশা করতাম। আমি মনে করি এটি আমার জন্য সমাধান করবে। ধন্যবাদ।
লেপ

নিশ্চিতভাবেই, এটি আমার উপর ছিল না .. এফএফএস, আমি নিশ্চিত যে এটি ছিল, যেমন স্ক্রিপ্ট কয়েক মাস আগে কার্যকর হয়েছিল !: dpkg --get-selections | grep cron.. <
সোয়ারস

হ্যাঁ আমি জানি না যেহেতু এটি কি হয়েছিল যেহেতু এটি সাধারণত প্যাকেজটি শুরুতে ইনস্টল করা হয়।
নাতিম

10
এটি আসলে সঠিক নয়। anacronপ্রয়োজনীয় নয়; ||নিম্নলিখিতরূপে crontab পরিবর্তন মধ্যে অপারেটর, executes কমান্ড run-partsযখন anacron ইনস্টল করা নেই। কখন anacronইনস্টল করা হয়, এটি সেইগুলি দৈনিক / সাপ্তাহিক / মাসিক run-partsকমান্ডগুলিকে অপ্রয়োজনীয় করে তোলে।
টকলিটলে

সুতরাং সম্ভবত এটি কারণ অংশ কাজ করে না? যে কোনও কেস ইনস্টল করতে অ্যানক্রন আমার জন্য এটি স্থির করে।
নাতিম

10

আমি মনে করি এক্সটেনশনযুক্ত ফাইলগুলি উপেক্ষা করা হয়েছে।

সঞ্চালন করুন:

 রান-পার্টস - সর্বশেষ /etc/cron.daily

আপনি যদি আপনার স্ক্রিপ্টগুলি তালিকাভুক্ত না দেখতে পান তবে .sh এক্সটেনশনগুলি সরিয়ে আবার চেষ্টা করুন।


5

স্টিফ উত্তরে যুক্ত করে, আপনারও নিশ্চিত হওয়া উচিত যে তাদের কার্যকর করার যোগ্য কিছু রয়েছে:

$ ls -l
-rwxr-xr-x  1 root root   268 Jun  1 08:06 00logwatch
-rwxr-xr-x  1 root root   311 May 22  2012 0anacron
-rwxr-xr-x  1 root root 15007 Jun  6 14:08 apt

এগুলি ব্যবহার করে আপনার চালানো উচিত chmod +x filename


এগুলি কোন ফাইল? এটি কি /etc/logrotate.d ফোল্ডারের বিষয়বস্তু?
রিয়েলটিবো

4

.Sh এক্সটেনশন না থাকার জন্য আপনার ফাইলটির নাম পরিবর্তন করুন

এটি সমস্যাটি যাচাই করতে চেষ্টা করুন

sudo run-parts --list /etc/cron.daily 

আপনি দেখতে পাবেন এটি তালিকাভুক্ত নয়। সুতরাং চালান:

mv script.sh script

এবং আবার তালিকাভুক্ত করার চেষ্টা করুন। এটি তালিকাভুক্ত করা উচিত।


এই সমস্যাগুলি এমন কোনও এক্সিকিউটেবলের প্রসারণযোগ্য বলে মনে হচ্ছে যার এক্সটেনশন রয়েছে। আমার একটি ফাইলের নাম ছিল "ফাইলের
নাম.সিএ

0

আমি এটি অ্যানক্রোন দিয়ে চালাতে পারি না, আমি এ্যানাক্রনকে সরিয়ে দিয়ে /etc/crontabকার্যকর করেছিলাম apt remove --purge anacronএবং এটি এখনই কাজ করে works

আমাদের দু'টি শিডিউলার কেন দরকার তা আমি বুঝতে পারি না।


0

আজ একই পরিস্থিতি

আমি করেছিলাম

sudo journalctl -u cron -b | grep -i error

এবং পাওয়া

cron[815]: Error: bad hour; while reading /etc/crontab
cron[815]: (*system*) ERROR (Syntax error, this crontab file will be ignored)

আমি আবিষ্কার করেছি যে কেউ (আমাকে !!!!) এর সাথে শুরু করে একটি লাইন যুক্ত করেছে

20 38 ...

এবং স্পষ্টতই 38 তম ঘন্টা উপস্থিত নেই!

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