আপনার প্রশ্নের জন্য আপনাকে ধন্যবাদ, এটি আমাকে এই সমাধানের দিকে পরিচালিত করেছে। এটি আমার সম্পূর্ণ, সাধারণীকরণের- এবং নির্দিষ্ট সমাধান particular এটি 3 টি পদক্ষেপ নিয়ে গঠিত:
- একটি ক্রোনজব তৈরি করুন
- প্রারম্ভকালে ক্রোনজব পরিষেবা চালনা / সক্ষম করুন
- ক্রোনজব পরিষেবাটি স্বয়ংক্রিয়ভাবে শুরু করার জন্য পাসওয়ার্ডের অনুরোধগুলি সরিয়ে দিন।
বাস্তবে আপনার সমস্যাটি ইতিমধ্যে কেবল 2 এবং 3 ধাপের সাথে সমাধান করা হয়েছে, তবে আপনি যেহেতু একটি ক্রোনজব দিয়ে এটি করার চেষ্টা করেছিলেন তাই আমি সেই পদক্ষেপটি সম্পূর্ণতার জন্যও যুক্ত করেছি।
1. একটি ক্রিয়াকলাপ ক্রোনজব তৈরি:
- ফোল্ডারে ব্রাউজ করুন
/etc/
- তারপরে ফোল্ডারে
/etc/
প্রবেশ করুন:sudo nano crontab
- সেই ফাইলটিতে ক্রন্টব নামে আপনার কমান্ড প্রবেশ করুন।
- উদাহরণ:
*/1 * * * * root touch /var/www/myFile
- প্রতি মিনিটে
myFile
লোকেশন নামের একটি ফাইল তৈরি করতে /var/www/
।
- সম্পূর্ণতার জন্য: এর
*/1 * * * * root touch /var/www/myFile
অর্থ হবে: ঘন্টা প্রতি প্রতি 1 মিনিটে সেই ফাইলটি তৈরি করুন।
crontab
ফাইলটির উদাহরণ দেখতে পারা যায় (আমি কেবল শেষ পংক্তিটি যুক্ত করেছি, বাকী ইতিমধ্যে আমার সেটআপটিতে ছিল):
# /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
*/2 * * * * root touch /var/www/myFile
2. ক্রোনজব পরিষেবা সক্ষম করা
ডাব্লুএসএল উবুন্টু ১.0.০৪-এর শুরুতে স্বয়ংক্রিয়ভাবে একটি কমান্ড চালাতে আপনি পারেন:
- সিডি টু
/home/<your ubuntu user name>
sudo nano .bashrc
- তারপরে পাঠ্য সম্পাদক ন্যানো একটি ফাইল তৈরি করে / খুলবে op
.bashrc
- এই ফাইলটিতে ইতিমধ্যে অনেকগুলি উদাহরণ ইতিমধ্যে প্রদর্শিত হতে পারে, ডাব্লুএসএল উবুন্টু 16.04 শুরু হওয়ার পরে আপনার কমান্ডটি কার্যকর করতে,
.bashrc
ফাইলটির প্রথম লাইনে আপনার কমান্ডটি লিখুন ।
- উদাহরণস্বরূপ:
echo "hello world"
নীচের ছবিতে দেখানো হয়েছে।
- আপনার নির্দিষ্ট সমস্যার জন্য, নির্দিষ্ট সমাধানটি হ'ল লাইনে প্রবেশ করা:
sudo ./xmr-stak-cpu
- এর সাথে সম্পাদকটি বন্ধ করুন:
ctrl+x
- ফাইলটি সংরক্ষণ করুন
Y
- উবুন্টু প্রস্থান করুন
- উবুন্টু পুনরায় আরম্ভ করুন এবং আপনার ব্যবহারকারীনের আগে হ্যালো দুনিয়াটি মুদ্রিত হয়েছে তা যাচাই করুন।
! [ডাব্লুএসএল উবুন্টু বুট করার পরে কার্যকর করা .bashrc এ একটি উদাহরণ কমান্ড]] 1
উদাহরণস্বরূপ, .bashrc
আপনি এটি সম্পাদনার পরে আপনার দেখতে দেখতে এটির মতো হতে পারে : (আমি কেবল উপরে প্রথম লাইনটি যুক্ত করেছি, বাকী ইতিমধ্যে আমার সেটআপটিতে ছিল))
sudo -i service cron start
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac
# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth
# append to the history file, don't overwrite it
shopt -s histappend
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
#shopt -s globstar
# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color|*-256color) color_prompt=yes;;
esac
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes
if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi
ক্রোনজব পরিষেবা সক্ষম করতে আপনি hello world
কমান্ডটি প্রতিস্থাপন করতে পারেন sudo service cron start
। তবে তারপরেও আপনাকে নিজের পাসওয়ার্ডটি ম্যানুয়ালি প্রবেশ করতে হবে।
৩. পাসওয়ার্ডের জন্য প্রম্পট অপসারণ:
ব্যবহার করে: https://askubuntu.com/questions/147241/execute-sudo-without-password
- ডাব্লুএসএল উবুন্টু 16.04 (টার্মিনাল) খুলুন
sudo visudo
- ফাইলের নীচের অংশে অ্যাড লাইন:
<your WSL ubuntu username> ALL=(ALL) NOPASSWD: ALL
- যেমন zq ব্যবহারকারীর নাম সহ আপনি নীচের লাইনটি ফাইলের নীচে যুক্ত করবেন:
zq ALL=(ALL) NOPASSWD: ALL
- প্রস্থান করতে ctrl + x
y
দ্বারা অনুসরণ <enter>
সংরক্ষণ করুন।
- তারপরে আবার উবুন্টু বন্ধ করুন এবং এটি আবার খুলুন এবং যাচাই করুন
- আপনি পাসওয়ার্ডের জন্য প্রম্পট না করে আপনি ডাব্লুএসএল উবুন্টু 16.04 বুট করুন / খুললে ক্রোন পরিষেবা স্বয়ংক্রিয়ভাবে চলমান।
- (আপনি কমান্ড দিয়ে চেক করতে পারেন:।
sudo service cron status
)
বুটে পাসওয়ার্ডের অনুরোধ রোধ করার কোডটি উদাহরণস্বরূপ দেখতে হবে (আমি কেবলমাত্র শেষ লাইনটি যুক্ত করেছি, বাকিটি আমার সেটআপটিতে ইতিমধ্যে ছিল):
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/s$
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
#includedir /etc/sudoers.d
%sudo ALL=NOPASSWD: /etc/init.d/cron
zq ALL=(ALL) NOPASSWD: ALL
এই সমাধানের দিকে কাজ করে, আমি শিখেছি ক্রোনজবগুলি স্টার্টআপের মতো নির্দিষ্ট ইভেন্টের পরিবর্তে জিনিসগুলি নিয়মিতভাবে চালানোর উদ্দেশ্যে করা হয়। ডাব্লুএসএল শুরুতে জিনিসগুলি চালানোর জন্য আপনি ফাইলটি ব্যবহার করতে পারেন /home/<username>/.bashrc
।