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

Опять at не срабатывает

 ,


0

1

Уже 2 раза подряд.

$ at 6:00
warning: commands will be executed using /bin/sh
at> mplayer -playlist playlist
at> <EOT>
job 54 at Thu Sep 27 06:00:00 2018

В 6 часов не включается. В логах чисто, только journalctl в 6:00:00 показывает с меткой atd запуск и тут же остановку с сообщением «Exec failed for mail command: No such file or directory».

Если я не ставил sendmail и ничего не настраивал взамен, куда Ubuntu 16.04 по умолчанию пишет сообщения?

Ответ: Если запустить в mplayer видеофайл и сделать mute, то при следующем запуске mplayer с видеофайлом будет нормальная громкость без mute, но при запуске звукового файла будет нулевая громкость, хотя тоже без mute.

★★★★★

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

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

Там atd.service, в котором прописан «/usr/sbin/atd -f».

question4 ★★★★★
() автор топика

Exec failed for mail command: No such file or directory

Поставьте пакет mailx. Sendmail не нужен, нужна команда /bin/mail.

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

Наискосок, полный путь до mplayer и полный путь до playlist

/usr/bin/mplayer и ~/playlist

Запускал, находясь в ~

Точно так же запускал сегодня в 0:31 — отработало нормально.

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

Поставьте пакет mailx. Sendmail не нужен, нужна команда /bin/mail.

А чего-нибудь более примитивного нет? Чтобы просто в файл писало?

P.S. И легковесного — без MySQL.

question4 ★★★★★
() автор топика
Последнее исправление: question4 (всего исправлений: 1)
Ответ на: комментарий от anc

Лучше полный прописать

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

Проблема не в пути, а в том, что одна и та же команда может без видимых причин сработать или отказать.

P.S. Скажем, mplayer может с 5% вероятностью упасть в segmentation fault, когда его запускает atd. При запуске из консоли всё нормально. Как это исследовать, чтобы найти причину?

question4 ★★★★★
() автор топика
Последнее исправление: question4 (всего исправлений: 1)
Ответ на: комментарий от question4

Может ему (atd) при запуске добавить -d и посмотреть логи? Вообще конечно странная ситуация, рандомно можем запуститься а можем нет. Но учитывая вводные mplayer и playlist не исключаю варианта что mplayer может упасть на каком-то из файлов в playlist-е.

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

легковесного — без MySQL.

Погодите, Вы о чем? Какой MySQL? Речь идет о примитивном почтовом клиенте, стандартным для Unix - программе mail. Это ровесник vi, в момент ее создания MySQL даже в проекте не было ;). Даже и не знаю, что может быть легковеснее...

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

Скажем, mplayer может с 5% вероятностью упасть в segmentation fault, когда его запускает atd.

Хм, а с железом точно все в порядке? Обычно такие случайные падения связаны с битой памятью или диском...

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

Погодите, Вы о чем? Какой MySQL? Речь идет о примитивном почтовом клиенте, стандартным для Unix - программе mail. Это ровесник vi, в момент ее создания MySQL даже в проекте не было ;). Даже и не знаю, что может быть легковеснее...

Чтобы сделать доступной mail, Убунту предлагает ставить mailutils, которые весят 14 мегабайт и тянут несколько пакетов mysql. Поставил пока bsd-mailx, который всего 3 М. Тоже чересчур много для программы, от которой требуется функционал пайпа.

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

Хм, а с железом точно все в порядке? Обычно такие случайные падения связаны с битой памятью или диском...

Предыдущая попытка проверить диск привела к утере всех данных на диске :) Сижу с ноута :)

Проверю как-нибудь. Но ещё раз повторю — при запуске руками прослушивание музыки работает без проблем. Даже во время работы чего-то ресурсоёмкого, вроде Гимпа. А вот когда других задач нет, запускаемый atd mplayer внезапно падает.

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

Чтобы сделать доступной mail, Убунту предлагает ставить mailutils, которые весят 14 мегабайт и тянут несколько пакетов mysql.

Охренеть... IMHO, проще отдельно mailx из исходников собрать...

Вот, например. 317 kB. http://www.linuxfromscratch.org/blfs/view/svn/basicnet/mailx.html

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

А чего-нибудь более примитивного нет?

В *nix должен быть /bin/mail, на это рассчитывают очень многие.

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

Чтобы сделать доступной mail, Убунту предлагает ставить mailutils, которые весят 14 мегабайт

1. Можно попросить мантейнера распилить пакет.
2. Там выше советовали mailx. В нём только mail. GNU Mailutils - это «и ещё /bin/mail»

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

Проверю как-нибудь.

Самое простое, что ничего не стоит: smartctl -t long /dev/sda, смотреть потом в выхлопе smartctl -a /dev/sda. Тут уже от hdd зависит, некоторые показывают процесс, некоторые только после завершения результат показывают. Работе не мешает, только выключать не нужно.

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

Там выше советовали mailx. В нём только mail.

