ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] проблема с архивами созданными с помощью procmail'a
@ 2005-05-13 12:41 Roman V. Tutov
  2005-05-13 12:52 ` Шайхутдинов Дамир
  2005-05-13 14:19 ` [Comm] " Sergey Vlasov
  0 siblings, 2 replies; 12+ messages in thread
From: Roman V. Tutov @ 2005-05-13 12:41 UTC (permalink / raw)
  To: Community

Здравствуйте, .

Кинулся поднимать почту из архива и обнаружил кучу
битых .gz архивов . Возможно-ли их как-нить починить ?

Почта бэкапиться конструкцией
/etc/procmailrc
| gzip >>$FOLDERTOARCHIVE/${EARFOLDER}/${MONTHFOLDER}/`date +%y-%m-%d`_aston_all.gz
MAILDIR=/var/spool/mail
MONTHFOLDER=`date +%y-%m`
FOLDERTOARCHIVE=/mnt/arhive/mail
EARFOLDER=`date +%y`
:0 ic
* ? test ! -d $EARFOLDER
| mkdir /$FOLDERTOARCHIVE/$EARFOLDER
:0 ic
* ? test ! -d $MONTHFOLDER
| mkdir /$FOLDERTOARCHIVE/$EARFOLDER/$MONTHFOLDER
:0
* backup@aston.ru
* !spam@aston.ru
* !ham@aston.ru
| gzip >>$FOLDERTOARCHIVE/${EARFOLDER}/${MONTHFOLDER}/`date +%y-%m-%d`_aston_all.gz

Может сама идея кривая ?

-- 
Тутов Роман Викторович 
Системный администратор
ASTON Agro Industrial Company Group 
Россия,344002, г.Ростов-на-Дону,Промзона "Заречная" 
ул.1-я Луговая,3 тел.: (863 2) 999049
JID:tutov@jabber.aston.ru
mailto:tutov@aston.ru



^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Comm] проблема с архивами созданными с помощью procmail'a
  2005-05-13 12:41 [Comm] проблема с архивами созданными с помощью procmail'a Roman V. Tutov
@ 2005-05-13 12:52 ` Шайхутдинов Дамир
  2005-05-13 17:16   ` Roman V. Tutov
  2005-05-13 21:49   ` Andrey Orlov
  2005-05-13 14:19 ` [Comm] " Sergey Vlasov
  1 sibling, 2 replies; 12+ messages in thread
From: Шайхутдинов Дамир @ 2005-05-13 12:52 UTC (permalink / raw)
  To: community

Привет!

> Кинулся поднимать почту из архива и обнаружил кучу
> битых .gz архивов . Возможно-ли их как-нить починить ?
>
> Почта бэкапиться конструкцией
> /etc/procmailrc
> | gzip >>$FOLDERTOARCHIVE/${EARFOLDER}/${MONTHFOLDER}/`date
          ^^
Думаю, ошибка здесь.
символ перенаправления >> дописывает в файл, а не создает его заново.
Надо заменить его на одиночный >.

С уже испорченными файлами надо сделать так:
Надо отловить в них начала gz-заголовков (магические байты) и по ним  
разбить на файлы. Получатся нормальные архивы, которые можно будет  
разархивировать.



^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Comm] проблема с архивами созданными с помощью procmail'a
  2005-05-13 17:16   ` Roman V. Tutov
@ 2005-05-13 13:17     ` Шайхутдинов Дамир
  2005-05-13 14:25       ` Alexey I. Froloff
  2005-05-13 21:52       ` Andrey Orlov
  0 siblings, 2 replies; 12+ messages in thread
From: Шайхутдинов Дамир @ 2005-05-13 13:17 UTC (permalink / raw)
  To: community

13.05.05 в 21:16 Roman V. Tutov в своём письме писал(а):

> осмелюсь заметить мне нужно именно дописывать в архив а не затирать  
> старый .
Дело в том, что операция "дописать в архив" таким образом не делается. Она  
должна быть реализована другими способами - например, разверткой архива,  
добавлением в него письма и обратной запаковкой (медленный способ).
Правда для разделения писем в таком случае надо будет использовать tar,  
потому что gzip сжимает только один файл.

Или (второй вариант) - использование форматов архивов, разрешающих  
добавление файла в уже существующий архив.
gzip ЕМНИП этого делать не умеет. Если я ошибаюсь, поправьте.
А вот rar например - может.

> иначе получиться что на винте будет файл с последним письмом внутри
> разве не так ?
Да. Но зато этот архив хоть открываться будет :)




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Comm] проблема с архивами созданными с помощью procmail'a
  2005-05-13 12:41 [Comm] проблема с архивами созданными с помощью procmail'a Roman V. Tutov
  2005-05-13 12:52 ` Шайхутдинов Дамир
