* [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 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 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 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 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
* 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 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
* 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
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