1. Home
  2. News
  3. Download
    1. Thunderbird Release Version
    2. Thunderbird 140 ESR
    3. Thunderbird 115 ESR
    4. Thunderbird Beta Version
    5. Language Pack (User Interface)
    6. Dictionaries (Spell Check)
  4. Help & Lexicon
    1. Instructions for Thunderbird
    2. Questions & Answers (FAQ) about Thunderbird
    3. Help for this Website
    4. Last Changes
  5. Forums
    1. Unresolved Threads
    2. Latest Posts
    3. Threads of the last 24 hours
  • Login
  • Register
  • 
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Forum
  • Lexicon
  • Articles
  • Pages
  • More Options
  1. Thunderbird Mail DE
  2. Forum
  3. Hilfe zu E-Mail und allgemeines Arbeiten
  4. Migration / Import / Backups

TB Verzeichnis zu groß für ein Backup [gelöst]

  • GhostOfOhio
  • August 8, 2008 at 4:22 PM
  • Closed
  • Thread is Resolved
  • GhostOfOhio
    Member
    Posts
    5
    Member since
    8. Aug. 2008
    • August 8, 2008 at 4:22 PM
    • #1

    Hallo Forum,

    ich nutze jetzt seit Jahren TB und es haben sich recht viele Mails angesammelt. Heute wollte ich davon mal wieder ein Backup machen und dazu das TB Verzeichnis zippen.
    Das zip Programm (Linux zip...) sagte mir aber, dass nur maximal 4 GB zip-bar sind!
    Wie kann ich das sonst kleiner machen?

    Das Verzeichnis ungepackt ist etwa 10 GB groß (teils in TB schon archiviert) und es sind kaum Anhänge dabei.

    Noch eine Zusatzfrage: toll fände ich es, wenn man Jahres-Archive des Postfaches erstellen könnte (ja jetzt leider zu spät). So dass man immer bequem ein Geschäftsjahr archivieren kann. So als Postfach_2008 oder so. Geht sowas, ohne das man die Filter alle neu machen muss? Und geht das auch nachträglich?

    Systen: TB 2, Fedora Linux

    Viele Grüße und Danke!

    Edited once, last by GhostOfOhio (August 9, 2008 at 4:39 PM).

  • Karla
    Member
    Posts
    223
    Member since
    9. Dec. 2003
    • August 8, 2008 at 8:52 PM
    • #2

    Hallo,

    zip hat eine Größenbeschränkung auf 4GB.

    Ich nutze archivemail zum Archivieren meiner Mails. Mit soetwas wie

    Code
    archivemail --date=2008-01-01

    sollten alle Mails, die Du vor dem 1.1.2008 bekommen hast, archiviert werden. Wenn Du das also rückwirkend für verschiedene Jahre machen willst, fängst Du mit den ältesten Mails an und arbeitest Dich in die Gegenwart vor. Aber am besten liest Du dir die man page durch. Für mich als hauptsächlichen mutt-Nutzer ist archivemail auch deshalb so toll, weil mutt die gzippten Mailarchive lesen kann, ich also ohne Mühen die alten Mails aus dem Programm heraus lesen kann. Das ist afaik mit TB nicht möglich.

    Grüße
    Karla

  • GhostOfOhio
    Member
    Posts
    5
    Member since
    8. Aug. 2008
    • August 9, 2008 at 4:27 PM
    • #3

    Hallo Karla,

    vielen Dank, das war _der_ Tipp!

    Ich habe mir jetzt erstmal ein Shellscript geschrieben, was alle Postfächer nach Jahren archiviert :)

    Grüße

  • Pat81
    Member
    Posts
    5
    Member since
    1. Feb. 2008
    • August 10, 2008 at 5:16 PM
    • #4

    kannst du schreiben, wie dein Script aussieht?

    Werden alle Emails aus den unterschiedlichen Ordner in einen Ordner gesichert oder wie funktioniert das?

    Die Archivierungsfunktion von Outlook mit dem Einbinden der alten Archive ist recht gut gelöst, so etwas vermisse ich in Thb

    Grüße

  • GhostOfOhio
    Member
    Posts
    5
    Member since
    8. Aug. 2008
    • August 10, 2008 at 6:49 PM
    • #5

    Hallo,

    das sieht so aus: ich habe z.B. Postfach1 und Postfach2

    Postfach 1
    - Inbox
    ----Wichtig
    ----Sonstiges
    - Outbox
    - Vorlagen

    Postfach 2 so ähnlich.

    Mit dem Script packe ich das in so eine Struktur

    Postfach 1
    - 2006[+]
    - 2007[-]
    ----inbox.zip
    ---- wichtig.zip
    ----outbox.zip
    Postfach 2
    - 2006
    ...
    Ich bilde also die Struktur etwas flacher ab, weil mir das so gefällt :)

  • Pat81
    Member
    Posts
    5
    Member since
    1. Feb. 2008
    • August 10, 2008 at 8:12 PM
    • #6

    Danke für die Info

    a) kannst du den Scriptcode hier eintragen?
    b) Wie bindest du die Mails wieder in Thunderbird, wenn du z.B. aus 2006 eine Mail suchst?

    Grüße

  • GhostOfOhio
    Member
    Posts
    5
    Member since
    8. Aug. 2008
    • August 10, 2008 at 11:35 PM
    • #7

    zu a) Das ist ziemlich schnell dahin geschrieben.... Bitte nicht auf die Goldwaage legen!

    Das hier ist ist ein php shellscript. PHP sollte also installiert sein.
    $path und $backup_path müssen oben angepasst werden.

    Aufruf dann in der shell:
    $ phpArchivemail.php 2001 /home/user/.thunderbird/default/http://budsditl3.slt/Mail

    1. Parameter: Jahr: Wobei 2001 das älteste Jahr zum archivieren ist, der zählt dann bis heute hoch.
    2. Mail Verzeichnis
    3. ggf copy oder delete, bei letzteren verändert der dein Mailverzeichnis. Besser den Parameter weglassen!

    PHP
    #!/usr/bin/php -q
    <?php
    /**
     * 09.08.2008
     *
     * phpArchivemail: Beschreibung...
     *
     * @version v0.1
     */
    $path = "archivemail";
    $backup_path = "/home/user/Backup/mail";
    //--------------------------------------
    $startyear = $argv[1];
    $mode = $argv[3];
    $dir = $argv[2];
    if (!$mode)
    	$mode = "copy";
    
    
    
    
    print ("Welcome zu phpArchivemail for Thunderbird!");
    print ("Settings: year: $startyear, mode: $mode\n");
    sleep(2);
    if ($mode == "copy")
    	$copy = true;
    $mode = "include-flagged";
    if (!$dir)
    	die("no dir --2. param");
    
    
    
    
    $d = dir($dir);
    while (false !== ($entry = $d->read()))
    {
    	if (!is_dir($dir . "/" . $entry))
    		continue;
    	if ($entry == ".")
    		continue;
    	if ($entry == "..")
    		continue;
    	$projekt = $entry;
    	$target = $backup_path . "/" . $projekt;
    	if (!file_exists($target))
    		mkdir($target);
    
    
    
    
    	// Inhalt sichern:
    	$e = dir($dir . "/" . $entry);
    	print ($entry . "....................\n");
    	while (false !== ($file = $e->read()))
    	{
    		if ($file == ".")
    			continue;
    		if ($file == "..")
    			continue;
    		if (is_dir($dir . "/" . $entry . "/" . $file))
    		{
    			$f = dir($dir . "/" . $entry . "/" . $file);
    			print ($file . "....................\n");
    			while (false !== ($file2 = $f->read()))
    			{
    				if ($file2 == ".")
    					continue;
    				if ($file2 == "..")
    					continue;
    				if (is_dir($dir . "/" . $entry . "/" . $file . "/" . $file2))
    				{
    					$g = dir($dir . "/" . $entry . "/" . $file . "/" . $file2);
    					print ($file2 . "....................\n");
    					while (false !== ($file3 = $g->read()))
    					{
    						if ($file3 == ".")
    							continue;
    						if ($file3 == "..")
    							continue;
    						if (strpos($file2, 'msf'))
    							continue;
    						$now = intval(date("Y")) + 1;
    						$ffile =  $dir . "/" . $entry . "/" . $file . "/" . $file2 . "/" . $file3 ;
    						if ($copy)
    						{
    
    
    
    
    							copy($ffile, $target . "/" . $file3);
    							$ffile =  $target . "/" . $file3 ;
    						}
    						for ($year = $startyear; $year <= $now; $year++)
    						{
    							print ("save $year $file3....\n");
    							if (!file_exists($target . "/" . ($year -1)))
    								mkdir($target . "/" . ($year -1));
    							$eval = sprintf("%s --date=%d-01-01 --%s --output-dir='%s' '%s'", $path, $year, $mode, $target . "/" . ($year -1), $ffile);
    							print system($eval);
    						}
    						unset ($year);
    
    
    
    
    						if ($copy)
    							unlink($ffile);
    					}
    					$g->close();
    
    
    
    
    				}
    				else
    				{
    
    
    
    
    					if (strpos($file2, 'msf'))
    						continue;
    
    
    
    
    					$now = intval(date("Y")) + 1;
    					$ffile =  $dir . "/" . $entry . "/" . $file . "/" . $file2 ;
    					if ($copy)
    					{
    						copy($ffile, $target . "/" . $file2);
    						$ffile =  $target . "/" . $file2 ;
    					}
    					for ($year = $startyear; $year <= $now; $year++)
    					{
    						print ("save $year $file2....\n");
    						if (!file_exists($target . "/" . ($year -1)))
    							mkdir($target . "/" . ($year -1));
    						$eval = sprintf("%s --date=%d-01-01 --%s --output-dir='%s' '%s'", $path, $year, $mode, $target . "/" . ($year -1), $ffile);
    						print system($eval);
    					}
    					unset ($year);
    
    
    
    
    					if ($copy)
    						unlink($ffile);
    				}
    			}
    
    
    
    
    			$f->close();
    		}
    		else
    		{
    
    
    
    
    			if (strpos($file, '.msf'))
    				continue 1;
    			if (strpos($file, '.html'))
    				continue 1;
    
    
    
    
    			$now = intval(date("Y")) + 1;
    			$ffile = $dir . "/" . $entry . "/" . $file;
    			if ($copy)
    			{
    				copy($ffile, $target . "/" . $file);
    				$ffile =  $target . "/" . $file;
    			}
    			for ($year = $startyear; $year <= $now; $year++)
    			{
    				print ("save $year $file....\n");
    				if (!file_exists($target . "/" . ($year -1)))
    					mkdir($target . "/" . ($year -1));
    				$eval = sprintf("%s --date=%d-01-01 --%s --output-dir='%s' '%s'", $path, $year, $mode, $target . "/" . ($year -1), $ffile);
    				print system($eval);
    			}
    			unset ($year);
    			$ffile = str_replace("'", "", $ffile);
    			if ($copy)
    				unlink($ffile);
    		}
    	}
    	$e->close();
    }
    $d->close();
    print("Thank you for using!");
    Display More


    b) Wichtig war mir das als Backup Lösung.
    Zum schnellen suchen kann ich die Datei Entpacken und in einem Editor durchsuchen,
    oder ich kopiere sie dann in mein lokales Postfach von TB.

  • Community-Bot September 3, 2024 at 7:20 PM

    Closed the thread.

Current app version

  • Thunderbird 152.0.1 veröffentlicht

    Thunder July 4, 2026 at 1:02 PM

Current 140 ESR version

  • Thunderbird 140.12.1 ESR veröffentlicht

    Thunder July 4, 2026 at 1:05 PM

No Advertisements

There are no advertisements here. Maybe you give the website owner (Alexander Ihrig - aka "Thunder") instead something to be able to finance these sites in the long run. Many Thanks!

Thank you for the support!

Coffee to be spent?

Donate now via Paypal*

*Forwarding to PayPal.Me

Thunderbird Mail DE
  1. Imprint & Contact
  2. Privacy Policy
    1. Cookie Policy
  3. Terms of Use
  4. Donation Call for Thunderbird
Help for this website
  • All website support articles
  • How to use website search
  • How to create a forums user account
  • How to create and edit a forums thread
  • How to reset your forums password
Copyright © 2003-2026 Thunderbird Mail DE

You are NOT on an official page of the Mozilla Foundation. Mozilla®, mozilla.org®, Firefox®, Thunderbird™, Bugzilla™, Sunbird®, Seamonkey®, XUL™ and the Thunderbird logo are (among others) registered trademarks of the Mozilla Foundation.

Powered by WoltLab Suite™