मैं अपने सिस्टम अपडेट को स्वचालित करने के लिए क्रॉन का उपयोग करने की कोशिश कर रहा हूं। आप नीचे दिए गए मेरे त्रुटियों, आदेशों और परिणामी त्रुटियों को देख सकते हैं।
जब मैं अपग्रेड करता हूं। रूट के रूप में, स्क्रिप्ट ठीक चलती है। जब क्रोन इसे चलाता है, तो 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...