bsd-mailx — это оно же? Уже поставил. Всё равно 3 мегабайта для пайпа :)

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

Вот, например. 317 kB. http://www.linuxfromscratch.org/blfs/view/svn/basicnet/mailx.html

Спасибо, но это, похоже, я в итоге и поставил. 300 килобайт исходников в архиве превращаются в 3 мегабайта бинарников.

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

Бинарный пакет в генте для mailx с зависимостями -

pinkbyte@oas1 /usr/portage/packages $ ls -lah ./mail-client/mailx-8.1.2.20160123.tbz2 
-rw-r--r-- 1 root root 84K авг 31 22:00 ./mail-client/mailx-8.1.2.20160123.tbz2
pinkbyte@oas1 /usr/portage/packages $ ls -lah ./net-libs/liblockfile-1.09.tbz2
-rw-r--r-- 1 root root 49K авг 31 21:03 ./net-libs/liblockfile-1.09.tbz2
pinkbyte@oas1 /usr/portage/packages $ ls -lah ./dev-libs/libbsd-0.9.1.tbz2 
-rw-r--r-- 1 root root 226K сен 25 12:05 ./dev-libs/libbsd-0.9.1.tbz2
pinkbyte@oas1 /usr/portage/packages $ ls -la mail-client/mailx-support-20060102-r2.tbz2 
-rw-r--r-- 1 root root 26395 авг 31 16:41 mail-client/mailx-support-20060102-r2.tbz2

~500Кб всего. Но у тебя бинарный дистрибутив, там наверняка собрано по максимуму, да...

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от Deleted

что systemd у него есть.

А где-то нет. И что он потом делать будет? А cron - классика. И не только в Linux.

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

А где-то нет

atd тоже типа далеко не везде есть.

А вообще, я:

  • сразу упомянул, что не флейма ради
  • спрашивал не тебя

Поэтому дальнейшую дискуссию с тобой об этом считаю бессмысленной.

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

atd тоже типа далеко не везде есть.

Что не везде есть!?

$ rpm -qf /usr/bin/at
vixie-cron-4.1.20060426-alt10

Вот vixie-cron да, не везде. Но берём RH 7.2:

$ rpm -qf /usr/bin/at
at-3.1.8-23

iZEN можно про BSD спросить.

AS ★★★★★
()
Ответ на: комментарий от AS
[ecko@work ~]$ /usr/bin/at
-bash: /usr/bin/at: No such file or directory
[ecko@work ~]$ cat /etc/os-release
NAME=Fedora
VERSION="28 (Workstation Edition)"
ID=fedora
VERSION_ID=28
PLATFORM_ID="platform:f28"
PRETTY_NAME="Fedora 28 (Workstation Edition)"
ANSI_COLOR="0;34"
CPE_NAME="cpe:/o:fedoraproject:fedora:28"
HOME_URL="https://fedoraproject.org/"
SUPPORT_URL="https://fedoraproject.org/wiki/Communicating_and_getting_help"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=28
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=28
PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy"
VARIANT="Workstation Edition"
VARIANT_ID=workstation
[ecko@work ~]$ dnf search vixie-cron
Last metadata expiration check: 0:18:03 ago on Fri 28 Sep 2018 14:44:56 MSK.
========================================================================= Description Matched: vixie-cron ==========================================================================
cronie.x86_64 : Cron daemon for executing programs at set times
[ecko@work ~]$ rpm -ql cronie
/etc/cron.d
/etc/cron.d/0hourly
/etc/cron.deny
/etc/pam.d/crond
/etc/sysconfig/crond
/lib/systemd/system/crond.service
/usr/bin/crontab
/usr/lib/.build-id
/usr/lib/.build-id/7b
/usr/lib/.build-id/7b/a42842f1d536cf9c5a3bc99a4c1160dda07ad6
/usr/lib/.build-id/aa
/usr/lib/.build-id/aa/ab30d8a7486a5051a4293fe81f056dfc987070
/usr/sbin/crond
/usr/share/doc/cronie
/usr/share/doc/cronie/AUTHORS
/usr/share/doc/cronie/ChangeLog
/usr/share/doc/cronie/README
/usr/share/licenses/cronie
/usr/share/licenses/cronie/COPYING
/usr/share/man/man1/crontab.1.gz
/usr/share/man/man5/crontab.5.gz
/usr/share/man/man8/cron.8.gz
/usr/share/man/man8/crond.8.gz
/var/spool/cron

Пакет at есть, но он не предустановлен. Ни в федоре, ни в убунте. systemd предустановлен на обеих машинах.

Количество дистрибутивов, в которых предустановлен at, значительно меньше, чем количество дистрибутивов с systemd. Поэтому давай-ка ты тут не будешь мне втирать за at как не-вендор-специфик?

Deleted
()
Последнее исправление: ecko (всего исправлений: 2)
Ответ на: комментарий от question4

Где 3 метра?

