Skip to content
Snippets Groups Projects
  1. Jul 25, 2014
    • Per Cederqvist's avatar
      The --warn option is not named --warning. · a6332a17
      Per Cederqvist authored
      a6332a17
    • Per Cederqvist's avatar
      Added --continue and --only-clone. Improved lysrdiff-monitord. · 6b5c9834
      Per Cederqvist authored
      New options --continue and --only-clone.  Better remote watching of
      the status.
      
      * backup-one-task: Handle --only-clone.  Adjusted to the new CLI
        of lysrdiff-set-status.
      
      * lysrdiff-set-status.py
        (open_socket): New function.
        (sendmsg): Use it to simplify code.
        (completion): New function.
        (Top level): New mandatory first argument: --status, --ok, --warning
          or --fail.
      
      * backup-all: Added --continue and --only-clone.
      
      * lysrdiff-monitord.py
        (now): New function.
        (Client.__init__): New API: use sock and peer arguments instead of
          accept_retval.  Renamed the input buffer from __readbuf to
          _readbuf so that derived classes can use it.
        (Client.read_event): Fixed misnamed errno name.  Track name change
          of _readbuf.
        (Client.got_eof): Track name change of _readbuf.
        (Client.write_event): Handle EAGAIN, ETIMEDOUT and EHOSTUNREACH errors.
        (Client.parse): Track name change of _readbuf.
        (Client.handle_cmd): New command: completed.
        (Client.dispatcher): New method.
        (Server.read_event): Track API change of Client.  Set the new client
          socket nonblocking.
        (Vt100Client.__init__): Negotiate telnet to get a raw byte channel
          using WILL ECHO, WILL SuppressGoahead, DO SuppressGoahead.  Use
          vt100 escape sequences to disable line wrap and query the screen
          size.  Don't register with the dispatcher.
        (Vt100Client.parse): New method.  Register with the dispatcher once
          the screen size report has arrived from the client.
        (Dispatcher.toploop): Write the curren time to vt100 clients every
          second.
        (Dispatcher.register_vt100): Position the cursor at the command line
          position.
        (Dispatcher.write_monitor_status): Format the status separately for
          each client, as their screen sizes may vary.
        (Dispatcher.format_monitor_status): New argument: client.
          Position the cursor properly.
        (Dispatcher.set_status): Use now() to simplify code.  Don't crash if
          a client connection is found to be broken.  Format the status
          separately for each client, as their screen sizes may vary.
        (Dispatcher.format_status_vt100): New argument: client.  Truncate
          the status to the line length reported by the client.  Position
          the cursor at the command line position.
        (Dispatcher.completed): New method.
      6b5c9834
    • Per Cederqvist's avatar
      Cloning of backups, multi-partition backup disks, and more. · 1b09bfc7
      Per Cederqvist authored
      LYSrdiff partitions are now named after both the disk and the
      partition, such as "2/0".  Support cloning.  Support watching the
      backup activity remotely.  Various other fixes and improvements.
      
      * lysrdiff-status: Adapted to the new disk/part scheme, and the new
        double "--" in state files.  Have a per-user state file, so that
        many users can use this script.
      
      * lysrdiff-set-status.py: New.  Talk to lysrdiff-monitord.py.
      
      * lysrdiff-move-obsolete: New option: --auto-confirm.  Adapted to the
        new disk/part scheme, and the new double "--" in state files.
      
      * lysrdiff-move-job: New.  Move a job from one disk to another.
        (Actually, the old backup copy is left in place.  Use
        lysrdiff-move-obsolete to deal with it.)
      
      * lysrdiff-monitord.py: New.  Keep track of what each disk is doing,
        and provide a vt100-over-telnet interface to watch it remotely.
      
      * lysrdiff-label-disk: New.  Create the lysrdiff.id file and the basic
        directory structure.  Create space filler files that can be removed
        in an emergency.
      
      * lysrdiff-df: New.  Run df on all mounted lysrdiff partitions.
      
      * fetch-backup-work: Fetch all of lenin:/home.
      
      * distribute-tasks: The lysrdiff argument is now on the form
        disk/part.
      
      * Makefile
        (install): Added lysrdiff-label-disk and lysrdiff-df.
        (install-one-task): Added lysrdiff-set-status.py and
          lysrdiff-monitord.
      
      * backup-one-task: Replaced the lysrdiffpart argument with disk and
        part arguments.  Handle --only-prune.  Log status using
        lysrdiff-set-status.py.  Removed special-case remoterdiff for
        sedesopim.  The parts of state file names are now separated by "--"
        intead of "-", to avoid confusion with categories and subcategories
        that contain a "-".  Remove increments older than 120 days.  Log the
        disk usage after a backup completes.  Clone the backup to all
        mounted copies.
      
      * backup-all: Added --only-prune.  The part argument is now a
        disk/part string, and the format of the lysrdiff.id file has
        changed.
      1b09bfc7
Loading