@ 2005-05-13 14:19 ` Sergey Vlasov
  1 sibling, 0 replies; 12+ messages in thread
From: Sergey Vlasov @ 2005-05-13 14:19 UTC (permalink / raw)
  To: Community

[-- Attachment #1: Type: text/plain, Size: 1596 bytes --]

On Fri, May 13, 2005 at 04:41:10PM +0400, Roman V. Tutov wrote:
> Кинулся поднимать почту из архива и обнаружил кучу
> битых .gz архивов . Возможно-ли их как-нить починить ?

Похоже, в gunzip нет средств для восстановления архивов - придётся чем-то
разбивать такой архив на отдельные куски (по сигнатуре в начале архива) и
искать среди них целые.

> Почта бэкапиться конструкцией
> /etc/procmailrc
> | gzip >>$FOLDERTOARCHIVE/${EARFOLDER}/${MONTHFOLDER}/`date +%y-%m-%d`_aston_all.gz
> MAILDIR=/var/spool/mail
> MONTHFOLDER=`date +%y-%m`
> FOLDERTOARCHIVE=/mnt/arhive/mail
> EARFOLDER=`date +%y`
> :0 ic
> * ? test ! -d $EARFOLDER
> | mkdir /$FOLDERTOARCHIVE/$EARFOLDER
> :0 ic
> * ? test ! -d $MONTHFOLDER
> | mkdir /$FOLDERTOARCHIVE/$EARFOLDER/$MONTHFOLDER
> :0

Видимо, в конец этой строки следовало добавить "w:":

- ":" - использовать блокировки для предотвращения одновременного запуска
  нескольких процессов;

- "w" - дождаться завершения запущенных процессов (по умолчанию procmail
  считает, что обработка письма завершена, когда все данные переданы в
  pipe, что в данном случае неверно - после чтения всех входных данных
  пройдёт ещё некоторое время, прежде чем gzip закончит запись выходного
  файла, и в это время нельзя запускать другой аналогичный процесс).

В результате отсутствия этих флагов могло запуститься несколько
экземпляров gzip, пишущих в один файл.

> * backup@aston.ru
> * !spam@aston.ru
> * !ham@aston.ru
> | gzip >>$FOLDERTOARCHIVE/${EARFOLDER}/${MONTHFOLDER}/`date +%y-%m-%d`_aston_all.gz
> 
> Может сама идея кривая ?

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Comm] проблема с архивами созданными с помощью procmail'a
  2005-05-13 13:17     ` Шайхутдинов Дамир
@ 2005-05-13 14:25       ` Alexey I. Froloff
  2005-05-13 14:38         ` Шайхутдинов Дамир
  2005-05-13 21:52       ` Andrey Orlov
  1 sibling, 1 reply; 12+ messages in thread
From: Alexey I. Froloff @ 2005-05-13 14:25 UTC (permalink / raw)
  To: ALT Linux Community

[-- Attachment #1: Type: text/plain, Size: 601 bytes --]

* Шайхутдинов Дамир <damir@> [050513 17:18]:
> > осмелюсь заметить мне нужно именно дописывать в архив а не затирать  
> > старый .
> Дело в том, что операция "дописать в архив" таким образом не делается.
Перестаньте пороть чушь, ей же больно! (C)

$ cat > test1
test1
test1

test1
$ cat > test2
test2
test2

test2
$ cat test1 | gzip >> test.gz
$ cat test2 | gzip >> test.gz
$ zcat test.gz
test1
test1

test1
test2
test2

test2

-- 
Regards, Sir Raorn.
-------------------
Если у кого возникнут светлые мысли -- не стесняйтесь вешать
сразу в BTS.
		-- mike in devel@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Comm] проблема с архивами созданными с помощью procmail'a
  2005-05-13 14:25       ` Alexey I. Froloff
@ 2005-05-13 14:38         ` Шайхутдинов Дамир
  2005-05-13 14:59           ` Alexey I. Froloff
  0 siblings, 1 reply; 12+ messages in thread
From: Шайхутдинов Дамир @ 2005-05-13 14:38 UTC (permalink / raw)
  To: community

13.05.05 в 18:25 Alexey I. Froloff в своём письме писал(а):
> Перестаньте пороть чушь, ей же больно! (C)
> $ zcat test.gz
> test1
> test1
>
> test1
> test2
> test2
>
> test2

Да, и правда. Моя вина :(
/me посыпает голову пеплом.

Да, скорее всего архивы не читались из-за одновременной записи нескольких  
gzip-ов в один файл, а не из-за дописывания в архив.


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Comm] проблема с архивами созданными с помощью procmail'a
  2005-05-13 14:38         ` Шайхутдинов Дамир
@ 2005-05-13 14:59           ` Alexey I. Froloff
  0 siblings, 0 replies; 12+ messages in thread
