Ubuntu 16.04LTS Создайте работу Cron в cron.daily, которая отобразит содержимое auth.log в папку в домашнем каталоге каждого пользователя?

Ubuntu 16.04 LTS user

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

Это мой личный проект, который помогает мне привыкнуть к настройке системных заданий и сценариев, которые будут выполняться ежедневно / ежемесячно / в любое время.

Я уже (неэффективно) создал несколько папок для 10-12 пользователей на моей машине Ubuntu, где я хочу, чтобы это задание выполнялось. Он находится в их домашнем каталоге в папке под названием ulogs. Это папка, в которой я буду надеяться, что у меня создаются различные системные задания, сохраняющие файлы для каждого пользователя в системе.

Я знаю, что эта работа должна быть создана в cron.daily в качестве скрипта. Я знаю, как часто я хочу запускать его, возможно, дважды в день в какой-то момент, но начинаю с раз в день прямо сейчас.

В сценарии, какой протокол должен сохранить содержимое / конечный результат задания в созданной и выбранной папке, где я хочу сохранить файл задания txt?

Для этого задания я хочу сохранить содержимое auth.log (сценарий cron в основном «cat /var/log/auth.log» / home / Users (1-12) / ulogs / daily-signin. txt ")

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

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

Пожалуйста, помогите!

1
задан 3 December 2017 в 08:49

2 ответа

следующая программа создает текстовый файл с названием daily-signin.txt в директорию ulogs под всех пользователей домашний каталог, если вы запустите это в корневой.

#!/bin/bash path="/path/to/source/file"; for p in `cat "$path"`; do log=`cat /var/log/auth.log`; mkdir -p /home/$p/ulogs/ echo "$log" >> /home/$p/ulogs/daily-signin.txt done

Примечания

файл /path/to/source/file содержит список пользователей в вашей машине. Если новый пользователь создан, и вы хотите получить файл журнала в доме, что каталог пользователя, а также, вы должны добавить новое имя пользователя в файле source.txt . Как этот файл создается на домашнего каталога другого пользователя, вы должны запустить этот скрипт с sudo privileges если вы используете этот скрипт в процентах, вы можете пройти по этой ссылке для того, чтобы это сделать.
0
ответ дан 18 July 2018 в 01:58

Следующая программа создаст текстовый файл с именем daily-signin.txt в каталоге с именем ulogs под домашним каталогом всех пользователей, если вы запустите его как root.

#!/bin/bash path="/path/to/source/file"; for p in `cat "$path"`; do log=`cat /var/log/auth.log`; mkdir -p /home/$p/ulogs/ echo "$log" >> /home/$p/ulogs/daily-signin.txt done

Указывает на примечание

Файл /path/to/source/file содержит список пользователей вашего устройства. Если какой-либо новый пользователь создал и вы хотите получить файл журнала в домашнем каталоге этого пользователя, вы должны добавить новое имя пользователя в файл source.txt. Поскольку этот файл создается в домашнем каталоге другого пользователя, вам нужно будет запустить этот сценарий оболочки с помощью sudo privileges. Если вы используете этот скрипт как cronjob, вы можете перейти по этой ссылке, чтобы это сделать.
0
ответ дан 24 July 2018 в 17:29
  • 1
    Я хочу поблагодарить вас за то, что вы нашли время, чтобы ответить на это. Я отдам это и дам вам знать, как все получилось. Еще одно замечание, я добавил пользователя в группу «root». Когда я попытался перечислить пользователей crontab, он сказал, что «должно быть привилегировано использовать -u» после запуска crontab -e -u & lt; USER & gt ;. Эта учетная запись является частью корневой группы и группы sudo. Я решил, что он должен иметь возможности root. Это побочное замечание, я пойду проверю, что вы опубликовали. – Final Luminary 3 December 2017 в 21:59
  • 2
    @FinalLuminary Вы пробовали? – Rooney 4 December 2017 в 11:34

Другие вопросы по тегам:

Похожие вопросы: