Dietmar Maurer
|
483da89d03
|
tape: improve export media to directly export from drive, add CLI
|
2021-01-10 13:44:44 +01:00 |
Dietmar Maurer
|
c92e3832bf
|
tape: cleanup: s/transfer/transfer_media/, avoid compiler warnings
|
2021-01-10 12:18:30 +01:00 |
Dietmar Maurer
|
edb90f6afa
|
tape: backup - implement export-media-set option
|
2021-01-10 11:59:55 +01:00 |
Dietmar Maurer
|
0057f0e580
|
tape: MediaChange - add transfer, implement export
|
2021-01-10 11:51:09 +01:00 |
Dietmar Maurer
|
e6217b8b36
|
tape: renamed src/tape/changer/linux_tape.rs -> src/tape/changer/mtx.rs
|
2021-01-10 10:07:40 +01:00 |
Dietmar Maurer
|
6fe16039b9
|
tape: simplify media changer implementation - new struct MtxMediaChanger
|
2021-01-10 10:02:01 +01:00 |
Dietmar Maurer
|
42967bf185
|
tape: backup - implement --eject-media option
|
2021-01-09 15:17:03 +01:00 |
Dietmar Maurer
|
5843268c47
|
tape: abort backup when we detect critical tape alert flags
|
2021-01-09 12:34:00 +01:00 |
Dietmar Maurer
|
7273ba3de2
|
tape: change default media set naming template to "%c"
|
2021-01-09 10:51:51 +01:00 |
Dietmar Maurer
|
0bf1c314da
|
tape: show catalog status in media list
|
2021-01-09 10:24:48 +01:00 |
Dietmar Maurer
|
c7926d8e8c
|
tape: split MediaSet into extra file
|
2021-01-09 08:54:58 +01:00 |
Dietmar Maurer
|
df69a4fc59
|
tape: implement drive clean
|
2021-01-08 11:32:56 +01:00 |
Dietmar Maurer
|
25d3965769
|
tape: correctly skip cleaning tapes (not regular tapes)
|
2021-01-08 09:16:42 +01:00 |
Dietmar Maurer
|
46a1863f88
|
tape: improve MediaChange trait
We expose the whole MtxStatus, and we can load/store from/to
specified slot numbers.
|
2021-01-07 14:26:43 +01:00 |
Dietmar Maurer
|
d5035c5600
|
tape: mtx_status - consider new export-slots property
|
2021-01-06 11:53:33 +01:00 |
Dietmar Maurer
|
c4b2b9ab41
|
tape: only query volume stats if we can read MAM
|
2021-01-06 09:20:36 +01:00 |
Dietmar Maurer
|
ef942e04c2
|
tape: add function to classify tape-alert-flags
|
2021-01-05 17:23:30 +01:00 |
Dietmar Maurer
|
b40ab10d38
|
tape: add volume_mounts and medium_passes to LinuxDriveAndMediaStatus
|
2021-01-05 13:43:17 +01:00 |
Dietmar Maurer
|
f8ccbfdedd
|
tape: implement read_volume_statistics
|
2021-01-05 12:58:18 +01:00 |
Dietmar Maurer
|
470f1c798a
|
tape: status - show thape alert flags
|
2021-01-04 13:15:30 +01:00 |
Dietmar Maurer
|
5c012b392a
|
tape: use LP 12h TapeAlert Response to query tape alert flags
|
2021-01-04 13:14:02 +01:00 |
Dietmar Maurer
|
66e42bec05
|
tape: further PoolWriter cleanups
|
2021-01-03 12:08:40 +01:00 |
Dietmar Maurer
|
c503ea7045
|
tape: cleanup - rename 'info' to 'media_id'
Second try.
|
2021-01-03 11:38:00 +01:00 |
Dietmar Maurer
|
745ec187ce
|
Revert "tape: cleanup - rename 'info' to 'media_id'"
This reverts commit f046313c0e .
media_id is already use as parameter, so this commit is totally buggy.
|
2021-01-03 11:14:58 +01:00 |
Dietmar Maurer
|
f046313c0e
|
tape: cleanup - rename 'info' to 'media_id'
|
2021-01-03 10:37:42 +01:00 |
Dietmar Maurer
|
74595b8821
|
tape: sg-tape-cmd tape-alert-flags
|
2021-01-03 10:09:43 +01:00 |
Dietmar Maurer
|
c9fdd142a4
|
tape: commit missing file
|
2021-01-02 13:39:34 +01:00 |
Dietmar Maurer
|
abaa6d0ac9
|
tape: decode TapeAlertFlags in cartridge-memory command
|
2021-01-02 10:55:30 +01:00 |
Dietmar Maurer
|
cfae8f0656
|
tape: merge MediaStateDatabase into Inventory
|
2021-01-01 16:15:13 +01:00 |
Dietmar Maurer
|
54f4ecd46a
|
tape: implement MediaPool flag to consider offline media
For standalone tape drives.
|
2021-01-01 10:03:59 +01:00 |
Dietmar Maurer
|
b4772d1c43
|
tape: new inventory helper - lookup_media_set_pool
|
2020-12-31 10:03:17 +01:00 |
Dietmar Maurer
|
81764111fe
|
tape: media_change - log all errors
|
2020-12-30 19:17:18 +01:00 |
Dietmar Maurer
|
75656a78c6
|
tape: improve inline docu
|
2020-12-30 17:28:33 +01:00 |
Dietmar Maurer
|
284eb5daff
|
tape: cleanup/simplify media_change code
|
2020-12-30 17:16:57 +01:00 |
Dietmar Maurer
|
ff58c51919
|
tape: improve media request/load
|
2020-12-30 13:09:28 +01:00 |
Dietmar Maurer
|
9e8c0d2e33
|
tape: cleanup - remove debug messages
|
2020-12-30 08:41:30 +01:00 |
Dietmar Maurer
|
c431659d05
|
cleanup: remove debug output
|
2020-12-29 11:59:57 +01:00 |
Dietmar Maurer
|
afb0220642
|
tape: cleanup LinuxDriveStatus - make density optional
|
2020-12-29 09:10:30 +01:00 |
Dietmar Maurer
|
0993923ed5
|
tape: factor out get_drive_and_media_status
|
2020-12-29 08:39:06 +01:00 |
Dietmar Maurer
|
e0362b0d0f
|
tape: correctly parse mtx import/export slots
|
2020-12-28 13:32:56 +01:00 |
Dietmar Maurer
|
b27c32821c
|
tape: install new sg-tape-cmd setuid binary
|
2020-12-28 11:10:25 +01:00 |
Dietmar Maurer
|
76b15a035f
|
tape: MediaCatalog: write magic number before content
|
2020-12-26 11:05:25 +01:00 |
Dietmar Maurer
|
fc6ce9835b
|
tape: fix non-rewinding tape device check
|
2020-12-25 15:38:29 +01:00 |
Dietmar Maurer
|
8ae9f4efc2
|
tape: minor cleanups
|
2020-12-25 13:45:26 +01:00 |
Dietmar Maurer
|
c9d13b0fc4
|
tape: expose check_tape_is_linux_tape_device
|
2020-12-24 15:51:49 +01:00 |
Dietmar Maurer
|
bfacc1d8c3
|
tape: cleanup - factor out open_linux_tape_device
|
2020-12-24 11:24:45 +01:00 |
Dietmar Maurer
|
5ae86dfaa1
|
tape: return media usage info with status command
|
2020-12-23 11:24:34 +01:00 |
Dietmar Maurer
|
dbe7e556b0
|
tape: implement binding for libsgutils2
So that we can read cartridge memory without calling "sg_raw". In future,
we may need further low level command to control the tape..
|
2020-12-23 09:44:53 +01:00 |
Dietmar Maurer
|
cb80d900b3
|
tape: add drive status api
|
2020-12-22 10:42:22 +01:00 |
Dietmar Maurer
|
1e20f819d5
|
tape: add command to read cartridge memory (MAM)
Thsi add an additional dependency to sg3-utils (small).
|
2020-12-21 12:12:33 +01:00 |
Dietmar Maurer
|
9aa58f0143
|
cleanup: rename mtfsf into forward_space_count_files
|
2020-12-18 16:57:49 +01:00 |
Dietmar Maurer
|
d37da6b7fc
|
tape: add PoolWriter
|
2020-12-18 15:27:44 +01:00 |
Dietmar Maurer
|
b9ee86efe1
|
tape: use SnapshotReader to create snapshot archive
|
2020-12-18 12:11:29 +01:00 |
Dietmar Maurer
|
d108b610fd
|
tape: fix write_media_set_label - move to correct position
|
2020-12-18 12:11:29 +01:00 |
Dietmar Maurer
|
2afdc7f27d
|
tape: MediaPool::with_config() - remove name parameter
Not required, because config already contains the pool name.
|
2020-12-18 08:14:24 +01:00 |
Dietmar Maurer
|
26aa9aca40
|
tape: return current_file_number as u64
|
2020-12-18 07:44:50 +01:00 |
Dietmar Maurer
|
b532dd00c4
|
tape: add helper to read snapshot contents
- lock the snapshot for reading
- use openat to open files
- provides an iterator over all chunks
|
2020-12-17 13:07:52 +01:00 |
Dietmar Maurer
|
9c953dd260
|
tape: add code to write backup snapshot files (without chunks) to tape
|
2020-12-17 08:28:47 +01:00 |
Dietmar Maurer
|
3fbf2d2fcd
|
tape: cleanup MediaCatalog
|
2020-12-17 08:05:53 +01:00 |
Dietmar Maurer
|
fe6c19383b
|
tape: remove MediaLabelInfo, use MediaId instead
The additional content_uuid was quite useless...
|
2020-12-16 13:31:32 +01:00 |
Dietmar Maurer
|
9839d3f778
|
tape: improve docu
|
2020-12-16 12:43:51 +01:00 |
Dietmar Maurer
|
dd59e3c2a1
|
tape: improve docu
|
2020-12-16 12:23:52 +01:00 |
Dietmar Maurer
|
0b7432ae09
|
tape: add chunk archive reader/writer
|
2020-12-16 12:08:34 +01:00 |
Dietmar Maurer
|
c1c2c8f635
|
tape: cleanup MediaLocation type for direct use with API
|
2020-12-16 10:49:01 +01:00 |
Dietmar Maurer
|
42298d5896
|
tape: add magic number to identify media catalog files
|
2020-12-16 09:00:14 +01:00 |
Dietmar Maurer
|
205e187613
|
tape: add MediaCatalog implementation
|
2020-12-15 13:40:49 +01:00 |
Dietmar Maurer
|
a78348acbb
|
tape: rename DriveLabel to MediaLabel
|
2020-12-14 17:37:16 +01:00 |
Dietmar Maurer
|
410611b4f2
|
tape: improve file format docu
|
2020-12-14 17:29:57 +01:00 |
Dietmar Maurer
|
ac461bd651
|
tape: implement scan command (useful for debug)
|
2020-12-14 12:55:49 +01:00 |
Dietmar Maurer
|
fb657d8ee5
|
tape: implement destroy_media
|
2020-12-14 08:58:40 +01:00 |
Dietmar Maurer
|
83abc7497d
|
tape: implement inventory command
|
2020-12-11 07:39:28 +01:00 |
Dietmar Maurer
|
7bb720cb4d
|
tape: implement label command
|
2020-12-10 12:30:27 +01:00 |
Dietmar Maurer
|
c4d8542ec1
|
tape: add media pool handling
|
2020-12-10 11:41:35 +01:00 |
Dietmar Maurer
|
f70d8091d3
|
tape: implement option changer-drive-id
|
2020-12-10 09:09:06 +01:00 |
Dietmar Maurer
|
cafd51bf42
|
tape: add media state database
|
2020-12-09 11:21:56 +01:00 |
Dietmar Maurer
|
5d90860688
|
tape: expose basic tape/changer functionality at api2/tape/
|
2020-12-08 15:42:50 +01:00 |
Dietmar Maurer
|
fa9c9be737
|
tape: add tape device driver
|
2020-12-07 08:29:22 +01:00 |
Dietmar Maurer
|
2e7014e31d
|
tape: add BlockeReader/BlockedWriter streams
This is the basic format used to write data to tapes.
|
2020-12-06 12:09:55 +01:00 |
Dietmar Maurer
|
a84050c1f0
|
tape: add BlockHeader impl
|
2020-12-06 10:26:24 +01:00 |
Dietmar Maurer
|
7c9835465e
|
tape: add helpers to emulate tape read/write behavior
|
2020-12-06 09:41:16 +01:00 |
Dietmar Maurer
|
b107fdb99a
|
tape: add tape changer support using 'mtx' command
|
2020-12-05 14:54:12 +01:00 |
Dietmar Maurer
|
7320e9ff4b
|
tape: add media invenotry
|
2020-12-05 12:54:15 +01:00 |
Dietmar Maurer
|
c4d2d54a6d
|
tape: define useful constants
|
2020-12-05 12:20:46 +01:00 |
Dietmar Maurer
|
d735b31345
|
tape: add tape read trait
|
2020-12-05 10:54:38 +01:00 |
Dietmar Maurer
|
e211fee562
|
tape: add tape write trait
|
2020-12-05 10:51:34 +01:00 |
Dietmar Maurer
|
8c15560b68
|
tape: add file format definitions
|
2020-12-05 10:45:08 +01:00 |