17 февраля 2015 г., 20:13 пользователь Slawa Olhovchenkov <[email protected]>
написал:

> On Tue, Feb 17, 2015 at 08:03:06PM +0200, Vladislav V. Prodan wrote:
>
> > 2015-02-17 6:29 GMT+02:00 Олександр Безпалько <[email protected]>:
> >
> > > ​
> > > ​
> > > ​
> > > ​find . -name
> > >  snap-\*\.\*\.\*\.jpg
> > > ​-print
> > >
> >
> > Формирует неправильный порядок файлов
> >
> > Далее,
> >
> > find $i -type f -name "snap-*.*.*.jpg" -print | awk 'NR%5!=1' | wc -l
> > дает 720 файлов
> >
> > а вот после удаления:
> > find $i -type f -name "snap-*.*.*.jpg" -print | awk 'NR%5!=1' | xargs rm
> > остается 36 файлов вместо 180
> >
> > Есть мнение, что "xargs rm" дважды проходит
> >
> >
> > Остановился пока на
> >
> > for i in `find $dir -type d`
> > do
> >     cd $i || continue;
> >     ls $i | grep snap-\*\.\*\.\*\.jpg | awk 'NR%5!=1' | xargs rm
> > done;
> >
> >
> > Время обработки одной директории - одного часа:
> > 0.017u 0.319s 0:22.73 1.4%      28+162k 3254+0io 0pf+0w
>
> я нихрена не понял, это что удаление 720 файлов из одной директории
> (из 900 файлов) столько (23 секунды) времени занимает? это несколько
> выходит за рамки моих представлений о нормальности.
>
>

Наверное, rm не оптимизировано для использования на ZFS и она, наверное,
ждет от системы подтверждения на удаление файла.
Напомнить, как Microsoft сделала удаление файлов в FAT и NTFS ?

Еще, наверное, на скорость влияют старые снапшоты из этого раздела.


-- 
 Vladislav V. Prodan
 System & Network Administrator
 support.od.ua

Ответить