From: Alexey I. Froloff @ 2005-05-13 14:59 UTC (permalink / raw)
  To: ALT Linux Community

[-- Attachment #1: Type: text/plain, Size: 424 bytes --]

* Шайхутдинов Дамир <damir@> [050513 18:39]:
> > $ zcat test.gz
> Да, и правда. Моя вина :(
> /me посыпает голову пеплом.
Это одна из основных фич gzip/bzip2 (и кажется compress тоже)

-- 
Regards, Sir Raorn.
-------------------
> Чайниковский вопрос: А если надо статически собрать некую программу?
> Есть ли гарантия, что всё соберётся?
Зависит от этой програмы. Всякие программы бывают.
		-- inger in devel@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Comm] проблема с архивами созданными с помощью procmail'a
  2005-05-13 12:52 ` Шайхутдинов Дамир
@ 2005-05-13 17:16   ` Roman V. Tutov
  2005-05-13 13:17     ` Шайхутдинов Дамир
  2005-05-13 21:49   ` Andrey Orlov
  1 sibling, 1 reply; 12+ messages in thread
From: Roman V. Tutov @ 2005-05-13 17:16 UTC (permalink / raw)
  To: community

В сообщении от 13 Май 2005 16:52 Шайхутдинов Дамир написал(a):

>ШД > Почта бэкапиться конструкцией
>ШД > /etc/procmailrc
>ШД > | gzip >>$FOLDERTOARCHIVE/${EARFOLDER}/${MONTHFOLDER}/`date
>ШД           ^^
>ШД Думаю, ошибка здесь.
>ШД символ перенаправления >> дописывает в файл, а не создает его заново.
>ШД Надо заменить его на одиночный >.
>ШД
>ШД С уже испорченными файлами надо сделать так:
>ШД Надо отловить в них начала gz-заголовков (магические байты) и по ним
>ШД разбить на файлы. Получатся нормальные архивы, которые можно будет
>ШД разархивировать.
осмелюсь заметить мне нужно именно дописывать в архив а не затирать старый .
иначе получиться что на винте будет файл с последним письмом внутри 
разве не так ?

-- 
Тутов Роман Викторович 
Системный администратор
ASTON Agro Industrial Company Group 
Россия,344002, г.Ростов-на-Дону,Промзона "Заречная" 
ул.1-я Луговая,3 тел.: (863 2) 999049
JID:tutov@jabber.aston.ru
mailto:tutov@aston.ru

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Comm] проблема с архивами созданными с помощью procmail'a
  2005-05-13 12:52 ` Шайхутдинов Дамир
  2005-05-13 17:16   ` Roman V. Tutov
@ 2005-05-13 21:49   ` Andrey Orlov
  2005-05-14 12:01     ` Roman V. Tutov
  1 sibling, 1 reply; 12+ messages in thread
From: Andrey Orlov @ 2005-05-13 21:49 UTC (permalink / raw)
  To: community

On Friday 13 May 2005 16:52, Шайхутдинов Дамир wrote:
> Привет!
> 
> > Кинулся поднимать почту из архива и обнаружил кучу
> > битых .gz архивов . Возможно-ли их как-нить починить ?
> >
> > Почта бэкапиться конструкцией
> > /etc/procmailrc
> > | gzip >>$FOLDERTOARCHIVE/${EARFOLDER}/${MONTHFOLDER}/`date
>           ^^
> Думаю, ошибка здесь.
> символ перенаправления >> дописывает в файл, а не создает его заново.
> Надо заменить его на одиночный >.
> 
> С уже испорченными файлами надо сделать так:
> Надо отловить в них начала gz-заголовков (магические байты) и по ним  
> разбить на файлы. Получатся нормальные архивы, которые можно будет  
> разархивировать.

Может я че не так понял (не читал оригинальное письмо), но вообще-то дописывание в конец 
для gzip штатная ситуация:

------------- (cut man gzip)
       Multiple compressed files can be concatenated.  In  this  case,  gunzip
       will extract all members at once. For example:

             gzip -c file1  > foo.gz
             gzip -c file2 >> foo.gz

       Then

             gunzip -c foo

       is equivalent to

             cat file1 file2

       In  case of damage to one member of a .gz file, other members can still
       be recovered (if the damaged member is removed). However, you  can  get
       better compression by compressing all members at once:

             cat file1 file2 | gzip > foo.gz

       compresses better than
----------------------

-- 
WthBstRgrds -- Андрей Орлов --  
 --- http: www.neural.ru, mail: cray@neural.ru, jid: cray@altlinux.org ---
----------------------------------------


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Comm] проблема с архивами созданными с помощью procmail'a
  2005-05-13 13:17     ` Шайхутдинов Дамир
  2005-05-13 14:25       ` Alexey I. Froloff
