Bareos Main Reference and Documentation
For information regarding the newest release see the release notes.
- Introduction and Tutorial
- What is Bareos?
 - Installing the Bareos Server
 - Installing a Bareos Client
 - Updating and upgrading Bareos
 - Bareos Webui
 - Getting Started with Bareos
 - Tutorial
 - Critical Items to Implement Before Production
 
 - Tasks and Concepts
- Bareos Console
 - The Restore Command
 - Volume Management
 - Automated Disk Backup
 - Autochanger & Tape drive Support
- Knowing What SCSI Devices You Have
 - Slots
 - Multiple Devices
 - Device Configuration Records
 - Specifying Slots When Labeling
 - Changing Cartridges
 - Dealing with Multiple Magazines
 - Update Slots Command
 - Using the Autochanger
 - Barcode Support
 - Use bconsole to display Autochanger content
 - Bareos Autochanger Interface
 - Tapespeed and blocksizes
 - Tape Drive Cleaning
 
 - Using Tape Drives without Autochanger
 - Storage Backends
 - Data Spooling
 - Migration and Copy
 - Always Incremental Backup Scheme
 - How to manually transfer data/volumes
 - File Deduplication using Base Jobs
 - Plugins
- Python Plugins
 - Director Plugins
 - Storage Daemon Plugins
 - File Daemon Plugins
 
 - The Windows Version of Bareos
 - Network setup
 - Network Connections Overview
 - Transport Encryption
 - Data Encryption
 - NDMP Backups with Bareos
- NDMP Basics
 - NDMP Backup in Bareos
 - NDMP_BAREOS
- Example Setup for NDMP_BAREOS backup
 - Run NDMP Backup
 - Run NDMP Restore
 - NDMP Copy Jobs
 - Limitations
 
 - NDMP_NATIVE
 - NDMP Common
 
 - Catalog Maintenance
 - Bareos Security Issues
 - Pluggable Authentication Modules (PAM)
 
 - Configuration
- Customizing the Configuration
- Configuration Path Layout
 - Configuration File Format
 - Resource
- Resource Directive
 - Resource Directive Keyword
 - Upper and Lower Case and Spaces
 - Resource Directive Value
 - Spaces
 - Quotes
 - Numbers
 - Data Types
 - Variable Expansion
 - Variable Expansion on Volume Labels
 - Variable Expansion in Autochanger Commands
 - Variable Expansion in Mount Commands
 - Variable Expansion on RunScripts
 - Variable Expansion in Mail and Operator Commands
 
 - Names, Passwords and Authorization
 
 - Director Configuration
 - Storage Daemon Configuration
 - Client/File Daemon Configuration
 - Messages Configuration
 - Console Configuration
 - Monitor Configuration
 
 - Customizing the Configuration
 - Developer Guide
- Bareos Developer Notes
 - Build And Test Bareos
 - Automatic Version Generation
 - Releasing Bareos
 - Git Workflow
 - Message Classes
 - Bareos FD Plugin API
- Normal vs Command vs Options Plugins
 - Loading Plugins
 - loadPlugin
 - Plugin Entry Points
- newPlugin(bpContext *ctx)
 - freePlugin(bpContext *ctx)
 - getPluginValue(bpContext *ctx, pVariable var, void *value)
 - setPluginValue(bpContext *ctx, pVariable var, void *value)
 - handlePluginEvent(bpContext *ctx, bEvent *event, void *value)
 - startBackupFile(bpContext *ctx, struct save_pkt *sp)
 - endBackupFile(bpContext *ctx)
 - startRestoreFile(bpContext *ctx, const char *cmd)
 - createFile(bpContext *ctx, struct restore_pkt *rp)
 - setFileAttributes(bpContext *ctx, struct restore_pkt *rp)
 - endRestoreFile(bpContext *ctx)
 - pluginIO(bpContext *ctx, struct io_pkt *io)
 - bool checkFile(bpContext *ctx, char *fname)
 
 - Bareos Plugin Entrypoints
- bRC registerBareosEvents(bpContext *ctx, …)
 - bRC getBareosValue(bpContext *ctx, bVariable var, void *value)
 - bRC setBareosValue(bpContext *ctx, bVariable var, void *value)
 - bRC JobMessage(bpContext *ctx, const char *file, int line, int type, utime_t mtime, const char *fmt, …)
 - bRC DebugMessage(bpContext *ctx, const char *file, int line, int level, const char *fmt, …)
 - void bareosMalloc(bpContext *ctx, const char *file, int line, size_t size)
 - void bareosFree(bpContext *ctx, const char *file, int line, void *mem)
 
 
 - Python Plugin API
 - Platform Support
 - Daemon Protocol
 - File Services Daemon
 - Storage Daemon Design
 - Catalog Services
 - Configuration Parser
 - Storage Media Output Format
 - Bareos Porting Notes
 - API
 - TLS
 - PAM
 - Tests
 - Bareos Memory Management
 - TCP/IP Network Protocol
 - Director Console Output
 - Reservation
 - Job Execution
 - Python
 - PHP
 - python-bareos Module
- bareos
 - bareos.bsock
 - bareos.bsock.connectiontype
 - bareos.bsock.constants
 - bareos.bsock.directorconsole
