Gyakran hasznos lehet, ha parancssorból tudunk emailt küldeni. Például, ha letöltődött egy torrent, beállíthatjuk Transmission-ben, hogy küldjön egy figyelmeztető emailt nekünk, vagy bármilyen más esemény esetén is megtehetjük ezt. Egy szerverként használt Raspberry Pi-nél ez egy hasznos figyelmeztető lehetőség lehet.
Arra gondoltam, hogy ez akkor lehetne igazán hasznos, hogyha a saját Gmail-es címemről tudnék írni, így rákerestem használhatnám-e a Gmail SMTP szerverét levelezésre konzolból. Sajnos (:D) találtam egy elég szép megoldást, így most nem kellett semennyit se kódolnom. Ezen az oldalon találtam egy szkriptet, amely a mailx és msmtp programok config fájljait készíti elő a Gmail SMTP szerverével való kommunikációra.
Itt letölthetjük a szkriptet, majd futtatás előtt a /tmp/test_email fájlba kell írni valamilyen szöveget, amit tesztelésként elküldünk magunknak:
Ezután nyissuk meg a fájlt:echo "Ez egy teszt mail." > /tmp/test_email
gedit setup_gmail_command_line.sh
Majd állítsuk be a Gmail felhasználónkat, és jelszavunkat a következő résznél
GMAIL_USER='YOUR_GMAIL_USER_NAME'Ekkor már elindíthatjuk a programot:
GMAIL_PASS='YOUR_GMAIL_USER_PASSWORD'
chmod +x setup_gmail_command_line.shsudo ./setup_gmail_command_line.sh install
Ha minden jól ment mostmár küldhetünk emaileket akár parancssorból is a következő paranccsal:
mailx -s "email tárgya" -a /csatolmányelérésiút/csatolmány.zip címzett@valami.hu < /emailszövegelérésiút/email.txt
vagy, ha sietünk nem is kell külön fájlba megírni az email törzsét:
echo "teszt" | mailx -s "tesztmail" címzett@valami.hu
-s kapcsolóval adható meg az email tárgya, -a kapcsolóval a csatolmány (ez el is hagyható), utána a címzett, majd az emailünk törzse.
Kiegészítésként megírom, hogyha saját teljes nevünkön akarjuk elküldeni az email-t, akkor a szkript 107-ik sorában módosítani kell a "($GMAIL_USER)"-t, a következőképpen:
19-ik sorba írjuk be egy változóba a teljes nevünk:
majd a 107-ikben:$GMAIL_FULLNAME='Teljes Név'
set from="$GMAIL_USER@gmail.com ($GMAIL_FULLNAME)"
Update: Nem rég vettem észre, hogy a syslog tele van a következőhöz hasonló hibákkal:
Warning: program /usr/sbin/sensible-mda unsafe: No such file or directory
SYSERR(root): Cannot exec /usr/sbin/sensible-mda: No such file or directoryRövid utánaolvasás után azt találtam, hogy a cikkben említett telepítőszkript, nem telepíti a sendmail program egy függőségét, így az egy csomó hiba forrása lesz. A helyes működéshez szükség van a következő program telepítésére is:
sudo apt-get install sensible-mda
echo "Ez egy teszt mail." > /tmp/test-email
VálaszTörlésHelyesen :
echo "Ez egy teszt mail." > /tmp/test_email
A test_email-ben aláhúzás jel van kötőjel helyett.
Szia,
Törlésköszönöm a helyesbítést, javítva! :)
Én meg a leírást köszönöm! Nagyon jól jött!
TörlésKedves Közzétevő! A fenti leírást követve első alkalommal rosszul adtam meg a felhasználó név / jelszó párosítást a *.sh fájlban. Javítást követően újra lefuttattam, de továbbra is azt írja, hogy nem megfelelő felhaszn./ jelszó párosítás. Mi lehet a probléma?
VálaszTörlés