summaryrefslogtreecommitdiff
path: root/manual
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2015-12-12 16:04:25 +0100
committerLars Wirzenius <liw@liw.fi>2015-12-12 16:04:25 +0100
commit77bab3a39296a36c1c4213306a22e219c21dcee0 (patch)
tree9832a13d363255243d1c01bf89d557714685fc50 /manual
parentf7725d07d6262d9e7a4f69044afa582ef0f7c363 (diff)
downloadobnam-77bab3a39296a36c1c4213306a22e219c21dcee0.tar.gz
Add list of Obnam errors to manual
This also drops the find-all-obnam-errors in favour of "obnam list-errors".
Diffstat (limited to 'manual')
-rw-r--r--manual/en/800-errors.mdwn10
-rw-r--r--manual/en/801-errors.mdwn269
2 files changed, 279 insertions, 0 deletions
diff --git a/manual/en/800-errors.mdwn b/manual/en/800-errors.mdwn
new file mode 100644
index 00000000..e42580cf
--- /dev/null
+++ b/manual/en/800-errors.mdwn
@@ -0,0 +1,10 @@
+Appendix: Error messages
+========================
+
+This appendix lists all Obnam error messages and their explanations.
+It is possible you'll see other error messages while running Obnam.
+These are not listed here, as Obnam doesn't know about them.
+
+The errors are listed twice: briefly, in order of their unique
+error, and then more fully, in alphabetical order.
+
diff --git a/manual/en/801-errors.mdwn b/manual/en/801-errors.mdwn
new file mode 100644
index 00000000..084f2798
--- /dev/null
+++ b/manual/en/801-errors.mdwn
@@ -0,0 +1,269 @@
+## By error code
+
+* `R018FCX ToplevelIsFileError`
+* `R01F56X RepositorySettingMissingError`
+* `R02C17X HardlinkError`
+* `R0B15DX RepositoryGenerationDoesNotExist`
+* `R0BE94X RepositoryClientNotLocked`
+* `R0C79EX GpgError`
+* `R0F22CX URLSchemeAlreadyRegisteredError`
+* `R0FC21X SetMetadataError`
+* `R169C6X MissingFilterError`
+* `R173AEX NoFilterTagError`
+* `R1A025X RepositoryClientKeyNotAllowed`
+* `R1CA00X ClientDoesNotExistError`
+* `R22E66X SizeSyntaxError`
+* `R24424X RepositoryClientDoesNotExist`
+* `R283A6X UnitNameError`
+* `R2FA37X WrongNumberOfGenerationSettingsError`
+* `R338F2X BackupRootMissingError`
+* `R3B42AX WrongNumberOfGenerationsForVerify`
+* `R3E151X RepositoryFileDoesNotExistInGeneration`
+* `R3E1C1X RestoreTargetNotEmpty`
+* `R41CE6X RepositoryClientAlreadyExists`
+* `R43272X RepositoryChunkDoesNotExist`
+* `R45B50X DuplicatePeriodError`
+* `R47416X WrongHostKeyError`
+* `R4C3BCX BackupErrors`
+* `R57207X RepositoryClientGenerationUnfinished`
+* `R5914DX InvalidPortError`
+* `R5F98AX NoHostKeyError`
+* `R681AEX LockFail`
+* `R6A098X RepositoryGenerationKeyNotAllowed`
+* `R6C1C8X RepositoryClientListNotLocked`
+* `R6EAF2X RepositoryClientLockingFailed`
+* `R7137EX BagIdNotSetError`
+* `R79699X RepositoryFileKeyNotAllowed`
+* `R79ED6X BackupRootDoesNotExist`
+* `R7B8D0X FileNotFoundError`
+* `R826A1X UnknownVFSError`
+* `R8AAC1X NoHostKeyOfWantedTypeError`
+* `R8F974X RepositoryChunkIndexesLockingFailed`
+* `R91CA1X ShowFirstGenerationError`
+* `R9808DX ForgetPolicySyntaxError`
+* `RA4F35X RootIsNotADirectory`
+* `RA5942X WrongNumberOfGenerationsForDiffError`
+* `RA7D64X UnknownRepositoryFormatWanted`
+* `RA881CX RepositoryChunkContentNotInIndexes`
+* `RA920EX NotARepository`
+* `RABC26X FuseModuleNotFoundError`
+* `RB1048X RepositoryClientListLockingFailed`
+* `RB4324X GAImmutableError`
+* `RB8E98X WrongURLSchemeError`
+* `RB927BX SeparatorError`
+* `RBF6DDX RepositoryAccessError`
+* `RCB0CAX KeyAuthenticationError`
+* `RCE08AX ObnamIOError`
+* `RCEF5CX MallocError`
+* `RD5FA4X ObnamSystemError`
+* `RD6259X RestoreErrors`
+* `RDF30DX Fail`
+* `RE187FX RepositoryChunkIndexesNotLocked`
+* `REFB32X RepositoryClientHasNoGenerations`
+* `RF4EFDX UnknownRepositoryFormat`
+
+
+## By name
+
+`BackupErrors` (`R4C3BCX`)
+: There were errors during the backup
+
+`BackupRootDoesNotExist` (`R79ED6X`)
+: Backup root does not exist or is not a directory: {root}
+
+`BackupRootMissingError` (`R338F2X`)
+: No backup roots specified
+
+`BagIdNotSetError` (`R7137EX`)
+: Bag id not set: cannot append a blob (programming error)
+
+`ClientDoesNotExistError` (`R1CA00X`)
+: Client {client} does not exist in repository {repo}
+
+`DuplicatePeriodError` (`R45B50X`)
+: Forget policy may not duplicate period ({period}): {policy}
+
+`Fail` (`RDF30DX`)
+: {filename}: {reason}
+
+`FileNotFoundError` (`R7B8D0X`)
+: FUSE: File not found: {filename}
+
+`ForgetPolicySyntaxError` (`R9808DX`)
+: Forget policy syntax error: {policy}
+
+`FuseModuleNotFoundError` (`RABC26X`)
+: Failed to load module "fuse", try installing python-fuse
+
+`GAImmutableError` (`RB4324X`)
+: Attempt to modify an immutable GADirectory
+
+`GpgError` (`R0C79EX`)
+: gpg failed with exit code {returncode}: {stderr}
+
+`HardlinkError` (`R02C17X`)
+: Cannot hardlink on SFTP; sorry
+
+ This is due to a limitation in the Python paramiko library that
+ Obnam uses for SSH/SFTP access.
+
+`InvalidPortError` (`R5914DX`)
+: Invalid port number {port} in {url}: {error}
+
+`KeyAuthenticationError` (`RCB0CAX`)
+: Can't authenticate to SSH server using key
+
+`LockFail` (`R681AEX`)
+: Couldn't create lock {lock_name}: {reason}
+
+`MallocError` (`RCEF5CX`)
+: malloc out of memory while calling {function}
+
+`MissingFilterError` (`R169C6X`)
+: Unknown filter tag: {tagname}
+
+`NoFilterTagError` (`R173AEX`)
+: No filter tag found
+
+`NoHostKeyError` (`R5F98AX`)
+: No known host key for {hostname}
+
+`NoHostKeyOfWantedTypeError` (`R8AAC1X`)
+: No known type {key_type} host key for {hostname}
+
+`NotARepository` (`RA920EX`)
+: {url} does not seem to be an Obnam repository
+
+`ObnamIOError` (`RCE08AX`)
+: I/O error: {filename}: {errno}: {strerror}
+
+`ObnamSystemError` (`RD5FA4X`)
+: System error: {filename}: {errno}: {strerror}
+
+`RepositoryAccessError` (`RBF6DDX`)
+: Repository does not exist or cannot be accessed: {error}
+
+`RepositoryChunkContentNotInIndexes` (`RA881CX`)
+: Repository chunk indexes do not contain content
+
+`RepositoryChunkDoesNotExist` (`R43272X`)
+: Repository doesn't contain chunk {chunk_id}. It is expected at
+ {filename}
+
+`RepositoryChunkIndexesLockingFailed` (`R8F974X`)
+: Repository chunk indexes are already locked
+
+`RepositoryChunkIndexesNotLocked` (`RE187FX`)
+: Repository chunk indexes are not locked
+
+`RepositoryClientAlreadyExists` (`R41CE6X`)
+: Repository client {client_name} already exists
+
+`RepositoryClientDoesNotExist` (`R24424X`)
+: Repository client {client_name} does not exist
+
+`RepositoryClientGenerationUnfinished` (`R57207X`)
+: Cannot start new generation for {client_name}: previous one is not
+ finished yet (programming error)
+
+`RepositoryClientHasNoGenerations` (`REFB32X`)
+: Client {client_name} has no generations
+
+`RepositoryClientKeyNotAllowed` (`R1A025X`)
+: Client {client_name} uses repository format {format} which does
+ not allow the key {key_name} to be use for clients
+
+`RepositoryClientListLockingFailed` (`RB1048X`)
+: Repository client list could not be locked
+
+`RepositoryClientListNotLocked` (`R6C1C8X`)
+: Repository client list is not locked
+
+`RepositoryClientLockingFailed` (`R6EAF2X`)
+: Repository client {client_name} could not be locked
+
+`RepositoryClientNotLocked` (`R0BE94X`)
+: Repository client {client_name} is not locked
+
+`RepositoryFileDoesNotExistInGeneration` (`R3E151X`)
+: Client {client_name}, generation {genspec} does not have file
+ {filename}
+
+`RepositoryFileKeyNotAllowed` (`R79699X`)
+: Client {client_name} uses repository format {format} which does
+ not allow the key {key_name} to be use for files
+
+`RepositoryGenerationDoesNotExist` (`R0B15DX`)
+: Cannot find requested generation {gen_id!r} for client
+ {client_name}
+
+`RepositoryGenerationKeyNotAllowed` (`R6A098X`)
+: Client {client_name} uses repository format {format} which does
+ not allow the key {key_name} to be used for generations
+
+`RepositorySettingMissingError` (`R01F56X`)
+: No --repository setting. You need to specify it on the command
+ line or a configuration file
+
+`RestoreErrors` (`RD6259X`)
+: There were errors when restoring
+
+ See previous error messages for details.
+
+`RestoreTargetNotEmpty` (`R3E1C1X`)
+: The restore --to directory ({to}) is not empty.
+
+`RootIsNotADirectory` (`RA4F35X`)
+: {baseurl} is not a directory, but a VFS root must be a directory
+
+`SeparatorError` (`RB927BX`)
+: Forget policy must have rules separated by commas, see position
+ {position}: {policy}
+
+`SetMetadataError` (`R0FC21X`)
+: {filename}: Couldn't set metadata {metadata}: {errno}: {strerror}
+
+`ShowFirstGenerationError` (`R91CA1X`)
+: Can't show first generation. Use 'obnam ls' instead
+
+`SizeSyntaxError` (`R22E66X`)
+: "{size}" is not a valid size
+
+`ToplevelIsFileError` (`R018FCX`)
+: File at repository root: {filename}
+
+`URLSchemeAlreadyRegisteredError` (`R0F22CX`)
+: VFS URL scheme {scheme} already registered
+
+`UnitNameError` (`R283A6X`)
+: "{unit}" is not a valid unit
+
+`UnknownRepositoryFormat` (`RF4EFDX`)
+: Unknown format {format} at {url}
+
+`UnknownRepositoryFormatWanted` (`RA7D64X`)
+: Unknown format {format} requested
+
+`UnknownVFSError` (`R826A1X`)
+: Unknown VFS type: {url}
+
+`WrongHostKeyError` (`R47416X`)
+: SSH server {hostname} offered wrong public key
+
+ Note that this may due to an obsolete host key in your "known
+ hosts" file. If so, use "ssh-key -R" to remove it. However, it can
+ also be a sign that someone is trying to hijack your connection to
+ your server, and you should be careful.
+
+`WrongNumberOfGenerationSettingsError` (`R2FA37X`)
+: The restore command wants exactly one generation option
+
+`WrongNumberOfGenerationsForDiffError` (`RA5942X`)
+: Need one or two generations
+
+`WrongNumberOfGenerationsForVerify` (`R3B42AX`)
+: verify must be given exactly one generation
+
+`WrongURLSchemeError` (`RB8E98X`)
+: SftpFS used with non-sftp URL: {url}
+