$ apt show bsd-mailx
Package: bsd-mailx
Version: 8.1.2-0.20160123cvs-4
...
Installed-Size: 169 kB
...
Download-Size: 87,0 kB

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

«Секундочку я записываю» у ТС вопрос про atd а не про cron.

Ну просто в последнее время (десятка полтора лет) много где завёлся vixie cron, а at - его компонент. Но где не vixie, то там просто at есть. :-)

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

systemd предустановлен на обеих машинах.

А у меня вот нигде. А за пределами Linux его вообще нет. А at есть.

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

А у меня вот нигде

Искренне и по-доброму рад за тебя. Только ещё раз, на секундочку, вопрос был задан не тебе

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

Только ещё раз, на секундочку, вопрос был задан не тебе

Извини. Но утомило «systemd во все щели». Тебя, опять же, не спрашивали, как это сделать с помощью systemd.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 2)
Ответ на: комментарий от Deleted

Не флейма ради, а интереса для: а почему не systemd-timer?

Привычка. На основном десктопе Gentoo, где уже лет 10 для этого пользуюсь at.

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

Так можно же поставить mailx и проверить, на что ругается at.

Как замечено выше, at действительно мало где установлен в нынешнее время и его единственный путь общения с пользователем — это почта.

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

Так же команду можно на месте подебажить, примерно так: echo 'command args' | at now + 2 minutes, но учитывая, что Вы 10 лет уже пользуетесь, думаю сами знаете, потому вопрос — что же он на почту пишет?

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

Так можно же поставить mailx и проверить, на что ругается at.

Уже вторые сутки стоит. Пока повторения не было.

question4 ★★★★★
() автор топика
$ at 7:00
warning: commands will be executed using /bin/sh
at> mplayer -playlist playlist
at> <EOT>
job 82 at Mon Oct 15 07:00:00 2018

И далее в 8:15:

$ atq
$ mail
Mail version 8.1.2 01/15/2001.  Type ? for help.
"/var/mail/oleg": 2 messages 2 new
>N  1 oleg@oleg-Lenovo-  Fri Oct 12 09:07  587/1770851 Output from your job       80
 N  2 oleg@oleg-Lenovo-  Sat Oct 13 08:49  449/1274977 Output from your job       81
& 
& 
& 
At EOF
& q
$ mail
Mail version 8.1.2 01/15/2001.  Type ? for help.
"/var/mail/oleg": 2 messages 2 new
>N  1 oleg@oleg-Lenovo-  Fri Oct 12 09:07  587/1770851 Output from your job       80
 N  2 oleg@oleg-Lenovo-  Sat Oct 13 08:49  449/1274977 Output from your job       81
& 
& 
& 
At EOF
& q
Saved 2 messages in /home/oleg/mbox
То есть atd отработал, не оставив следов в почтовом ящике, либо что-то удалило задачу до 7:00.

journalctl выдаёт 1 упоминание atd и ни одного mplayer:

окт 15 06:40:19 oleg-Lenovo-B590 pkexec[22758]: oleg: Executing command [USER=root] [TTY=unknown] [CWD=/home/oleg] [COMMAND=/usr/lib/update-notifier/package-system-locked]
окт 15 07:00:00 oleg-Lenovo-B590 atd[22841]: pam_unix(atd:session): session opened for user oleg by (uid=1)
окт 15 07:06:07 oleg-Lenovo-B590 wpa_supplicant[952]: wlx60e327164cd0: WPA: Group rekeying completed with fc:8b:97:74:85:48 [GTK=CCMP]
То есть atd хотя бы стартовал вовремя.

В /var/log/ смотрел: alternatives.log, apport.log, auth.log, btmp, kern.log, mail.log, syslog, Xorg.*.log. Ничего интересного в районе 7:00. Куда копать дальше?

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

Возьми консольный плейер независимый от Х-ов!

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

Возьми консольный плейер независимый от Х-ов!

Для mp3 он иксы не задействует.

$ cat ~/.xsession-errors
openConnection: connect: No such file or directory
cannot connect to brltty at :0
$ ls -l ~/.xsession-errors
-rw------- 1 oleg oleg 82 окт 13 19:06 /home/oleg/.xsession-errors

Ничего нового с момента включения. Заодно:

$ sudo ls -l /root/.xsession-errors
ls: cannot access '/root/.xsession-errors': No such file or directory
Другие идеи есть?

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

Другие идеи есть?

Убедиться что Х-ы не будут задействованы и писать в лог

$ at 6:00
warning: commands will be executed using /bin/sh
at> exec  >> /tmp/my_at.log
at> exec 2>> /tmp/my_at.err
at> unset DISPLAY
at> mplayer -playlist playlist
at> <EOT>
futurama ★★★★★
()
Ответ на: комментарий от futurama

Убедиться что Х-ы не будут задействованы

Чем они могут помешать? И как убедиться?

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

Сегодня это оказалась неисправность колонок :( Mailx весь день писал лог mplayer-а, но в итоге не смог его послать из-за большого размера :( Пайп был бы лучше.

question4 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.