Консультация № 17482
25.02.2005, 15:43
0.00 руб.
0 3 3
Здравствуйте, уважаемые эксперты.
Есть RedHat 9 . Как можна сделать, чтобы когда определенный юзер заходит в систему , запускалась бы определенная комманда.
Заранее спасибо.
jack_mob2

Обсуждение

Неизвестный
25.02.2005, 19:45
общий
это ответ
Здравствуйте, jack_mob2!
в зависимости от его щело прописать запуск в профиль
Неизвестный
27.02.2005, 14:44
общий
это ответ
Здравствуйте, jack_mob2!
Смотря что ты хочешь сделать...
Если тебе нужно, чтобы админ знал, что зашел определенный юзверь, то можно сделать так:
#!/bin/sh
while true
do
if [[ $(/usr/bin/who|/bin/cut -f 1 -d " "|/bin/grep $1) != $(/bin/date|/bin/grep bla-bla-bla) ]] ;
then
echo est!
else
echo net!
fi
sleep 30
done
Думаю, разберешься в нем. И его запустить в фоновом режиме - каждые 30 секунд он будет проверять, не зашел ли юзверь в систему и выводить сообщение об этом. Вместо вывода сообщений можешь вставить свои команды. Запускать его надо в таком виде: $/{path_to_file}/{file_name} petya, т.е. имя этого юзверя передается в качестве параметра. Можешь его переделать так, чтобы он проверял не только одного юзверя. И админу можно сообщать дополнительную инфу о юзвере - типа с какого терминала вошел и т.п.
Так же можно и запускать юзверю что-нибудь - например, хочешь его поприветствовать - из who режешь второе поле (терминал) и кидаешь туда мессагу, а заодно и в лог себе все записываешь.
Неизвестный
27.02.2005, 15:13
общий
это ответ
Здравствуйте, jack_mob2!
Если необходимо запускать программу при логине любого пользователя, пропиши ее в /etc/profile.
В этом же файле можно добавить проверку на входящего пользователя - переменные $USER, $UID.
Если запускать нужно только у нескольких пользователей, тогда пропиши в ~/.bash_proile.
Форма ответа