Dietmar Maurer
6f63c29306
Cargo.toml: fix: set version to 1.0.12
2021-03-26 14:14:12 +01:00
Dietmar Maurer
c0e365fd49
bump version to 1.0.12-1
2021-03-26 14:09:30 +01:00
Dietmar Maurer
c553407e98
tape: add --scan option for catalog restore
2021-03-25 13:08:34 +01:00
Dietmar Maurer
4830de408b
tape: avoid writing catalogs for empty backup tasks
2021-03-25 12:50:40 +01:00
Dietmar Maurer
7f78528308
OnlineHelpInfo.js: new link for client-repository
2021-03-25 12:26:57 +01:00
Dietmar Maurer
2843ba9017
avoid compiler warning
2021-03-25 12:25:23 +01:00
Dietmar Maurer
589c4dad9e
tape: add fsf/bsf to TapeDriver trait
2021-03-25 10:10:16 +01:00
Dietmar Maurer
870681013a
tape: fix catalog restore
...
We need to rewind the tape if fast_catalog_restore() fail ...
2021-03-24 10:09:23 +01:00
Dietmar Maurer
c046739461
tape: fix MediaPool regression tests
2021-03-24 09:44:30 +01:00
Dietmar Maurer
8b1289f3e4
tape: skip catalog archives in restore
2021-03-24 09:33:39 +01:00
Dietmar Maurer
074503f288
tape: implement fast catalog restore
2021-03-24 08:40:34 +01:00
Dietmar Maurer
c6f55139f8
tape: impl. MediaCatalog::parse_catalog_header
...
This is just an optimization, avoiding to read the catalog into memory.
We also expose create_temporary_database_file() now (will be
used for catalog restore).
2021-03-24 06:32:59 +01:00
Dietmar Maurer
20cc25d749
tape: add TapeDriver::move_to_last_file
2021-03-24 06:32:59 +01:00
Dietmar Maurer
30316192b3
tape: improve locking (lock media-sets)
...
- new helper: lock_media_set()
- MediaPool: lock media set
- Expose Inventory::new() to avoid double loading
- do not lock pool on restore (only lock media-set)
- change pool lock name to ".pool-{name}"
2021-03-24 06:32:59 +01:00
Dietmar Maurer
e93263be1e
taoe: implement MediaCatalog::destroy_unrelated_catalog() helper
2021-03-22 12:03:11 +01:00
Dietmar Maurer
2ab2ca9c24
tape: add MediaPool::lock_unassigned_media_pool() helper
2021-03-19 10:13:38 +01:00
Dietmar Maurer
eac1beef3c
tape: cleanup PoolWriter - factor out common code
2021-03-19 08:56:14 +01:00
Dietmar Maurer
166a48f903
tape: cleanup - split PoolWriter into several files
2021-03-19 08:19:13 +01:00
Dietmar Maurer
82775c4764
tape: make sure we only commit/write valid catalogs
2021-03-19 07:50:32 +01:00
Dietmar Maurer
88bc9635aa
tape: store media_uuid in PoolWriterState
...
This is mainly a cleanup, avoiding to access the catalog_set to get the uuid.
2021-03-19 07:33:59 +01:00
Dietmar Maurer
1037f2bc2d
tape: cleanup - rename CatalogBuilder to CatalogSet
2021-03-19 07:22:54 +01:00
Dietmar Maurer
32b75d36a8
tape: backup media catalogs
2021-03-19 06:58:46 +01:00
Dietmar Maurer
237314ad0d
tape: improve catalog consistency checks
...
Try to check if we read the correct catalog by verifying uuid, media_set_uuid
and seq_nr.
Note: this changes the catalog format again.
2021-03-18 08:43:55 +01:00
Dietmar Maurer
6ee3035523
tape: define magic number for catalog archives
2021-03-17 13:35:23 +01:00
Dietmar Maurer
b627ebbf40
tape: improve catalog parser
2021-03-17 11:29:23 +01:00
Dietmar Maurer
ef4bdf6b8b
tape: proxmox-tape media content - add 'store' attribute
2021-03-17 11:17:54 +01:00
Dietmar Maurer
54722acada
tape: store datastore name in tape archives and media catalog
...
So that we can store multiple datastores on a single media set.
Deduplication is now per datastore (not per media set).
2021-03-17 11:08:51 +01:00
Dietmar Maurer
0e2bf3aa1d
SnapshotReader: add self.datastore_name() helper
2021-03-17 10:16:34 +01:00
Dietmar Maurer
365126efa9
tape: PoolWriter - remove unnecessary move_to_eom
2021-03-17 10:16:34 +01:00
Dietmar Maurer
03d4c9217d
update OnlineHelpInfo.js
2021-03-17 10:16:34 +01:00
Dietmar Maurer
776dabfb2e
tape: use MB/s for backup speed (to match drive speed specification)
2021-03-16 08:51:49 +01:00
Dietmar Maurer
5c4755ad08
tape: speedup backup by doing read/write in parallel
2021-03-16 08:51:49 +01:00
Dietmar Maurer
e8913fea12
tape: write_chunk_archive - do not consume partially written chunk at EOT
...
So that it is re-written to the next tape.
2021-03-12 07:14:50 +01:00
Dietmar Maurer
2c10410b0d
tape: improve backup task log
2021-03-11 08:43:13 +01:00
Dietmar Maurer
5ef4c7bcd3
tape: fix scsi volume_statistics and cartridge_memory for quantum drives
2021-03-10 14:13:48 +01:00
Dietmar Maurer
6396bace3d
tape: improve backup task log (show percentage)
2021-03-10 10:59:13 +01:00
Dietmar Maurer
713a128adf
tape: improve backup task log format
2021-03-10 09:54:51 +01:00
Dietmar Maurer
affc224aca
tape: read_tape_mam - pass correct allocation len
2021-03-10 09:24:38 +01:00
Dietmar Maurer
6f82d32977
tape: cleanup - remove wrong inline comment
2021-03-10 08:11:51 +01:00
Dietmar Maurer
1057b1f5a5
tape: lock artificial "__UNASSIGNED__" pool to avoid races
2021-03-09 10:00:26 +01:00
Dietmar Maurer
af76234112
tape: improve MediaPool allocation by sorting tapes by ctime and label_text
2021-03-09 08:33:21 +01:00
Dietmar Maurer
9bcdade85f
ui: remove cartridge memory panel (show window after butten press instead)
2021-03-08 12:52:06 +01:00
Dietmar Maurer
b0156179b9
ui: fix date rendering in drive status
2021-03-08 11:30:12 +01:00
Dietmar Maurer
3f4a62de2f
docs: fix note about global media pool namespace
2021-03-08 10:56:28 +01:00
Dietmar Maurer
fd641b99c3
ui: add online help to drive/changer status
2021-03-08 09:47:44 +01:00
Dietmar Maurer
225affc9ca
tape: add docu link targets for online help
2021-03-08 09:37:40 +01:00
Dietmar Maurer
9ce2481a69
tape: clean - fix if cleaning tape is already loaded
2021-03-08 09:08:55 +01:00
Dietmar Maurer
d95c74c6e7
tape: test tape alert flags after drive clean
2021-03-08 09:08:55 +01:00
Dietmar Maurer
5ca5f8daf3
pmt: add tape-alert-flags command
2021-03-08 07:37:05 +01:00
Dietmar Maurer
98cdee781a
docs: use code-block inside tape-backup.rst
2021-03-06 12:20:26 +01:00
Dietmar Maurer
9cf4504909
docs: document tape backup jobs
2021-03-06 12:10:39 +01:00
Dietmar Maurer
5f846a3fc1
add proxmox-tape bash-completion
2021-03-06 10:22:08 +01:00
Dietmar Maurer
0b90c67fb4
tape: avoid Updatable for now
2021-03-05 12:51:25 +01:00
Dietmar Maurer
b4975d3102
tape: finish api permission checks
2021-03-05 11:49:07 +01:00
Dietmar Maurer
ee33795b72
acl: use /tape/device instead of /tape/drive and /tape/changer
2021-03-05 10:06:19 +01:00
Dietmar Maurer
90e16be3ae
tape: improve PoolWriter logging
...
Log reason why we allocate a new media set.
2021-03-05 09:59:38 +01:00
Dietmar Maurer
cf90a369e2
cleanup: rename token_user into auth_id_filter
2021-03-05 08:36:18 +01:00
Dietmar Maurer
6b303323be
ui: use shorter datetime format for encryption key creation time
2021-03-04 17:57:40 +01:00
Dietmar Maurer
1576c7a0d9
ui: do not show MediaSet Uuid in backup content grid
2021-03-04 17:09:57 +01:00
Dietmar Maurer
cd5d6103ea
tape: fix media_expire_time
2021-03-04 16:58:24 +01:00
Dietmar Maurer
1bed3aedc8
tape: fix wrong media set expire time
2021-03-04 12:38:28 +01:00
Dietmar Maurer
ab77d660cc
tape: improve media status in list_media
2021-03-04 10:17:10 +01:00
Dietmar Maurer
b74a1daae9
ui: add acl paths for tape permission
2021-03-04 08:33:26 +01:00
Dietmar Maurer
8a76e71129
tape: impl access permission for media content list
2021-03-03 13:16:15 +01:00
Dietmar Maurer
396fd747a6
tape: impl access permissions for tape jobs
2021-03-03 12:48:06 +01:00
Dietmar Maurer
16bd08b297
tape: add acl path /tape/job/{id}
2021-03-03 12:48:06 +01:00
Dietmar Maurer
ccdf327ac8
tape: impl access permissions for encryption key config
2021-03-03 12:21:55 +01:00
Dietmar Maurer
8cd63df0dc
tape: impl api permissions for drive/changer/pool configuration
2021-03-03 12:10:00 +01:00
Dietmar Maurer
b90cb34fd6
complete_acl_path: add more paths
2021-03-03 11:09:54 +01:00
Dietmar Maurer
d6c1e12c06
add roles to implement tape backup permissions
2021-03-03 11:09:02 +01:00
Dietmar Maurer
d33d1c880b
docs: mark tape backup as technology preview
2021-03-03 10:04:11 +01:00
Dietmar Maurer
cc2c5c7762
install proxmox-tape binary
2021-03-03 09:02:02 +01:00
Dietmar Maurer
40bf636b47
ui: enable experimental tape UI if tape.cfg exists
2021-03-03 09:02:02 +01:00
Dietmar Maurer
ac4a1fb35c
ui: render medium-wearout as percentage
2021-03-02 13:08:01 +01:00
Dietmar Maurer
2970cd3d6d
ui: use TaskProgress for clean drive
2021-03-02 12:16:30 +01:00
Dietmar Maurer
d41114c5a8
ui: fix changer panel reload after clean
2021-03-02 12:09:00 +01:00
Dietmar Maurer
6c92449702
ui: improve media pool config grid - add comment field
2021-03-02 11:43:25 +01:00
Dietmar Maurer
db04d10d14
tape: add comment to media pool config
2021-03-02 11:42:58 +01:00
Dietmar Maurer
5a4233f07b
ui: use fa-navicon for tape changer
2021-03-02 10:07:42 +01:00
Dietmar Maurer
3c715edd07
ui: correctly enable/disable changer drive buttons
2021-03-02 09:54:33 +01:00
Dietmar Maurer
bbe05d7fe9
ui: add 'Clean' button to changer drive (remove clean action)
2021-03-02 08:59:00 +01:00
Dietmar Maurer
2af8b8ef91
ui: add 'Catalog' button to changer drive
2021-03-02 08:53:18 +01:00
Dietmar Maurer
d4bfdfe749
ui: add 'Label Media' button to changer drive
2021-03-02 08:44:29 +01:00
Dietmar Maurer
1d14c31658
Revert "tape: also abort backup/restore on server shutdown"
...
This reverts commit 9bd81bb384 .
Turns out this is not really a good idea.
2021-03-02 08:00:10 +01:00
Dietmar Maurer
9bd81bb384
tape: also abort backup/restore on server shutdown
2021-03-02 07:19:31 +01:00
Dietmar Maurer
1552d9699c
tape: add 'Restore Key' button
2021-03-01 11:11:38 +01:00
Dietmar Maurer
7507b19cd2
OnlineHelpInfo.js: update
2021-03-01 11:11:07 +01:00
Dietmar Maurer
16f9ea6708
tape: restore - do not check if pool is configured
2021-03-01 09:43:23 +01:00
Dietmar Maurer
d984a9acf0
tape: add Inventory.media_list() helper
2021-03-01 09:30:45 +01:00
Dietmar Maurer
955f4aefcd
tape: show media inventory/content, even if there is no pool configuration
2021-03-01 09:21:11 +01:00
Dietmar Maurer
e57aa36d3e
docs: add file extensions to file formats
2021-02-28 11:25:22 +01:00
Dietmar Maurer
b488f850aa
docs: document fixed and dynamic index formats
2021-02-28 11:12:31 +01:00
Dietmar Maurer
ec07a280ba
docs: document data blob format
2021-02-28 10:32:56 +01:00
Dietmar Maurer
5006632550
docs: improve backup protocol docs
2021-02-28 09:07:13 +01:00
Dietmar Maurer
7eb9f48485
doc: improve backup protocol docs
2021-02-27 12:44:03 +01:00
Dietmar Maurer
31cba7098d
ui: rename 'Changer Slot' to 'Drive Number'
2021-02-27 09:51:13 +01:00
Dietmar Maurer
f4571b0b50
ui: use grouping feature for drive configuration grid
2021-02-27 09:37:47 +01:00
Dietmar Maurer
3832911d50
docs: remove backup protocol api dumps
...
We now have the api-viewer for that.
2021-02-26 19:00:08 +01:00
Dietmar Maurer
464c409aa3
ui: tape inventory - allow to set/clear media status
2021-02-26 11:06:11 +01:00
Dietmar Maurer
08ec39be0c
tape: add api to set media status
2021-02-26 10:44:07 +01:00