LINUX.ORG.RU
решено ФорумAdmin

Отправка файлов на почту

 , , ,


0

1

Здравствуйте. Простенькая задачка. Есть сервер с Astra Linux, там файлы лежат, хочу их отправлять каждую пятницу на почту mail.ru Теоретически понимаю что надо smtp установить на него, потом там настроить, а отправку конкретных файлов как настроить? Написать какой скрипт и его в cron прописать? А может воспользоваться SendMail`ом? тогда там надо скрипт писать отдельно вроде. Или есть готовые решения какие?

Перемещено hobbit из general

Ответ на: комментарий от akk

Установил, но проблема с отправкой файла. Если вручную запустить просто через mutt и руками выбрать файл и прикрепить, то работает, а вот если через ключ -a с указанием полного пути, то пишет что не удалось прикрепить файл

zawibis
() автор топика

Ещё как альтернативный вариант (у самого так) - написать скрипт на php/python, который подключается к удалённному smtp серверу и шлёт с него. Теоретически можно самому себе слать мейл.

skyman ★★★★
()
Ответ на: комментарий от mord0d

сервер то у меня есть. Я это в домене организации делаю. Проблема именно в строчке с отправкой файла. Через интерфейс всё норм отправляет, а я бы хотел команду в крон засунуть и всё.

msmtp умеет отправлять файлы? Я загуглил и там наоборот люди ищут как это сделать

zawibis
() автор топика
Ответ на: комментарий от zawibis

msmtp умеет отправлять файлы?

В email нет такого понятия как файл. (=

Я загуглил и там наоборот люди ищут как это сделать

Формировать письмо с аттачами можно перлом.

mord0d ★★★★★
()
Ответ на: комментарий от zawibis

Это скрипт который письма по smtp шлет (потребуется валидный аккаунт для отправки, но думаю это не будет проблемой), вот тут примеры:
https://tecadmin.net/how-to-install-sendemail-in-linux/
Файлы через -a добавлять

Kolins ★★★★★
()
Последнее исправление: Kolins (всего исправлений: 1)

хочу их отправлять каждую пятницу на почту mail.ru

Если тебе в качестве бэкапа это всё - лучше рассмотри отправку в тот же мейлру, но в облако. По WebDAV можно подмонтировать диск на сервер и дальше уже как тебе удобно (по расписанию или еще как) сбрасывать туда нужное.

тут для линя инструкции гуёвые

frunobulax ★★★
()
(echo "From: <me@middle.of.nowhere>"; echo "To: <you@lost.in.space>"; echo "Subject: file.txt"; echo "MIME-Version: 1.0"; echo "Content-type: application/octet-stream; filename=\"file.txt\""; echo "Content-Disposition: attachment; filename=\"file.txt\""; echo "Content-transfer-encoding: base64"; echo; base64 file.txt) | /sbin/sendmail -t

если нет /sbin/sendmail то можно поставить какой-нибудь агент пересылки электронной почты, например, nullmailer

No ★★
()
Ответ на: комментарий от zawibis

mutt уже советовали должен работать проверяй команду может у тебя в имени файла или пути пробелы или еще что-то

можно еще так через uuencode:

uuencode /путь/к/файл.bin файл.bin | mail -s «Тема письма» recipient@example.com

ну или вcе заголовки для multipart и через base64

cylon17
()
Ответ на: комментарий от cylon17

Вот сам не понимаю почему не работает. Пишу путь к файлу и открываю через nano нормально. Пишу так: mutt -a /home/test.file -- primer@test.ru

uuencode пока не пробовал. В нашем репозитории его нет, а если ставить пакет отдельно, то скорее всего будет тянуть за собой ещё кучу зависимостей надолго

zawibis
() автор топика
Ответ на: комментарий от zawibis

а, вот, заставил отправлять такой строчкой, что выше написал. только всё равно просит выполнять действия руками типа подтверждения, а это значит что в кроне выполнятся не будет.

zawibis
() автор топика