[INACTIVE][ADMN] Backup 1.6 - A simple Backup Plugin [818]

Discussion in 'Inactive/Unsupported Plugins' started by Meldanor, Mar 25, 2011.

  1. Offline

    Meldanor

    Important!
    I've stopped the development of this plugin, becase I lost the motivation. The user 'gamerx93' will continue my work in this thread:

    http://forums.bukkit.org/threads/admn-backup-v1-8-3-a-simple-backup-plugin-1392.39927/

    Backup - A simple Backup Plugin :
    Version : 1.6

    After I've searched for a simple, but powerfull backup plugin, I've tried some backups, but some have bugs, other don't save the world before they zip and so on. So I decided to write my own backup plugin.

    Features:
    • Automatically backups the server(all worlds) in a Intervall you've decided and zip it.
    • Saves every world running on the server and every player before the backup
    • Supporting Permission
    • Supporting manuel backups (you can use an ingame command or on the console)
    • Storing only a limit of backups that you've configure
    • You can set that only to backup when player are on the server
    • Stores also the plugin folder
    • Formate the date format
    Download:
    Source
    Plugin

    Changelog:
    Version 1.6:
    • Added option to control where the backups are getting stored
    • Fixed disabling broadcast messages
    • You can now use also the old save system, which is the same as before 1.5
    • Uses godsny's suggestion for the config file. Thanks !
    • Fixed bug deleting the custom dir when the maximum backup limit is hit!
    • Fixed bug stopping the complete backup if there is one file error!
    • Fixed bug not disabling the automatic backup when you set the BackupIntervall to -1
    Version 1.5:
    • Added property to also backup the plugin folder(is set to true by default)
    • Fixed issue with data corruption by using not thread save methods. Thanks to desmin88 for the hints!
    • All worlds(and when enabled the plugin folder) is stored in ONE ZIP
    • Customize the timestamp by merge a fork of xfxian . Thanks to xfxian!
    • You can now disable enabling the autosave (the command "save-on", not the backup cyclus!) by setting the property to true. It is false by default. Notify, that I will run the command "save-off" before I will start the backup to prevent unwished results!
    • When server is starting, the config.ini is checked now. If you don't have the current config.ini you can see on the console a error. Remove / relocate the config temporary to get the newest one.
    Show Spoiler

    Version 1.4a:
    • Fixed the bug " [Backup] Zipping backup is disabled! "
    Version 1.4:
    • Use ASyncMethod instead of SyncMethod (the lags should be gone)
    • Own broadcast messages ( change the message in you config.ini file)
    • A backup is run when the last player has left the server after the normal backup cyclus.
    • Remove worlds from backup (add the names of the worlds in your config.ini files)
    • Add an option to just store the worlds in dirs or zip them
    • Some minor improvements
    Version 1.3a:
    • You can now run a backup from the console using the command backup
    Version 1.3:
    • Implemented new function to only backup when player are online
    • Use Apache Common IO library instead of code from the internet for a better performance and better stability
    Version 1.2b:
    • Fixed bug with empty dirs
    Version 1.2a:
    • Fixed bug not creating config.ini
    Version 1.2:
    • Implement property so only ops can start manuell backups
    • Updated to recommened build 602
    • Tried to fix the problem with some system by using the system file seperator
    Version 1.1:
    • Added option to give manual backups a name(which will never automatically removed by auto backup)
    Version 1.0:
    • First release

    Install
    Just place it in your plugins dir

    Configuration
    Show Spoiler

    After the first start of the plugin it generates a config.ini in "plugins/Backup".
    Here is the current content:

    Version=1.6
    // --All variables are in minutes--
    // How often show the backup run? (#)
    // Notice: -1 Will disable automatic backups. You have to run the backups now manually!
    BackupIntervall=15
    // How many backups are retained? If this limit is hit, the oldest backup will be removed. (#)
    MaximumBackups=96
    // Only allow Ops to preform manual backups? (true/false)
    OnlyOps=true
    // Should backups only be preformed when there are players on the server?
    // Notice: When the last player leaves the server, a final backup will be made
    // within the backup cycle. The automatic backup cycle will resume when a player
    // joins. (true/false)
    BackupOnlyWithPlayer=true
    // Server broadcast message when starting a backup.
    // Notice : Remove the messages(not the property) to disable a broadcast. (text)
    MessageStartBackup=Start backup
    // Server broadcast message when a backup is completed.
    // Notice : Remove the messages(not the property) to disable a broadcast. (text)
    MessageFinishBackup=Finished backup
    // Worlds that should not be archived by the server, seperate them by
    // a semicolon. (directory names)
    // Example : World1;World2;Nether
    DontBackupWorlds=
    // ZIP backups?
    // If enabled, backups will be compressed and stored in a ZIP archive named with
    // the current timestamp.
    // If disabled, the backup will stored in a folder with the timestamp. (true/false)
    ZIPBackup=true
    // Custom date format string that is appended to every backup.
    // If left empty, the default date format is used.
    // This has to be a Java String.format string, see
    // http://download.oracle.com/javase/1.5.0/docs/api/java/util/Formatter.html#syntax
    // for reference.
    // Example: -%1$tY%1$tm%1$td-%1$tH%1$tM%1$tS (YYYYMMDD-HHMMSS: 20101201-011323) (conforms to ISO 8601)
    CustomDateFormat=%1$td%1$tm%1$tY-%1$tH%1$tM%1$tS
    // Enables the auto-save function after the backup.
    // Notice: If you set this to false, this plugin will backup your worlds but not save
    // the data from the memory to your hard disc. If the server crashes between
    // backups, all work is lost. Disable if you use another plugin to save the world
    // to disk (EG: autosave). (true/false)
    EnableAutoSave=true
    // Backup plugin directory? (true/false)
    BackupPluginDIR=true
    // Location of backups
    BackupDir=backups
    // Store all backuped world in one zip? (true/false)
    // If false every worlds backup is saved in one directory named in the format:
    // WORLDNAME_TIMESTAMP
    SummarizeBackupContent=true

    After this just type in your server
    /reload
    to reload the settings


    Permissions
    backup.canbackup

    Commands
    /backup starts a manuel Backup of your server. If you don't have permissions, everybody can run this command.
    /backup NAME starts a manuel Backup of your server. This backup is stored in backups/custom

    So far
    So Mel
     
  2. Offline

    christley

    b818
    backup 1.6
    didnt create backups for me. updates to 737 worked fine. just updated. it says it takes a backup, but it doesnt come back and then it also disables auto saving for the world files so i lost about a days work cause of this.
    isolated to this plugin since it worked when i took it away.

    and yes. restarted 4 times and forced manual backup
     
  3. Offline

    Meldanor

    Have you updated your config?
     
  4. Offline

    Hanswalter123

    Same problem here.
    He starts the backup but and creats the backup folder
    and saved the files but he dont zip it an the message backup finished donst appear.
    i have reinastallt backup 1.6 a few times and edit the cfg but the problem still exist.
     
  5. Offline

    MyAbby

    Redstone circuits break down every time plugin backs up. even the repeater clock.
     
    gamerx93 likes this.
  6. Offline

    xZise

    Okay I'm using CraftBukkit 819, and Backup 1.6 and getting always:
    Code:
    >backup
    15:11:30 [INFO] Start backup
    15:11:30 [INFO] Forcing save..
    15:11:30 [INFO] ConsoleCommandSender: Forcing save..
    15:11:30 [INFO] Save complete.
    15:11:30 [INFO] ConsoleCommandSender: Save complete.
    15:11:30 [INFO] Disabling level saving..
    15:11:30 [INFO] ConsoleCommandSender: Disabling level saving..
    15:11:30 [INFO] java.lang.NullPointerException
    15:11:30 [INFO]         at threading.BackupTask.backup(BackupTask.java:94)
    15:11:30 [INFO]         at threading.BackupTask.run(BackupTask.java:57)
    15:11:30 [INFO]         at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
    15:11:30 [INFO]         at java.lang.Thread.run(Thread.java:662)
    )
    Also on automatic backups.

    [update]Sorry! Didn't delete the old configuration file.[/update]

    Fabian
     
  7. Offline

    foxsick

    Hi guys!
    I have permission 3.1.4.
    I am Admin with this conf :
    Code:
        Ops:
            default: false
            info:
                prefix: '&9'
                suffix: ''
                build: true
            inheritance:
            permissions:
                - '*'
    When I write /backup I have a Message:
    You dont have the rights to backup the server.


    WHY ???? What Can I do???
     
  8. Offline

    EnzoFX

    I believe mine is running perfectly with CB818. I do manually update the config ever since 1.4-ish.
    I only have one cosmetic suggestion. I love this plugin, but I do consider it a "running in the background" sort of thing. Perhaps an option to turn off all in-game messages, unless there is a problem.

    I realize that the start/finished msgs can now be removed, but if I'm not mistaken there are 2 other msgs being broadcasted, the disable/enable level saving, correct?

    I do like the idea of transmitting that a successful backup has been created, so alternatively, maybe only send a single msg at the backup interval that simply states something like "A successful backup has been created."

    Thanks again for this great plugin!
     
  9. Offline

    Hanswalter123

    Why i cant use Colors for broadcast?
    for example &4Backup starts
     
  10. Offline

    ghost0001

    Is there a way to turn off "last man" back up? I am running 818 and it works perfectly. The only issue i have is when my autoshutdown/restart plugin tries to run and kicks all the players. I believe its because this plugin is trying to zip my back up and cant get my server to shutdown properly before the new window opens up and trys to start to the server.
     
  11. Offline

    jotebu

    Is it possible to setup a backup folder on another network device?
    Example: \\Server\minecraft_backup

    I tried, but it did not work for me.

    best regards
    Jotebu
     
  12. Offline

    godgodgodgo

    Love the plugin! I assume this works with CB#860
    P.S It's spelled "manual" ;)
    Thanks, keep up the good work.
     
  13. I am using this on CB860.. and i get this error:

    Code:
    2011-06-12 22:14:43 [INFO] Start backup
    2011-06-12 22:14:43 [INFO] Forcing save..
    2011-06-12 22:14:43 [INFO] ConsoleCommandSender: Forcing save..
    2011-06-12 22:14:46 [INFO] Save complete.
    2011-06-12 22:14:46 [INFO] ConsoleCommandSender: Save complete.
    2011-06-12 22:14:46 [INFO] Disabling level saving..
    2011-06-12 22:14:46 [INFO] ConsoleCommandSender: Disabling level saving..
    2011-06-12 22:14:46 [INFO] [BACKUP] Backup is disabled for the following world(s):
    2011-06-12 22:14:46 [INFO] [world_nether]
    2011-06-12 22:14:46 [INFO] [BACKUP] Backup compression is disabled.
    2011-06-12 22:14:46 [WARNING] Can't keep up! Did the system time change, or is the server overloaded?
    2011-06-12 22:14:46 [INFO] java.io.IOException: Operation not permitted
    2011-06-12 22:14:46 [INFO]     at sun.nio.ch.FileChannelImpl.map0(Native Method)
    2011-06-12 22:14:46 [INFO]     at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:734)
    2011-06-12 22:14:46 [INFO]     at sun.nio.ch.FileChannelImpl.transferFromFileChannel(FileChannelImpl.java:527)
    2011-06-12 22:14:46 [INFO]     at sun.nio.ch.FileChannelImpl.transferFrom(FileChannelImpl.java:590)
    2011-06-12 22:14:46 [INFO]     at io.FileUtils.doCopyFile(FileUtils.java:299)
    2011-06-12 22:14:46 [INFO]     at io.FileUtils.doCopyDirectory(FileUtils.java:265)
    2011-06-12 22:14:46 [INFO]     at io.FileUtils.doCopyDirectory(FileUtils.java:263)
    2011-06-12 22:14:46 [INFO]     at io.FileUtils.copyDirectory(FileUtils.java:231)
    2011-06-12 22:14:46 [INFO]     at io.FileUtils.copyDirectory(FileUtils.java:157)
    2011-06-12 22:14:46 [INFO]     at io.FileUtils.copyDirectory(FileUtils.java:126)
    2011-06-12 22:14:46 [INFO]     at threading.BackupTask.backup(BackupTask.java:101)
    2011-06-12 22:14:46 [INFO]     at threading.BackupTask.run(BackupTask.java:57)
    2011-06-12 22:14:46 [INFO]     at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
    2011-06-12 22:14:46 [INFO]     at java.lang.Thread.run(Thread.java:662)
    this is my config:

    Code:
    Version=1.6
    // --All variables are in minutes--
    // How often show the backup run? (#)
    // Notice: -1 Will disable automatic backups. You have to run the backups now manually!
    BackupIntervall=15
    // How many backups are retained? If this limit is hit, the oldest backup will be removed. (#)
    MaximumBackups=96
    // Only allow Ops to preform manual backups? (true/false)
    OnlyOps=true
    // Should backups only be preformed when there are players on the server?
    // Notice: When the last player leaves the server, a final backup will be made
    // within the backup cycle. The automatic backup cycle will resume when a player
    // joins. (true/false)
    BackupOnlyWithPlayer=true
    // Server broadcast message when starting a backup.
    // Notice : Remove the messages(not the property) to disable a broadcast. (text)
    MessageStartBackup=Start backup
    // Server broadcast message when a backup is completed.
    // Notice : Remove the messages(not the property) to disable a broadcast. (text)
    MessageFinishBackup=Finished backup
    // Worlds that should not be archived by the server, seperate them by
    // a semicolon. (directory names)
    // Example : World1;World2;Nether
    DontBackupWorlds=world_nether
    // ZIP backups?
    // If enabled, backups will be compressed and stored in a ZIP archive named with
    // the current timestamp.
    // If disabled, the backup will stored in a folder with the timestamp. (true/false)
    ZIPBackup=false
    // Custom date format string that is appended to every backup.
    // If left empty, the default date format is used.
    // This has to be a Java String.format string, see
    // http://download.oracle.com/javase/1.5.0/docs/api/java/util/Formatter.html#syntax
    // for reference.
    // Example: -%1$tY%1$tm%1$td-%1$tH%1$tM%1$tS (YYYYMMDD-HHMMSS: 20101201-011323) (conforms to ISO 8601)
    CustomDateFormat=%1$td%1$tm%1$tY-%1$tH%1$tM%1$tS
    // Enables the auto-save function after the backup.
    // Notice: If you set this to false, this plugin will backup your worlds but not save
    // the data from the memory to your hard disc. If the server crashes between
    // backups, all work is lost. Disable if you use another plugin to save the world
    // to disk (EG: autosave). (true/false)
    EnableAutoSave=true
    // Backup plugin directory? (true/false)
    BackupPluginDIR=false
    // Location of backups
    BackupDir=backups
    // Store all backuped world in one zip? (true/false)
    // If false every worlds backup is saved in one directory named in the format:
    // WORLDNAME_TIMESTAMP
    SummarizeBackupContent=false
    
     
  14. Offline

    Donald Scott

    Good, but the zip backup throws an error... Nevermind. All is well.

    Code:
    [S]13:18:48 [INFO] Starting automagical backup script.[/S]
    [S]13:18:48 [INFO] Forcing save..[/S]
    [S]13:18:48 [INFO] ConsoleCommandSender: Forcing save..[/S]
    [S]13:18:51 [INFO] Save complete.[/S]
    [S]13:18:51 [INFO] ConsoleCommandSender: Save complete.[/S]
    [S]13:18:51 [INFO] Disabling level saving..[/S]
    [S]13:18:51 [INFO] ConsoleCommandSender: Disabling level saving..[/S]
    [S]13:18:51 [WARNING] Can't keep up! Did the system time change, or is the server o[/S]
    [S]verloaded?[/S]
    [S]13:18:54 [INFO] java.io.IOException: Failed to copy full contents from 'plugins\[/S]
    [S]AntiXRay\debug.log' to 'AutoBackups\13062011-131851\plugins\AntiXRay\debug.log'[/S]
    [S]13:18:54 [INFO]         at io.FileUtils.doCopyFile(FileUtils.java:310)[/S]
    [S]13:18:54 [INFO]         at io.FileUtils.doCopyDirectory(FileUtils.java:265)[/S]
    [S]13:18:54 [INFO]         at io.FileUtils.doCopyDirectory(FileUtils.java:263)[/S]
    [S]13:18:54 [INFO]         at io.FileUtils.copyDirectory(FileUtils.java:231)[/S]
    [S]13:18:54 [INFO]         at io.FileUtils.copyDirectory(FileUtils.java:157)[/S]
    [S]13:18:54 [INFO]         at io.FileUtils.copyDirectory(FileUtils.java:126)[/S]
    [S]13:18:54 [INFO]         at threading.BackupTask.backup(BackupTask.java:86)[/S]
    [S]13:18:54 [INFO]         at threading.BackupTask.run(BackupTask.java:57)[/S]
    [S]13:18:54 [INFO]         at org.bukkit.craftbukkit.scheduler.CraftWorker.run(Craf[/S]
    [S]tWorker.java:34)[/S]
    [S]13:18:54 [INFO]         at java.lang.Thread.run(Unknown Source)[/S]
     
  15. Offline

    jumika

    i got this:
    Code:
    2011-06-13 20:27:27 [INFO] Start backup
    2011-06-13 20:27:27 [INFO] Forcing save..
    2011-06-13 20:27:27 [INFO] ConsoleCommandSender: Forcing save..
    2011-06-13 20:27:28 [INFO] Save complete.
    2011-06-13 20:27:28 [INFO] ConsoleCommandSender: Save complete.
    2011-06-13 20:27:28 [INFO] Disabling level saving..
    2011-06-13 20:27:28 [INFO] ConsoleCommandSender: Disabling level saving..
    2011-06-13 20:27:28 [INFO] java.lang.NullPointerException
    2011-06-13 20:27:28 [INFO]     at threading.BackupTask.backup(BackupTask.java:94)
    2011-06-13 20:27:28 [INFO]     at threading.BackupTask.run(BackupTask.java:57)
    2011-06-13 20:27:28 [INFO]     at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
    2011-06-13 20:27:28 [INFO]     at java.lang.Thread.run(Unknown Source) 
    And than no new files in backup folder.

    Its working now. I had to regenerate the config file.
     
  16. Offline

    sicksurfer123

    where does it save to? the backups?
     
  17. Offline

    cheesyweirdlo

    Im really sorry to bug you, but the download file doesnt give me a .jar file. I want to update to backup 1.6 cuz my 1.5 no longer works (bugs). How do i install the plugin without the .jar file?

    nvm got it working fine
     
  18. Offline

    Donald Scott

    URGENT: This plugin is not deleting backups!

    Code:
    11:27:08 [INFO] Starting automagical backup script.
    11:27:08 [INFO] Forcing save..
    11:27:08 [INFO] ConsoleCommandSender: Forcing save..
    11:27:09 [INFO] Save complete.
    11:27:09 [INFO] ConsoleCommandSender: Save complete.
    11:27:09 [INFO] Disabling level saving..
    11:27:09 [INFO] ConsoleCommandSender: Disabling level saving..
    11:27:09 [INFO] [BACKUP] Backup is disabled for the following world(s):
    11:27:09 [INFO] [MainWorld_nether]
    11:27:42 [INFO] java.lang.ArrayIndexOutOfBoundsException: 98
    11:27:42 [INFO]         at threading.BackupTask.deleteOldBackups(BackupTask.java:155)
    11:27:42 [INFO]         at threading.BackupTask.backup(BackupTask.java:116)
    11:27:42 [INFO]         at threading.BackupTask.run(BackupTask.java:57)
    11:27:42 [INFO]         at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
    11:27:42 [INFO]         at java.lang.Thread.run(Unknown Source)
    11:27:42 [INFO] Enabling level saving..
    11:27:42 [INFO] ConsoleCommandSender: Enabling level saving..
    11:27:42 [INFO] Finished backup.
    I beifly looked at your code and the only thing that I think might be causing this is concurrent modification of the arrays. I would try actually copying the arrays and seeing what happens.

    Code:
     private void deleteOldBackups () {
            try {
                //
                File backupDir = new File(pSystem.getStringProperty(STRING_BACKUP_FOLDER));
                // get every zip file in the backup Dir
                File[] tempArray = backupDir.listFiles();
                File[] array = new File[tempArray.length - 1];
                for (int i = 0 , j = 0; i < tempArray.length ; ++i) {
                    File file = tempArray[i];
                    if (file.isDirectory() && file.getName().equals("custom"))
                        continue;
                    array[j++] = tempArray[i]; //THIS IS LINE 155
                }
                tempArray = array;
                final int maxBackups = pSystem.getIntProperty(INT_MAX_BACKUPS);
                // when are more backups existing as allowed as to store
                if (tempArray.length > maxBackups) {
                    System.out.println("Delete old backups");
    
                    // Store the to delete backups in a list
                    ArrayList<File> backups = new ArrayList<File>(tempArray.length);
                    // For this add all backups in the list and remove later the newest ones
                    backups.addAll(Arrays.asList(tempArray));
    
                    // the current index of the newest backup
                    int maxModifiedIndex;
                    // the current time of the newest backup
                    long maxModified;
    
                    //remove all newest backups from the list to delete
                    for (int i = 0 ; i < maxBackups ; ++i) {
                        maxModifiedIndex = 0;
                        maxModified = backups.get(0).lastModified();
                        for (int j = 1 ; j < backups.size() ; ++j) {
                            File currentFile = backups.get(j);
                            if (currentFile.lastModified() > maxModified) {
                                maxModified = currentFile.lastModified();
                                maxModifiedIndex = j;
                            }
                        }
                        backups.remove(maxModifiedIndex);
                    }
                    System.out.println("[BACKUP] Removing the following backups due to age:");
                    System.out.println(Arrays.toString(backups.toArray()));
                    // this are the oldest backups, so delete them
                    for (File backupToDelete : backups)
                        backupToDelete.delete();
                }
            }
            catch (Exception e) {
                e.printStackTrace(System.out);
            }
        }
    
     
  19. Offline

    eiika

    How do I install this? The download gives me a .zip, and inside there is no jar file. I have tried to extract the contents of the zip both into the folder backup inside plugins, and also just extract the files/folders directly into the plugin folder
     
  20. Offline

    Oneduality

    I've installed this plugin after I had an unfortunate worldedit schematic disaster ;) a HUGE building much larger than I anticipated.. demolished several buildings I created on my own and then the client crashed preventing me from being able to undo the disaster.. a backup would have been great! now I have backups.. the question is.... how do I restore from it? ..

    Say I attempt to load a schematic but I run a backup first ....

    /backup BeforeSchematic

    Now I paste the schematic in and I crash ..

    How do I restore "BeforeSchematic" ? ... can I simply stop the server, extract the zip and overwrite files? .. or is it more involved than this? .. there's no instructions I found on restoring, only backing up .. I saw mention of WorldEdit but there's no detail ..

    This would be EXTREMELY useful information to have on the original post because I don't know how to make use of this completely.
     
  21. Offline

    opoq

    Hello :) This has been a fantastic plugin, but recently produces errors. I'm afraid I don't know what changes to my server, if any, coincided with these errors beginning.

    I'm running RB860 and Backup 1.6. The error only occurs when players are logged in.

    Show Spoiler
    Code:
    13:14:07 [INFO] Forcing save..[/B]
    [B]13:14:07 [INFO] ConsoleCommandSender: Forcing save..[/B]
    [B]13:14:08 [INFO] Save complete.[/B]
    [B]13:14:08 [INFO] ConsoleCommandSender: Save complete.[/B]
    [B]13:14:08 [INFO] Disabling level saving..[/B]
    [B]13:14:08 [INFO] ConsoleCommandSender: Disabling level saving..[/B]
    [B]13:14:08 [INFO] [BACKUP] An error occurs while creating a temporary copy of world LogieTrail. Maybe the complete world isn' backuped, please take a look at it![/B]
    [B]13:14:08 [INFO] java.io.IOException: Map failed[/B]
    [B]13:14:08 [INFO]     at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:803)[/B]
    [B]13:14:08 [INFO]     at sun.nio.ch.FileChannelImpl.transferFromFileChannel(FileChannelImpl.java:578)[/B]
    [B]13:14:08 [INFO]     at sun.nio.ch.FileChannelImpl.transferFrom(FileChannelImpl.java:641)[/B]
    [B]13:14:08 [INFO]     at io.FileUtils.doCopyFile(FileUtils.java:299)[/B]
    [B]13:14:08 [INFO]     at io.FileUtils.doCopyDirectory(FileUtils.java:265)[/B]
    [B]13:14:08 [INFO]     at io.FileUtils.doCopyDirectory(FileUtils.java:263)[/B]
    [B]13:14:08 [INFO]     at io.FileUtils.copyDirectory(FileUtils.java:231)[/B]
    [B]13:14:08 [INFO]     at io.FileUtils.copyDirectory(FileUtils.java:157)[/B]
    [B]13:14:08 [INFO]     at io.FileUtils.copyDirectory(FileUtils.java:126)[/B]
    [B]13:14:08 [INFO]     at threading.BackupTask.backup(BackupTask.java:77)[/B]
    [B]13:14:08 [INFO]     at threading.BackupTask.run(BackupTask.java:57)[/B]
    [B]13:14:08 [INFO]     at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)[/B]
    [B]13:14:08 [INFO]     at java.lang.Thread.run(Thread.java:679)[/B]
    [B]13:14:08 [INFO] Caused by: java.lang.OutOfMemoryError: Map failed[/B]
    [B]13:14:08 [INFO]     at sun.nio.ch.FileChannelImpl.map0(Native Method)[/B]
    [B]13:14:08 [INFO]     at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:800)[/B]
    [B]13:14:08 [INFO]     ... 12 more[/B]
    [B]13:14:16 [INFO] Delete old backups[/B]
    [B]13:14:16 [INFO] [BACKUP] Removing the following backups due to age:[/B]
    [B]13:14:16 [INFO] [backups/11062011-213942, backups/11062011-110544, backups/09062011-110602, backups/11062011-083544, backups/12062011-060941, backups/08062011-204559, backups/12062011-065441.zip, backups/10062011-125146, backups/08062011-154811][/B]
    [B]13:14:16 [INFO] Enabling level saving..[/B]
    [B]13:14:16 [INFO] ConsoleCommandSender: Enabling level saving..[/B]
    [B]13:14:16 [INFO] Server backed up.[/B]
    [B]
    [/CODE][/B]
     
  22. Offline

    Zarius

    Yup, I would rename the "world" folder just in case you need the original (bigbuildingchaos) world then extract the "world" folder from the zip and place it back into your server folder.

    You can use WorldEdit to selectively restore just a small section of your map (useful if you discover something gone after several backups and don't want to lose other work. See here for more details.
     
  23. Offline

    TheCrazyOne

    Same problem as Donald Scot, This plugin is not deleting backups!
    The server begin to give an error, after some searching i found that my Backup folder was 120 GB.......
    After removing manually ~1200 backups, the server runs again....
    Config.ini

    Code:
    Version=1.6
    // --All variables are in minutes--
    // How often show the backup run? (#)
    // Notice: -1 Will disable automatic backups. You have to run the backups now manually!
    BackupIntervall=15
    // How many backups are retained? If this limit is hit, the oldest backup will be removed. (#)
    MaximumBackups=50
    // Only allow Ops to preform manual backups? (true/false)
    OnlyOps=true
    // Should backups only be preformed when there are players on the server?
    // Notice: When the last player leaves the server, a final backup will be made
    // within the backup cycle. The automatic backup cycle will resume when a player
    // joins. (true/false)
    BackupOnlyWithPlayer=true
    // Server broadcast message when starting a backup.
    // Notice : Remove the messages(not the property) to disable a broadcast. (text)
    MessageStartBackup=[Server] Starting backup.
    // Server broadcast message when a backup is completed.
    // Notice : Remove the messages(not the property) to disable a broadcast. (text)
    MessageFinishBackup=[Server] Finished backup.
    // Worlds that should not be archived by the server, seperate them by
    // a semicolon. (directory names)
    // Example : World1;World2;Nether
    DontBackupWorlds=
    // ZIP backups?
    // If enabled, backups will be compressed and stored in a ZIP archive named with
    // the current timestamp.
    // If disabled, the backup will stored in a folder with the timestamp. (true/false)
    ZIPBackup=true
    // Custom date format string that is appended to every backup.
    // If left empty, the default date format is used.
    // This has to be a Java String.format string, see
    // http://download.oracle.com/javase/1.5.0/docs/api/java/util/Formatter.html#syntax
    // for reference.
    // Example: -%1$tY%1$tm%1$td-%1$tH%1$tM%1$tS (YYYYMMDD-HHMMSS: 20101201-011323) (conforms to ISO 8601)
    CustomDateFormat=%1$td%1$tm%1$tY-%1$tH%1$tM%1$tS
    // Enables the auto-save function after the backup.
    // Notice: If you set this to false, this plugin will backup your worlds but not save
    // the data from the memory to your hard disc. If the server crashes between
    // backups, all work is lost. Disable if you use another plugin to save the world
    // to disk (EG: autosave). (true/false)
    EnableAutoSave=true
    // Backup plugin directory? (true/false)
    BackupPluginDIR=true
    // Location of backups
    BackupDir=C:\Users\Administrator\Desktop\Backup
    // Store all backuped world in one zip? (true/false)
    // If false every worlds backup is saved in one directory named in the format:
    // WORLDNAME_TIMESTAMP
    SummarizeBackupContent=true
    

    Code:
    00:31:03 [INFO] [Server] Starting backup.
    00:31:03 [INFO] Forcing save..
    00:31:03 [INFO] ConsoleCommandSender: Forcing save..
    00:31:04 [INFO] Save complete.
    00:31:04 [INFO] ConsoleCommandSender: Save complete.
    00:31:04 [INFO] Disabling level saving..
    00:31:04 [INFO] ConsoleCommandSender: Disabling level saving..
    00:31:09 [INFO] java.lang.ArrayIndexOutOfBoundsException: 67
    00:31:09 [INFO]         at threading.BackupTask.deleteOldBackups(BackupTask.java
    :155)
    00:31:09 [INFO]         at threading.BackupTask.backup(BackupTask.java:116)
    00:31:09 [INFO]         at threading.BackupTask.run(BackupTask.java:57)
    00:31:09 [INFO]         at org.bukkit.craftbukkit.scheduler.CraftWorker.run(Craf
    tWorker.java:34)
    00:31:09 [INFO]         at java.lang.Thread.run(Unknown Source)
    00:31:09 [INFO] Enabling level saving..
    00:31:09 [INFO] ConsoleCommandSender: Enabling level saving..
    00:31:09 [INFO] [Server] Finished backup.
     
  24. Offline

    Juze

    @Meldanor: I didn't want to wait on you, so I went ahead and changed your post to have two unspoilered latest changes. The changelog should always have two latest changes visible.
     
  25. Nice Plugins, works perfectly.
    Thank you!

    But all my Backups are nothing, if my harddisk crashes :(

    Is it possible to send Backups automatically via FTP oder FTPS to an external Storage?
    Incrementiell Backups would be nice too :)
     
  26. Offline

    Donald Scott

    This plugin is not being supported actively by the author. The automatic deletions is clearly broken and will result in full hard drives if you don't intervene.
     
  27. Offline

    xZise

    Why is it clearly broken? He set the default limit to 1 day, so you have at least the backups of 24 hours, but when sometimes nobody is online, this plugin won't create a backup, so I have with 12 backups (and yep exact 12 zips without intervention) and 15 minutes also backups from yesterday night (20:25 UTC).

    Fabian
     
  28. Offline

    Kaosvf

    Hi,
    I have changed the backups interval in 60 (minutes) and now the day+nigh dures 60minutes (real)... is this plugin that changed it?
     
  29. Offline

    xZise

    What do you want to say? You have a backup interval of 1 hour and what is now?

    Fabian
     
  30. Offline

    Scarasyte

    Oh wow thanks. Every since Minecraft 1.6 was released if at any time my server is unexpectedly turned off by perhaps a power outage, i tend to have a weird biome issue that causes a freeze-over. I always have to make backups to avoid it, but i keep forgetting to do it. Since i found this plugin i don't need to worry as much.
     
  31. Offline

    Kaosvf

    uhm, nothing, resolved.. the sun had a problem: it lasted 30 minutes... like the moon (one hour in total) but now are ok.
     

Share This Page