আমি আমার সিস্টেম আপডেটগুলি স্বয়ংক্রিয় করতে ক্রোন ব্যবহার করার চেষ্টা করছি। আপনি নীচে আমার ক্রন্টব, কমান্ড এবং ফলাফলের ত্রুটি দেখতে পাচ্ছেন।
আমি যখন রুট হিসাবে আপগ্রেড.শ চালাই, স্ক্রিপ্টটি ঠিকঠাক হয়। ক্রোন যখন এটি apt-get -y update
চালায়, কোনও সমস্যা চালায় না, তবে aptitude -y safe-upgrade
ব্যর্থ হয়। আমি এই ত্রুটিটি অনুমান করছি: debconf: (This frontend requires a controlling tty.)
কারণ এখানে একটি কার্নেল আপডেট রয়েছে যার ফলস্বরূপ আপডেটগুলি গ্রাব হয়, যার জন্য আমার স্পষ্টতই বলা দরকার যে এটি ওভাররাইট করা ঠিক আছে /boot/grub/menu.lst
। তবে আমি পথের ত্রুটিগুলি বুঝতে পারি না। এবং আমি এমন আপডেটগুলি চাই যা আমার তদারকির প্রয়োজন হয় না।
আমি এই প্রশ্নটিunattended-upgrades
পড়েছি এবং এটি এখনও অগ্রহণযোগ্য সমাধান হিসাবে সমাধান করেছি এবং আমি এটি ব্যবহার করে শেষ করতে পারি তবে কেন আমি ক্রোন ব্যবহার করতে পারি না? দেখে মনে হচ্ছে এটি সত্যই সহজ এবং আরও বেশি শিরা হতে পারে।
নিম্নলিখিতরূপে crontab পরিবর্তন
root@daedalus:~/bin# crontab -l
# m h dom mon dow command
45 06 * * * ~/bin/upgrades.sh
upgrades.sh
root@daedalus:~/bin# cat upgrades.sh
#!/bin/bash
/usr/bin/apt-get -y update
/usr/bin/aptitude -y safe-upgrade
ত্রুটি
debconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (This frontend requires a controlling tty.)
debconf: falling back to frontend: Teletype
dpkg-preconfigure: unable to re-open stdin:
Fetched 37.6MB in 4min 23s (143kB/s)
dpkg: warning: 'ldconfig' not found on PATH.
dpkg: warning: 'start-stop-daemon' not found on PATH.
dpkg: warning: 'update-rc.d' not found on PATH.
dpkg: 3 expected program(s) not found on PATH.
NB: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin.
E: Sub-process /usr/bin/dpkg returned an error code (2)
A package failed to install. Trying to recover:
dpkg: warning: 'ldconfig' not found on PATH.
dpkg: warning: 'start-stop-daemon' not found on PATH.
dpkg: warning: 'update-rc.d' not found on PATH.
dpkg: 3 expected program(s) not found on PATH.
NB: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin.
Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
Writing extended state information...