c560cfddca
tape: read_drive_status - ignore media changed sense info
2021-04-09 09:46:19 +02:00
8204d9b095
tape: avoid unneccessary SCSI request in Drop
2021-04-08 11:26:08 +02:00
fad95a334a
tape: clear encryption key after backup (for security reasons)
2021-04-08 10:37:49 +02:00
973e985d73
cleanup: remove unused linux tape driver code
2021-04-08 10:15:52 +02:00
15d1435789
tape: add vendor, product and revision to LtoDriveAndMediaStatus
2021-04-08 08:34:46 +02:00
80ea23e1b9
tape: pmt - implement options command
2021-04-08 08:34:45 +02:00
5d6379f8db
tape: implement locate_file without LOCATE(10)
2021-04-08 08:34:45 +02:00
566b946f9b
tape: pmt - re-implement lock/unlock command
2021-04-08 07:28:30 +02:00
7f7459677d
tape: pmt - re-implement fsr/bsr
2021-04-08 07:28:30 +02:00
0892a512bc
tape: correctly set/display drive option
2021-04-08 07:28:30 +02:00
7b11a8098d
tape: make sure there is a filemark at the end of the tape
2021-04-08 07:28:30 +02:00
8b2c6f5dbc
tape: make fsf/bsf driver specific
...
Because the virtual tape driver behaves different than LTO drives.
2021-04-08 07:28:30 +02:00
d26985a600
tape: fix LEOM handling
2021-04-08 07:28:30 +02:00
e29f456efc
tape: implement format/erase
2021-04-08 07:28:30 +02:00
a79082a0dd
tape: implement LTO userspace driver
2021-04-08 07:28:30 +02:00
1336ae8249
tape: introduce trait BlockWrite
2021-04-08 07:28:30 +02:00
0db5712493
tape: introduce trait BlockRead
2021-04-08 07:28:30 +02:00
cf1e117fc7
sgutils2: use enum for ScsiError
...
This avoids string allocation when we return SenseInfo.
2021-03-27 15:57:48 +01:00
11f5d59396
tape: page-align BlockHeader so that we can use it with SG_IO
2021-03-27 15:36:35 +01:00
2843ba9017
avoid compiler warning
2021-03-25 12:25:23 +01:00
589c4dad9e
tape: add fsf/bsf to TapeDriver trait
2021-03-25 10:10:16 +01:00
c046739461
tape: fix MediaPool regression tests
2021-03-24 09:44:30 +01:00
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
20cc25d749
tape: add TapeDriver::move_to_last_file
2021-03-24 06:32:59 +01:00
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
e93263be1e
taoe: implement MediaCatalog::destroy_unrelated_catalog() helper
2021-03-22 12:03:11 +01:00
2ab2ca9c24
tape: add MediaPool::lock_unassigned_media_pool() helper
2021-03-19 10:13:38 +01:00
eac1beef3c
tape: cleanup PoolWriter - factor out common code
2021-03-19 08:56:14 +01:00
166a48f903
tape: cleanup - split PoolWriter into several files
2021-03-19 08:19:13 +01:00
82775c4764
tape: make sure we only commit/write valid catalogs
2021-03-19 07:50:32 +01:00
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
1037f2bc2d
tape: cleanup - rename CatalogBuilder to CatalogSet
2021-03-19 07:22:54 +01:00
32b75d36a8
tape: backup media catalogs
2021-03-19 06:58:46 +01:00
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
6ee3035523
tape: define magic number for catalog archives
2021-03-17 13:35:23 +01:00
b627ebbf40
tape: improve catalog parser
2021-03-17 11:29:23 +01:00
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
0e2bf3aa1d
SnapshotReader: add self.datastore_name() helper
2021-03-17 10:16:34 +01:00
365126efa9
tape: PoolWriter - remove unnecessary move_to_eom
2021-03-17 10:16:34 +01:00
776dabfb2e
tape: use MB/s for backup speed (to match drive speed specification)
2021-03-16 08:51:49 +01:00
5c4755ad08
tape: speedup backup by doing read/write in parallel
2021-03-16 08:51:49 +01:00
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
2892624783
tape/send_load_media_email: move to server/email_notifications
...
and reuse 'send_job_status_mail' there so that we get consistent
formatted mails from pbs (e.g. html part and author)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-03-11 09:56:12 +01:00
2c10410b0d
tape: improve backup task log
2021-03-11 08:43:13 +01:00
d1d74c4367
typo fixes all over the place
...
found and semi-manually replaced by using:
codespell -L mut -L crate -i 3 -w
Mostly in comments, but also email notification and two occurrences
of misspelled 'reserved' struct member, which where not used and
cargo build did not complain about the change, soo ...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-03-10 16:39:57 +01:00
5ef4c7bcd3
tape: fix scsi volume_statistics and cartridge_memory for quantum drives
2021-03-10 14:13:48 +01:00
713a128adf
tape: improve backup task log format
2021-03-10 09:54:51 +01:00
affc224aca
tape: read_tape_mam - pass correct allocation len
2021-03-10 09:24:38 +01:00
6f82d32977
tape: cleanup - remove wrong inline comment
2021-03-10 08:11:51 +01:00
1057b1f5a5
tape: lock artificial "__UNASSIGNED__" pool to avoid races
2021-03-09 10:00:26 +01:00