แพคเกจที่ต้องติดตั้งสำหรับการส่งอีเมลจาก localhost Ubuntu


14

ฉันติดตั้ง Ubuntu บนเซิร์ฟเวอร์แล้ว ฉันต้องการ cronjobs ที่จะส่งอีเมลถึงฉันสำหรับการส่งออก

ฉันจะส่งอีเมลจากเทอร์มินัลได้อย่างไร สิ่งใดที่ฉันต้องติดตั้งและฉันจะตั้งค่า smtp หรือ pop ในโปรแกรมนั้นได้อย่างไร

คำตอบ:


9

ฉันเชื่อว่าmailxคือสิ่งที่คุณกำลังมองหา

sudo apt-get install bsd-mailx 

สิ่งนี้จะติดตั้ง postfix อย่างน้อยที่สุดและจะให้ตัวเลือกสองสามอย่างแก่คุณในการตั้งค่า postfix หากคุณมีเซิร์ฟเวอร์ SMTP บน LAN ของคุณให้เลือก 'ระบบดาวเทียม' จากนั้นป้อนชื่อโดเมนอีเมลและที่อยู่ IP สุดท้ายของเซิร์ฟเวอร์ SMTP ของคุณ

ใช้:

echo $MESSAGE_BODY | /bin/mail -s "$SUBJECT" "$RECIPIENT_ADDRESS"

คุณยังสามารถใช้ไฟล์สำหรับเนื้อความ:

/bin/mail -s "$SUBJECT" "$RECIPIENT_ADDRESS" < /tmp/message.txt

มันบอกว่าไม่มีไฟล์ postfix / main.cf ฉันจะดาวน์โหลดไฟล์นั้นได้อย่างไร

เมื่อคุณติดตั้ง mailx มันควรจะทำงานผ่านหน้าจอการติดตั้งสำหรับ postfix มันถามคุณว่าติดตั้งแบบไหนและสำหรับชื่อเมลและโฮสต์โฮสต์ และเมื่อใดที่ทำให้เกิดข้อผิดพลาดเมื่อคุณเรียกใช้ / bin / mail หรือเมื่อคุณพยายามติดตั้ง
nedm

มันไม่ได้ถามอะไรเลยฉันจะถอนการติดตั้งและทำเช่นนั้นได้อย่างไร

หากคุณติดตั้ง postfix เป็นส่วนหนึ่งของการติดตั้งอื่นดูเหมือนว่าอาจไม่ได้รับการกำหนดค่าอย่างถูกต้อง ลองใช้ "sudo dpkg-reconfigure postfix" แล้ว "sudo /etc/init.d/postfix reload"
nedm

หากไม่ได้ติดตั้ง postfix ให้ "sudo apt-get remove mailx" แล้ว "sudo apt-get install mailx" และควรติดตั้ง postfix ด้วยแพ็คเกจ mailx
nedm

6

ssmtpแพคเกจเป็นที่นิยมสำหรับวิธีการได้อย่างง่ายดายเพื่อส่งอีเมลจากกล่องอูบุนตู นี่คือบทช่วยสอนเพื่อตั้งค่าให้ใช้ gmail


และง่ายกว่า / เร็วกว่าสำหรับการเริ่มต้นใช้งานกว่า postfix
hometoast

ssmtp ยังคงเป็นเอเจนต์เมลที่ดีที่สุดจนถึงตอนนี้สำหรับใช้ในเว็บเซิร์ฟเวอร์เพราะมันเป็นเพียงการกำหนดค่าเท่านั้นคือวิธีการเชื่อมต่อกับเซิร์ฟเวอร์ SMTP มันจะช่วยประหยัดเพื่อให้เวลามากเมื่อเทียบกับการกำหนดค่า postfix โดยเฉพาะอย่างยิ่งถ้าคุณไม่ได้พยายามมันก่อน มันขึ้นอยู่กับกรณีการใช้งานอย่างไรและ mailx อาจจะง่ายต่อการใช้งานถ้าคุณส่งอีเมลจากบรรทัดคำสั่ง :)
สตีSchütt

1
ลิงก์ใช้งานไม่ได้ Ubuntu มีคู่มือสำหรับการตั้งค่า ssmtp
Nattgew

4

หากคุณไม่ต้องการที่จะยุ่ง ๆ กับการกำหนดค่า Postfix (ซึ่งอาจจะเป็นความเจ็บปวดอันยิ่งใหญ่) ชำระเงินมรดกสืบทอด mailxแพคเกจ(sudo apt-get install มรดกสืบทอด mailx)

นี่เป็นอีกทางเลือกหนึ่งของคำสั่ง mail ที่ให้คุณระบุเซิร์ฟเวอร์ SMTP ภายนอก สำหรับสคริปต์ cron แบบง่ายมันเหมาะ

โฮมเพจ: http://heirloom.sourceforge.net/mailx.html

หน้าคน: http://heirloom.sourceforge.net/mailx/mailx.1.html



1

ฉันใช้การตั้งค่ามาตรฐานในร้านค้าของฉันและฉันพบว่าแพ็คเกจ mailutils สมบูรณ์แบบสำหรับการทำสิ่งต่าง ๆ เช่นการส่งอีเมลอัตโนมัติจาก cronjobs เป็นต้นง่ายมากในการตั้งค่าผ่านผู้ช่วยปรับแต่ง ncurses

sudo aptitude install mailutils 
sudo dpkg-reconfigure exim4-config

ตัวเลือกinternet site; mail is sent and received directly using SMTPทำงานได้ดีที่สุดสำหรับฉัน (ตามที่ฉันต้องการส่งเป็นส่วนใหญ่) คุณยังสามารถตั้งค่าที่อยู่รากของคุณไปข้างหน้าผ่านการตั้งค่านี้

จากนั้นคุณสามารถส่งอีเมลโดยใช้บรรทัดคำสั่ง (บางคนด้านบนให้ตัวอย่าง) แต่ฉันใช้:

mail -s "AVScan completed on HOSTNAME" avnotifications@somedomain.com

หวังว่านี่จะช่วยได้


1

การติดตั้งล่าสุดที่ฉันทำอยู่บน Ubuntu 11.10 ด้วยคำสั่ง:

sudo apt-get install postfix mailutils

และถ้าคุณต้องการอ่านเพิ่มเติมเกี่ยวกับ postfix มันทำงานอย่างไรและทดสอบอย่างไร: PostfixBasicSetupHowto

คุณสามารถใช้mailคำสั่งใน cronjob ได้ ดู man page ของคำสั่งเพื่อดูตัวเลือกและการใช้งาน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.