@ 2005-05-13 21:52       ` Andrey Orlov
  1 sibling, 0 replies; 12+ messages in thread
From: Andrey Orlov @ 2005-05-13 21:52 UTC (permalink / raw)
  To: community

On Friday 13 May 2005 17:17, Шайхутдинов Дамир wrote:
> Дело в том, что операция "дописать в архив" таким образом не делается. Она  

Еще как делается! Отрывок из мана в предыдущем письме :)

> gzip ЕМНИП этого делать не умеет. Если я ошибаюсь, поправьте.

Поправляю. Умеет, причем точно так как у товарища написано - дописыванием в конец

-- 
WthBstRgrds -- Андрей Орлов --  
 --- http: www.neural.ru, mail: cray@neural.ru, jid: cray@altlinux.org ---
----------------------------------------


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Comm] Re: проблема с архивами созданными с помощью procmail'a
  2005-05-14 12:01     ` Roman V. Tutov
@ 2005-05-14  9:00       ` Vitaly Ostanin
  0 siblings, 0 replies; 12+ messages in thread
From: Vitaly Ostanin @ 2005-05-14  9:00 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 456 bytes --]

Roman V. Tutov пишет:

<skipped/>

> я пошел другим путем и решил что идея 1-письмо это один архивный
> файл исключит вариант дописывания в архив
> встретил проблему . Не могу в просмайле созать переменную содержащую
> id письма

Если это нужно для отлова дубликатов, то тут периодически постят
рецепт, например:

:0 Whc: msgid.lock
| formail -D 8192 msgid.cache

:0 a:
duplicates

<skipped/>

--
Regards, Vyt
mailto:  vyt@vzljot.ru
JID:     vyt@vzljot.ru

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 256 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Comm] проблема с архивами созданными с помощью procmail'a
  2005-05-13 21:49   ` Andrey Orlov
@ 2005-05-14 12:01     ` Roman V. Tutov
  2005-05-14  9:00       ` [Comm] " Vitaly Ostanin
  0 siblings, 1 reply; 12+ messages in thread
From: Roman V. Tutov @ 2005-05-14 12:01 UTC (permalink / raw)
  To: community

В сообщении от 14 Май 2005 01:49 Andrey Orlov написал(a):
>AO > > Кинулся поднимать почту из архива и обнаружил кучу
>AO > > битых .gz архивов . Возможно-ли их как-нить починить ?
>AO > >
>AO > > Почта бэкапиться конструкцией
>AO > > /etc/procmailrc
>AO > > | gzip >>$FOLDERTOARCHIVE/${EARFOLDER}/${MONTHFOLDER}/`date
>AO >           ^^
>AO > Думаю, ошибка здесь.
>AO > символ перенаправления >> дописывает в файл, а не создает его заново.
>AO > Надо заменить его на одиночный >.
>AO >
>AO > С уже испорченными файлами надо сделать так:
>AO > Надо отловить в них начала gz-заголовков (магические байты) и по ним
>AO > разбить на файлы. Получатся нормальные архивы, которые можно будет
>AO > разархивировать.
>AO
>AO Может я че не так понял (не читал оригинальное письмо), но вообще-то
> дописывание в конец AO для gzip штатная ситуация:
я пошел другим путем и решил что идея 1-письмо это один архивный 
файл исключит вариант дописывания в архив 
встретил проблему . Не могу в просмайле созать переменную содержащую 
id письма 

ЗЫ Может кто подскажет ?


-- 
Тутов Роман Викторович 
Системный администратор
ASTON Agro Industrial Company Group 
Россия,344002, г.Ростов-на-Дону,Промзона "Заречная" 
ул.1-я Луговая,3 тел.: (863 2) 999049
JID:tutov@jabber.aston.ru
mailto:tutov@aston.ru

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2005-05-14 12:01 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-05-13 12:41 [Comm] проблема с архивами созданными с помощью procmail'a Roman V. Tutov
2005-05-13 12:52 ` Шайхутдинов Дамир
2005-05-13 17:16   ` Roman V. Tutov
2005-05-13 13:17     ` Шайхутдинов Дамир
2005-05-13 14:25       ` Alexey I. Froloff
2005-05-13 14:38         ` Шайхутдинов Дамир
2005-05-13 14:59           ` Alexey I. Froloff
2005-05-13 21:52       ` Andrey Orlov
2005-05-13 21:49   ` Andrey Orlov
2005-05-14 12:01     ` Roman V. Tutov
2005-05-14  9:00       ` [Comm] " Vitaly Ostanin
2005-05-13 14:19 ` [Comm] " Sergey Vlasov

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git