আমি কীভাবে চলমান ক্রন্টব কার্যগুলি দেখতে / বন্ধ করতে পারি?


20
  1. যে ক্রোনটব কাজ চলছে তা কীভাবে আমি দেখতে পাচ্ছি?
  2. ম্যানুয়ালি ক্রন্টব কাজগুলি কীভাবে বন্ধ রয়েছে ?

[এই] বর্তমান চলমান ক্রোন প্রক্রিয়াগুলি সম্পর্কে প্রশ্নটি কি?

হ্যাঁ

কোনও প্রক্রিয়াটিকে ম্যানুয়ালি মেরে ফেলার জন্য একটি উপায় পিকিল ব্যবহার করা

আমি পিল / কিল্লাল সম্পর্কে ভেবেছিলাম, তবে ক্রন্টব ফাইলে আমার কয়েকটি কমান্ড যথাক্রমে! এর অর্থ একটি কমান্ড শেষ করার পরে, পরবর্তীটি শুরু হবে! উদাহরণ স্বরূপ:

sudo crontab -e
00 10 * * * /usr/bin/wget LINK ; shutdown -h now

সুতরাং, আমি যদি হত্যা করি wgetতবে কম্পিউটারটি চালিত হবে !!! -> আমি ক্রোন টাস্ককে পুরোপুরি মেরে ফেলতে চাই, এর কোনও অংশ নয়!

পরবর্তী pkillসমস্যা: স্ক্রিপ্টগুলির কী হবে? (আমি কিছু বাশ স্ক্রিপ্ট এতে আমদানি করেছি crontab -e) ->sudo pkill ???


আপনার চলমান ক্রোন প্রক্রিয়া চলমান সম্পর্কে প্রশ্নটি কি? বা ক্রোন-জবসের তালিকা? এটি সম্পর্কে আরও পরিষ্কার হতে দয়া করে আপনার প্রশ্নটি সম্পাদনা করুন। চলমান ক্রোন-জব বন্ধ করতে ( Askubuntu.com/q/272419/66980 )
মোহাম্মদ ইতেমাদদার

সম্পাদিত; 1. হ্যাঁ, চলমান ক্রোন প্রক্রিয়াগুলি দেখছেন? (আমি প্রক্রিয়াগুলি অগ্রভাগে আনতে চাই); ২. তাহলে, আমি নিজে এটি বন্ধ করতে চাই ?! (ক্রন্টব শিডিউল থেকে নয়)
মিনি

আপনার প্রশ্নে অতিরিক্ত তথ্য যুক্ত করার সর্বোত্তম উপায় হ'ল সম্পাদনা বোতামটি দিয়ে এডিট করা । এটি সেভাবে আরও ভালভাবে দৃশ্যমান এবং মন্তব্যগুলি প্রধানত গৌণ, অস্থায়ী উদ্দেশ্যে for মন্তব্য বিভিন্ন পরিস্থিতিতে মুছে ফেলা হয়। আপনার প্রশ্নের গুরুত্বপূর্ণ যে কোনও বিষয় নিজেই প্রশ্নের মধ্যে থাকা উচিত।
গুটবার্ট

উত্তর:


42

প্রথমত, ক্রন্টবায় প্রতি লাইনে কেবল একটি কমান্ড ব্যবহার করুন। এই ক্রন্টব লাইনটি পরিবর্তন করুন:

00 10 * * * /usr/bin/wget LINK ; shutdown -h now

সুতরাং দেখে মনে হচ্ছে:

00 10 * * * /path/to/my/crontab/script1.sh

এবং /path/to/my/crontab/script1.shএই বিষয়বস্তু দিয়ে তৈরি করুন :

#!/bin/bash
/usr/bin/wget LINK
shutdown -h now

অবশ্যই, এটি কার্যকর করার অনুমতি দিতে ভুলবেন না:

chmod +x /path/to/my/crontab/script1.sh

দ্বিতীয়ত, আপনি ক্রন্টব টাস্কগুলি কার্যকর এবং পঠনযোগ্য ফর্ম্যাটে, এর আউটপুটে দেখতে পাচ্ছেন:

ps -o pid,sess,cmd afx | egrep -A20 "( |/)cron( -f)?$"

তারা প্রথম লাইনে উপস্থিত হবে, এরকম কিছু:

1108  1108 cron
4288  1108 \_ CRON
4289  4289     \_ /bin/sh -c /path/to/my/crontab/script1.sh
4290  4289         \_ /bin/bash /path/to/my/crontab/script1.sh
4295  4289             \_ /usr/bin/wget LINK

প্রথম কলামটি পিআইডি, দ্বিতীয় সেশন আইডি এবং তৃতীয়টি ক্রোন দ্বারা শুরু করা কমান্ড। আপনি সেশন আইডি ব্যবহার করে একটি নির্দিষ্ট ক্রোন টাস্ক সম্পর্কিত সমস্ত প্রক্রিয়াটি মেরে ফেলতে পারেন, সুতরাং উপরের উদাহরণে আপনার সেশন আইডি 4289 খুন করা উচিত:

pkill -s 4289

1
" sh ps: cmd: keyword not found ps: illegal argument: afx
ক্রোনটব

সুতরাং ক্রোন তার প্রক্রিয়াগুলি দেখানোর জন্য কোনও "সহজ" উপায় দেয় না?
Cirelli94

@ আলেক্রাস্ট: এটি চেষ্টা করুনps -o pid,sess,cmd -afx | egrep "( |/)cron( -f)?$"
বুলারশ

0

কোনও প্রক্রিয়াটিকে ম্যানুয়ালি মেরে ফেলা হচ্ছে এক উপায় pkill। pkill সমস্ত প্রক্রিয়া বন্ধ করবে যেগুলির নামে নিম্নলিখিত প্যাটার্ন রয়েছে। উদাহরণস্বরূপ সমস্ত উইজেট প্রক্রিয়া ব্যবহার বন্ধ করতে:

sudo pkill wget

আমি পিল / কিলল সম্পর্কে ভেবেছিলাম, তবে ক্রন্টব ফাইলটিতে আমার কয়েকটি কমান্ড যথাক্রমে! এর অর্থ একটি কমান্ড শেষ করার পরে, পরবর্তীটি শুরু হবে! উদাহরণস্বরূপ: sudo crontab -e=> 00 10 * * * /usr/bin/wget LINK ; shutdown -h now=> সুতরাং, আমি যদি উইজেটটি হত্যা করি তবে কম্পিউটারটি চালিত হবে !!! -> আমি ক্রোন টাস্ককে পুরোপুরি মেরে ফেলতে চাই, এর কোনও অংশ নয়! পরবর্তী পিকিল সমস্যা: স্ক্রিপ্টগুলির কী হবে? (আমি কিছু বাশ স্ক্রিপ্ট এতে আমদানি করেছি crontab -e) ->sudo pkill ???
মিনি

0

আপনার ক্রোনজব এই মত পরিবর্তন করুন

00 10 * * * /usr/bin/wget LINK && shutdown -h now

এটি কাজ করা উচিত, কারণ &&প্রথম কমান্ডটি সঠিকভাবে সমাপ্ত হওয়ার পরে দ্বিতীয় কমান্ডটি কেবল কার্যকর হয় (কনসোল / সিস্টেমে স্ট্যাটাস 0 ফিরিয়ে দেওয়া হয়), যা হওয়া উচিত নয় (কারণ প্রক্রিয়াটি ব্যবহারকারী দ্বারা খুন হয়ে গেছে এবং এটির পরে অন্য মানটি ফিরিয়ে আনতে হবে)।

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