Сравнение данных
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Сравнение данных - 2006-10-08 00:51:52.483333
|
|
|
webus
Сообщений: 6
Оценки: 0
Присоединился: 2006-10-08 00:30:47.033333
|
Есть два компьютера на каждом по каталогу со статичными(изменяются скажем раз в день) данными теоретически эти данный на обоих компьютерах одинаковые, ОС соотв Linux. Как эффективней всего сравнивать их на предмет не идентичности. PC соединены сетевым проводом.
|
|
|
RE: Сравнение данных - 2006-10-09 11:45:37.453333
|
|
|
j0ker_
Сообщений: 609
Оценки: 0
Присоединился: 2005-03-07 15:09:25
|
Например по размеру
|
|
|
RE: Сравнение данных - 2006-10-09 13:24:15.843333
|
|
|
Lex_Voodoo
Сообщений: 7328
Оценки: 0
Присоединился: 2004-12-07 13:55:12
|
По дате изменения Для файлов, у которых с момента последней проверки были изменения, брать md5 checksum
|
|
|
RE: Сравнение данных - 2006-10-09 19:12:44.720000
|
|
|
webus
Сообщений: 6
Оценки: 0
Присоединился: 2006-10-08 00:30:47.033333
|
А как реализовать это сравнение? Может быть есть пример.
|
|
|
RE: Сравнение данных - 2006-10-09 21:45:22.360000
|
|
|
rgo
Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
|
quote:
ORIGINAL: webus А как реализовать это сравнение? Может быть есть пример. первый вопрос: каким образом предлагается получать доступ к дереву фс другого компа? http? ftp? nfs? samba? Ну если предположить что не-http, то всё остальное можно просто смонтировать и видеть как лок фс. Ну а дальше… чёрт его знает. как тебе удобнее. я б наверное сделал примерно так:
find /path/where/mounted/remote/fs/ -printf '%P %s %t\n' |
while read rname rsize rtime; do
find /path/where/local/fs/`dirname $rname` -name `basename $rname` \
-printf '%P %s %t\n' | read lname lsize ltime
if #... ну а тут всякие if'ы сравнивающие $lsize c $rsize, $ltime с $rtime,
# `md5sum $lname` с `md5sum $rname`, ну и проч дребедень
done
главная неудачность, что если в локальной фс присутствует файлик которого нет в удалённой, то ты этого не заметишь… но в принципе можно попробовать сказать ls -lR в каждой из дир, и потом обрабатывать вывод diff.
|
|
|
RE: Сравнение данных - 2006-10-10 13:33:08.110000
|
|
|
webus
Сообщений: 6
Оценки: 0
Присоединился: 2006-10-08 00:30:47.033333
|
А можно как нить запретить другим процессам обращаться к этим файлам во время проверки?
|
|
|
RE: Сравнение данных - 2006-10-10 14:19:23.923333
|
|
|
Lex_Voodoo
Сообщений: 7328
Оценки: 0
Присоединился: 2004-12-07 13:55:12
|
Например chmod -R 0400 <DIR> В том случае, если остальные процессы запускаются не рутом
|
|
|
|
|