Страниц: [1]
  Печать  
Автор Тема: Сравнение контрольных сумм  (Прочитано 4795 раз)
Kitrich
Участник
*
Offline Offline

Сообщений: 35


Просмотр профиля
« : Марта 23, 2009, 10:14:28 pm »

Помогите, пожалуйста, решить следующую задачу.
Имеется некий эталонный файл, с определенной контрольной суммой, подсчитанной cksum. Он лежит в определенном каталоге.
При загрузке системы создается аналогичный файл, который нужно сравнить с эталонным по значению контрольной суммы.
Если суммы не совпадают, делать некое действие, по идее должны быть заблокированы учетки пользователей.
В связи с этим вопросы:
1. Как "вытащить" из результата действия утилиты cksum значение этой суммы.
2. Как сравнить его со значением суммы эталонного файла.
3. Можно ли все это сделать с помощью командного интерпретатора и поместить этот скрипт в sysinit, чтобы отрабатывать контроль целостности при загрузке системы.

Заранее спасибо.
Записан
dmi
QOR.Admin
*****
Offline Offline

Сообщений: 470



Просмотр профиля
« Ответ #1 : Марта 23, 2009, 11:20:17 pm »

В программе на си - используйте popen() и читайте stdin как обычный файл.
Можно и функцию выдернуть из cksum, благо код открыт

В скрипте на ksh используйте:
Код:
CKSUM=`/usr/bin/cksum /etc/passwd | /usr/bin/awk '{print $1}'`
Не забывайте в скриптах всегда использовать полные пути
Записан
Kitrich
Участник
*
Offline Offline

Сообщений: 35


Просмотр профиля
« Ответ #2 : Марта 25, 2009, 08:18:58 pm »

Спасибо, будем пробовать.
Записан
Страниц: [1]
  Печать  
 
Перейти в: