The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (Разное)
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Рекурсивный md5sum, зависает, Gekt0r (ok), 11-Май-09, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


2. "Рекурсивный md5sum, зависает"  +/
Сообщение от Gekt0remail (ok), 11-Май-09, 20:03 
>[оверквотинг удален]
>>Но только на этапе подсчета контрольных сумм она виснет. Непонятно, почему.
>>Можете подсказать, есть ли какие-то ограничения у md5sum? Почему такое может происходить
>
>Покажите свой скрипт. Вы, похоже, допустили где-то ошибку и вместо того, чтобы
>отыскать и исправить
>ее, начинаете искать несуществующие изъяны у использованного инструмента. Специально прогнал эту
>задачу на трех десятках тысяч файлов в каталогах разной степени вложенности -
>не зависает.
>
>P. S. Вам эту задачу в учебном заведении задали?

это связано с моими исследованиями (:

вот скрипт, на перле:

#!/usr/bin/perl -w

    system ("ls / -aR > result");
    $path;
    @list;
    
    open (SDATA, result);  #тут мы получили список всех файлов, для которых прогоним md5sum
    while (my $line = <SDATA>) {
        chomp($line);
        if ($line =~ /^\//) {
        chop ($line);
        $path = $line;
        }
        elsif ($line ne "." && $line ne "..") {

        my $toFile = $path.'/'.$line;   #генерируем имя файла,
                system ("md5sum $toFile");      #и считаем контрольную сумму
           }
         }
вот в этой проге на каком-то этапе она словно зависает, приходится закрывать терминал

можете поделиться своей? Или указать, что я сделал не так?

Ответить | Правка | Наверх | Cообщить модератору

3. "Рекурсивный md5sum, зависает"  +/
Сообщение от angra (ok), 12-Май-09, 01:18 
Мда, лучше четко скажите чего вам надо. Проще дать вам готовый однострочник(почти наверняка это будет find . -type f -exec md5sum '{}' \;), чем комментировать все дурости, которые вы наделали.
Ответить | Правка | Наверх | Cообщить модератору

4. "Рекурсивный md5sum, зависает"  +/
Сообщение от allez (ok), 12-Май-09, 04:51 
>можете поделиться своей? Или указать, что я сделал не так?

Я не мудрствовал лукаво и использовал ту же команду, которую указал angra.

Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

5. "Рекурсивный md5sum, зависает"  +/
Сообщение от Gekt0remail (ok), 12-Май-09, 22:31 
>>можете поделиться своей? Или указать, что я сделал не так?
>
>Я не мудрствовал лукаво и использовал ту же команду, которую указал angra.
>

все равно виснет. Каждый раз на файле /proc/kmsg

Ответить | Правка | Наверх | Cообщить модератору

6. "Рекурсивный md5sum, зависает"  +/
Сообщение от Андрей (??), 13-Май-09, 01:21 
Высчитывать md5 для /proc безсмысленно, так как содержимое /proc постоянно меняется.
man proc.


Ответить | Правка | Наверх | Cообщить модератору

7. "Рекурсивный md5sum, зависает"  +/
Сообщение от Gekt0r (ok), 15-Май-09, 12:41 
>Высчитывать md5 для /proc безсмысленно, так как содержимое /proc постоянно меняется.
>man proc.

аминь. Одну причину зависания выяснили. Хотя постом выше написано, что работает "на ура".

Какие-нибудь еще могут быть глюки с этим?

Ответить | Правка | Наверх | Cообщить модератору

8. "Рекурсивный md5sum, зависает"  +/
Сообщение от allez (ok), 15-Май-09, 13:50 
>аминь. Одну причину зависания выяснили. Хотя постом выше написано, что работает "на ура".

В моем сообщении нигде не сказано о вычислении хеша MD5 для содержимого /proc. На всякий случай
уточню: я выполнил команду find ~ -type f -exec md5sum {} \;, которая отработала на моем
домашнем каталоге.


>Какие-нибудь еще могут быть глюки с этим?

Как было сказано выше, не следует прогонять md5sum на динамически изменяющихся файлах. Так что
кроме /proc нужно исключать из обработки как минимум /var/log и /tmp...

Ответить | Правка | Наверх | Cообщить модератору

9. "Рекурсивный md5sum, зависает"  +/
Сообщение от Gekt0remail (ok), 16-Май-09, 15:55 
>>Какие-нибудь еще могут быть глюки с этим?
>
>Как было сказано выше, не следует прогонять md5sum на динамически изменяющихся файлах.
>Так что
>кроме /proc нужно исключать из обработки как минимум /var/log и /tmp...

поможете с командой?
Для того, чтобы исключить /proc я прогнал find / -type d -name proc -prune -o -exec md5sum {} \;

В этот раз команда зависла в каталоге /var
я попробовал
find / -type d -name proc -prune -name var -prune -o -exec md5sum {} \;

команда все равно зависла в каталоге var
как исключить сразу несколько каталогов? Я в инете поискал, не нашел

Ответить | Правка | Наверх | Cообщить модератору

10. "Рекурсивный md5sum, зависает"  +/
Сообщение от angra (ok), 16-Май-09, 16:45 
А может пора уже сказать зачем вам понадобилось делать md5sum от корня? Сдается вы изобретаете велосипед, причем  на ручном приводе и с треугольными колесами :)
Ответить | Правка | Наверх | Cообщить модератору

11. "Рекурсивный md5sum, зависает"  +/
Сообщение от Gekt0remail (ok), 16-Май-09, 16:56 
>А может пора уже сказать зачем вам понадобилось делать md5sum от корня?
>Сдается вы изобретаете велосипед, причем  на ручном приводе и с
>треугольными колесами :)

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

Зачем это, пока говорить не могу :(

Как можно несколько каталогов из find исключить?) Или есть вариант приделать велосипеду круглые колеса?))

Ответить | Правка | Наверх | Cообщить модератору

12. "Рекурсивный md5sum, зависает"  +/
Сообщение от angra (ok), 16-Май-09, 17:30 
>Как можно несколько каталогов из find исключить?)

Ну можно почитать опции find, только при этом не забывать, что многое зависит от версии. Я бы просто использовал find | grep -v 'regex' | xargs или возможности шелла по заданию стартовых точек для find вместо /

>Или есть вариант приделать велосипеду круглые колеса?))

Это вам виднее, вы же знаете для чего вы все это делаете. Если для безопасности, то есть вещи типа rkhunter, если для синхронизации, то есть rsync. Практически наверняка есть готовая тулза, которая делает хеши нужных файлов в системе. Удачи в работе над велосипедом.

Ответить | Правка | Наверх | Cообщить модератору

13. "Рекурсивный md5sum, зависает"  +/
Сообщение от Самый Анонимус (?), 17-Май-09, 01:16 
>мне нужен максимально подробный "снимок" файловой системы. Файлы и их контрольные суммы.

aide

Ответить | Правка | К родителю #11 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру