मैं nullmailer के माध्यम से दूरस्थ SMTP का उपयोग करता हूं और इसके लिए फ़ील्ड से विशिष्ट नाम की आवश्यकता होती है, लेकिन cron ने इसे root@my.sweet.server.com के रूप में सेट किया है।
मैं इसे कुछ भी कैसे बदल सकता हूँ me@ya.ru?
मैं nullmailer के माध्यम से दूरस्थ SMTP का उपयोग करता हूं और इसके लिए फ़ील्ड से विशिष्ट नाम की आवश्यकता होती है, लेकिन cron ने इसे root@my.sweet.server.com के रूप में सेट किया है।
मैं इसे कुछ भी कैसे बदल सकता हूँ me@ya.ru?
जवाबों:
मुझे नहीं लगता कि आप FROM पते को बदल सकते हैं, (किसी को MAILFROM विकल्प जोड़ना चाहिए)।
समान परिणाम प्राप्त करने के लिए आप ऐसा कुछ कर सकते हैं:
* * * * * /path/to/script 2>&1 | mail -s "Output of /path/to/script" toaddress@example.com -- -r "fromaddress@example.com" -F"Full Name of sender"
सभी आउटपुट को मेल कमांड पर ले जाया जाता है ताकि MAILTO वैरिएबल का उपयोग न हो।
पते को निर्धारित करने की आवश्यकता होगी लेकिन आप $ MAILTO चर का उपयोग करने में सक्षम हो सकते हैं। - बाकी विकल्पों को सेंडमेल विकल्प होने के लिए सेट करता है ताकि आप -r और और -F विकल्पों का उपयोग कर सकें।
-एस विषय है
-r उत्तर पता है
-F प्रेषक का पूरा नाम है (यह ईमेल ग्राहकों में अच्छा दिखता है)
क्रोन के आधुनिक संस्करण "MAILFROM = ..." को Crontab प्रारूप में स्वीकार करते हैं। मेरा सुझाव है कि आप "आदमी 5 कोंट्राब" का प्रयास करें। यदि इसमें MAILFROM का उल्लेख है, तो आपके संस्करण को इसका समर्थन करना चाहिए। वाक्यांश देखने के लिए MAILTO पर चर्चा कर रहे पैराग्राफ के अंत की ओर है, और ऐसा कुछ होना चाहिए:
If MAILFROM is defined (and non-empty), it will be used as the envelope sender address, otherwise, ''root'' will be used.
MAILFROM
है man 5 crontab
।
cronie
बदलने के लिए स्थापित कर सकते हैं cron
। ता-दा: MAILFROM
अस्तित्व:
/ etc / mailname में FROM पते का डोमेन नाम भाग होता है। यदि / etc / mailname में 'somecompany.com' शामिल है, तो रूट के लिए चल रहे क्रॉन को root@somecompany.com के रूप में प्रेषक होगा
आप पर्यावरण चर या कमांड लाइन के माध्यम से पता से nullmailer सेट कर सकते हैं। आदेश पंक्ति तर्क हैं -f
और -F
प्रेषक का पता और पूरा नाम क्रमशः के लिए।
आमतौर पर आप कोंट्रेब में पर्यावरण चर सेट कर सकते हैं।
NULLMAILER_USER=webmaster
NULLMAILER_HOST=host.example.com
NULLMAILER_NAME="Mr Cron"
5 0 * * * /usr/local/bin/daily.sh
मेरे लिए, सिस्टम पर एड्रेस से बदलाव का सबसे आसान तरीका है ~/.mailrc
, इस तरह की सामग्री के साथ एक फाइल बनाना :
set name="My Full Name"
set from="myrealemail@example.com"
mail
मेरे उपयोगकर्ता के रूप में चलने वाली कोई भी कमांड, अब इन सेटिंग्स का उपयोग करें।
एक्ज़िम का उपयोग करते समय यह प्रश्न देखें:
एक्जिम: "हेडर" से "लिफाफे" को लिफाफे में फिर से लिखें।
इसे क्रोनजॉब के मालिक को "से" पता सेट करना चाहिए। आप $header_from:
अपने कस्टम पते से प्रतिस्थापित कर सकते हैं यदि आप इसे किसी और चीज़ के लिए हार्ड-कोड करना चाहते हैं।
एक अन्य सरल विकल्प है म्यूट का उपयोग करना,
निम्नलिखित के साथ क्रोन चलाने वाले उपयोगकर्ता की होम डायरेक्टरी में -muttrc बनाएं
सेट realname = "जो उपयोगकर्ता" से सेट = "उपयोगकर्ता @ होस्ट" सेट use_from = हाँ
इसमें म्यूट कमांड के साथ एक स्क्रिप्ट चलाएं या ईमेल भेजने के लिए म्यूट करने के लिए क्रोन कमांड को पाइप करें।
म्यूट भेजने और ईमेल करने से पहले, यह .muttrc फ़ाइल से से हैडर सेट करेगा।
यह उपयोगकर्ता @ डोमेन से मेल किया जाता है - उपयोगकर्ता लॉगिन नाम है जो क्रोन के तहत चल रहा है - इसलिए आपको एक उपयोगकर्ता 'मुझे' बनाना होगा - और उस उपयोगकर्ता के रूप में क्रोन का काम चलाना होगा।
फिर डोमेन को बदलने के लिए, अलग-अलग संभावनाएं हैं - यह हो सकता है कि आपको होस्ट फ़ाइल प्रविष्टि (या, मेरी मशीन पर, जब मैं इसे कॉन्फ़िगर कर रहा था - एक ubuntu बॉक्स) को बदलने की आवश्यकता है - परिवर्तन / आदि / mailname - आप जिस डोमेन से आना चाहते हैं, वह होना चाहिए।