Нужен скрипт который выводит список активных пользователей (которые делали что то в своем каталоге ) пользователей в текстовый файл . Не из под рута команды w и who выводили инфу только об моем пользователе =\
#!/bin/sh
while sleep 1;do w>>file;done
Скрипт shell список юзеров .
Модератор: Модераторы разделов
-
- Сообщения: 2268
- Статус: Линукссаксовец
- ОС: MS Windows XP Home SP3
Re: Скрипт shell список юзеров .
Не понятно.
Хотите получить список пользователей, которые создавали, меняли или просматривали файлы в свой домашней директории за какой интервал времени?
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
-
- Сообщения: 11
Re: Скрипт shell список юзеров .
Мне нужен первый скрипт просто список пользователей которые существует и второй активные пользователи которые входили в систему и создавали, меняли или просматривали файлы . И нужна куча матчасти по этому делу для РГР , где читал факи информации очень мало , хотя бы комменты к коду . Инфу про шелл , группу пользователей и т.д .
-
- Сообщения: 2268
- Статус: Линукссаксовец
- ОС: MS Windows XP Home SP3
Re: Скрипт shell список юзеров .
список все пользователей которые есть в системе
cat /etc/passwd | cut -f1 -d:
или
getent passwd | cut -f1 -d:
кто входил в систему за последнее время
last
в момент входа, совершенно точно идет просмотр некоторых файлов в домашнем каталоге.
если надо искать пользователей которые создавали или меняли файлы, то тут надо использовать команду find и иметь права просматривать содержимое домашних каталогов пользователей. Или включить аудит.
что такое РГР?
"Инфу про шелл" можно почитать тут http://www.opennet.ru/docs/RUS/bash_scripting_guide/
а для общего развития вот http://www.intuit.ru/catalog/os/unix/
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
-
- Сообщения: 11
Re: Скрипт shell список юзеров .
РГР- расчетно графическая работа .
echo `date` >> log.txt
cut -d: -f1 /etc/passwd >> log.txt
Как мне выбрать активных пользователей ? а тех кто не входили удалить из лога ?
echo `date` >> log.txt
cut -d: -f1 /etc/passwd >> log.txt
Как мне выбрать активных пользователей ? а тех кто не входили удалить из лога ?
-
- Сообщения: 283
- ОС: Debian
Re: Скрипт shell список юзеров .
Ну как то так:
З.Ы. У нас РГЗ называется а не РГР
Код: Выделить всё
for i in `cut -d: -f1 /etc/passwd`
do
[ "`last -1 $i | head -n 1`" ] && echo "$i" >> log.txt
done
З.Ы. У нас РГЗ называется а не РГР

remote system type is unix
-
- Сообщения: 11
Re: Скрипт shell список юзеров .
Как написать то же самое на Си ?
-
- Сообщения: 2268
- Статус: Линукссаксовец
- ОС: MS Windows XP Home SP3
Re: Скрипт shell список юзеров .
команда who берет информацию из файла /var/run/utmp
а команда last из /var/log/wtmp
(а lastb из /var/log/btmp)
К сожалению эти файлы бинарные. К счастью есть библиотека (и библиотечные функции) для работы с этим файлом. К сожалению я не помню их названий. К счастью Вы можете глянуть исходные коды команд who last и lastb.
Удачи.
а команда last из /var/log/wtmp
(а lastb из /var/log/btmp)
К сожалению эти файлы бинарные. К счастью есть библиотека (и библиотечные функции) для работы с этим файлом. К сожалению я не помню их названий. К счастью Вы можете глянуть исходные коды команд who last и lastb.
Удачи.
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
-
- Сообщения: 11
Re: Скрипт shell список юзеров .
cut -d: -f1 /etc/passwd как это через функцию fopen открыть ?
-
- Сообщения: 2268
- Статус: Линукссаксовец
- ОС: MS Windows XP Home SP3
Re: Скрипт shell список юзеров .
file1=fopen ("/etc/passwd", "r");
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
-
- Сообщения: 2268
- Статус: Линукссаксовец
- ОС: MS Windows XP Home SP3
Re: Скрипт shell список юзеров .
Но еще веселее сделать не fopen, а popen.
Вот так: file1=popen ("cut -d: -f1 /etc/passwd", "r");
Конечно не очень эффективно с точки зрения использования системных ресурсов, зато не надо самостоятельно парсить /etc/passwd.
Могу так же посоветовать глянуть на функции : endpwent, getpwent, getpwnam, getpwnam_r, getpwuid, getpwuid_r
Потому, что работать с файлом /etc/passwd на прямую, в наше время может быть уже не актуальным.
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
0xDEFEC8ED
-
- Сообщения: 11
Re: Скрипт shell список юзеров .
Камрады хэлп это не то , нужен список активных юзеров что-то делающих в своём домашнем каталоге ( /home/ ) , есть команда ls -al от куда она инфу берет , то есть где находиться лог ? Нужно на Си прогу написать , скрипт не катит .