- bareos.bsock.directorconsole.DirectorConsole
DirectorConsoleDirectorConsole.argparser_add_default_command_line_arguments()DirectorConsole.argparser_get_bareos_parameter()DirectorConsole.auth()DirectorConsole.call()DirectorConsole.close()DirectorConsole.connect()DirectorConsole.get_cipher()DirectorConsole.get_protocol_version()DirectorConsole.get_tls_psk_identity()DirectorConsole.has_data()DirectorConsole.interactive()DirectorConsole.is_connected()DirectorConsole.is_end_of_message()DirectorConsole.is_tls_psk_available()DirectorConsole.receive_and_evaluate_response_message()DirectorConsole.reconnect()DirectorConsole.recv()DirectorConsole.recv_bytes()DirectorConsole.recv_msg()DirectorConsole.recv_submsg()DirectorConsole.send()DirectorConsole.send_command()
 
 - bareos.bsock.directorconsole.DirectorConsole
 - bareos.bsock.directorconsolejson
- bareos.bsock.directorconsolejson.DirectorConsoleJson
DirectorConsoleJsonDirectorConsoleJson.argparser_add_default_command_line_arguments()DirectorConsoleJson.argparser_get_bareos_parameter()DirectorConsoleJson.auth()DirectorConsoleJson.call()DirectorConsoleJson.call_fullresult()DirectorConsoleJson.close()DirectorConsoleJson.connect()DirectorConsoleJson.get_cipher()DirectorConsoleJson.get_protocol_version()DirectorConsoleJson.get_tls_psk_identity()DirectorConsoleJson.has_data()DirectorConsoleJson.interactive()DirectorConsoleJson.is_connected()DirectorConsoleJson.is_end_of_message()DirectorConsoleJson.is_tls_psk_available()DirectorConsoleJson.receive_and_evaluate_response_message()DirectorConsoleJson.reconnect()DirectorConsoleJson.recv()DirectorConsoleJson.recv_bytes()DirectorConsoleJson.recv_msg()DirectorConsoleJson.recv_submsg()DirectorConsoleJson.send()DirectorConsoleJson.send_command()
 
 - bareos.bsock.directorconsolejson.DirectorConsoleJson
 - bareos.bsock.filedaemon
- bareos.bsock.filedaemon.FileDaemon
FileDaemonFileDaemon.argparser_add_default_command_line_arguments()FileDaemon.argparser_get_bareos_parameter()FileDaemon.auth()FileDaemon.call()FileDaemon.close()FileDaemon.connect()FileDaemon.get_cipher()FileDaemon.get_protocol_version()FileDaemon.get_tls_psk_identity()FileDaemon.has_data()FileDaemon.interactive()FileDaemon.is_connected()FileDaemon.is_end_of_message()FileDaemon.is_tls_psk_available()FileDaemon.receive_and_evaluate_response_message()FileDaemon.reconnect()FileDaemon.recv()FileDaemon.recv_bytes()FileDaemon.recv_msg()FileDaemon.recv_submsg()FileDaemon.send()FileDaemon.send_command()
 
 - bareos.bsock.filedaemon.FileDaemon
 - bareos.bsock.lowlevel
- bareos.bsock.lowlevel.LowLevel
LowLevelLowLevel.argparser_get_bareos_parameter()LowLevel.auth()LowLevel.call()LowLevel.close()LowLevel.connect()LowLevel.get_cipher()LowLevel.get_protocol_version()LowLevel.get_tls_psk_identity()LowLevel.has_data()LowLevel.interactive()LowLevel.is_connected()LowLevel.is_end_of_message()LowLevel.is_tls_psk_available()LowLevel.receive_and_evaluate_response_message()LowLevel.reconnect()LowLevel.recv()LowLevel.recv_bytes()LowLevel.recv_msg()LowLevel.recv_submsg()LowLevel.send()LowLevel.send_command()
 
 - bareos.bsock.lowlevel.LowLevel
 - bareos.bsock.protocolmessageids
 - bareos.bsock.protocolmessages
 - bareos.bsock.protocolversions
 - bareos.bsock.tlsversionparser
 - bareos.util
 - bareos.util.bareosbase64
 - bareos.util.password
 - bareos.util.path
 - bareos.exceptions
- bareos.exceptions.AuthenticationError
 - bareos.exceptions.ConnectionError
 - bareos.exceptions.ConnectionLostError
 - bareos.exceptions.Error
 - bareos.exceptions.JsonRpcErrorReceivedException
 - bareos.exceptions.JsonRpcInvalidJsonReceivedException
 - bareos.exceptions.PamAuthenticationError
 - bareos.exceptions.SignalReceivedException
 - bareos.exceptions.SocketEmptyHeader
 
 
 - Webui
 - Developer FAQ
 
 - Documentation Style Guide
- Introduction
 - reST Overview
 - Common Names
 - Specific Formatting
 - Bareos Specific Formatting
 - Gotchas
 
 - Appendix
- Hardware sizing
 - Operating Systems
 - Bareos Programs
 - The Bootstrap File
 - Verify File Integrity with Bareos
 - Backward Compatibility
 - Catalog Tables
 - Checkpoints
 - Howtos
 - Disaster Recovery Using Bareos
 - Troubleshooting
 - Debugging
 - Release Notes
 - FAQ
- General Questions
 - Upgrade of Bareos 19.2 with installed Python plugin on Debian
 - Bareos 18.2.5 FAQ
- What is the important feature introduced in Bareos 18.2?
 - How to update from Bareos 17.2?
 - How can I see what encryption is being used?
 - What should I do when I get “TLS negotiation failed”?
 - How does the compatibility with old clients work?
 - Does Bareos support TLS 1.3?
 - Are old Bareos clients still working?
 - Can I use a new Bareos 18.2 client with my Bareos 17.2 system?
 
 
 - Bareos Copyright, Trademark, and Licenses
 - Copyright information
 
 - Index