Используйте это:
today_date="$(date +%Y%m%d)" # use $(...) to assign the output of a command to a variable
declare -a nodeid=(...)
for id in "${nodeid[@]}"; do
[ -e "${today_date}_MPS_Cust_dump_${id}.list.Z" ] || echo "$id is not downloaded"
done | mail -E -s "Subject" user@example.com
nodeid
.
[ -e "..." ]
проверяет, существует ли файл с заданным именем в текущем каталоге|| echo "..."
печатает сообщение, если файл не существует| mail ...
все передается в mail
, -s
определяет тему, -E
не отправляет письмо, если тело пустое (все файлы существуют), а последний аргумент - адрес. У меня была та же проблема с учетными записями -демоном , который загружал ЦП почти на 100% в Ubuntu 16.04.
Короче говоря, основная причина заключалась в последовательной консоли agetty-s, постоянно (то есть несколько раз в минуту )перезапускал systemd .
(Я признаю, что не совсем точно ответил на главный вопрос Сэма -, то есть полностью отключил wtmp -, но другие люди, попавшие в беду, скорее всего, найдут эту страницу -, как и я )
.==
Подробности для любопытных:
[6] [30697] [tyS2] [ВХОД ] [ttyS2 ] [ ] [0.0.0.0 ] [Вс 30 декабря 07 :19 :34 2018 CET]
[6] [30698] [tyS1] [ВХОД ] [ttyS1 ] [ ] [0.0.0.0 ] [Вс 30 декабря 07 :19 :34 2018 CET]
[8] [30698] [tyS1] [ ] [ttyS1 ] [ ] [0.0.0.0 ] [Вс 30 декабря 07 :19 :44 2018 CET]
[8] [30697] [tyS2] [ ] [ttyS2 ] [ ] [0.0.0.0 ] [Вс 30 декабря 07 :19 :44 2018 CET]
[5] [30707] [tyS2] [ ] [ttyS2 ] [ ] [0.0.0.0 ] [Вс 30 декабря 07 :19 :44 2018 CET]
[6] [30707] [tyS2] [ВХОД ] [ttyS2 ] [ ] [0.0.0.0 ] [Вс 30 декабря 07 :19 :44 2018 CET]
[8] [30707] [tyS2] [ ] [ttyS2 ] [ ] [0.0.0.0 ] [Вс 30 декабря 07 :19 :48 2018 CET]
Действительно, некоторые последовательные консоли каким-то образом были активированы(systemctl | grep ttyS. *сервис ),который я удалил с помощью таких команд, как "systemctl disable getty@ttyS2.service"(Я понятия не имею, почему и как эти серийные агенты -были активированы, но это очень старая система.)
wtmp немедленно перестал расти, и демон учетных записей -исчез из верхнего вывода. Я предполагаю, что демон учетных записей -активируется только для новых записей wtmp, поэтому, даже если он неэффективен, сейчас он запускается редко.
Ура :Арпад
Will it solves my problems?
Es poco probable. En 2012, Chris Siebenmann observó que el servicio de cuentas, que es un servidor de bus de escritorio de todo el sistema -, funcionaba de una manera muy ineficiente y poco fiable. Algunos de los problemas en su arquitectura que se destacaron entonces parecen permanecer hasta el día de hoy. Las formas en que maneja varias bases de datos, incluida la base de datos de inicio de sesión y la base de datos de cuentas, aún implican algunos escaneos completos de la tabla. Y las adiciones específicas de Debian -que tienen programas de superusuario que analizan los scripts de shell proporcionados por el usuario -todavía están allí.
Cuando se señaló que un parche que intentaba mejorar los problemas de rendimiento asumía un sistema de contraseña oculto basado en la base de datos de cuentas de la versión 7 de Unix y la API concomitante, y se rompió en los BSD modernos que cambiaron la base de datos de cuentas propiamente dicha de dos puntos sin clasificar -separó 1 -línea -por -archivos de registro en archivos indexados de Berkeley DB, la respuesta en el rastreador de errores de Freedesktop de uno de los autores del programa fue que los BSD quizás deberían volver al sistema anterior; perdiendo por completo el punto de que la ineficiencia del acceso a la tabla era parte del problema.