- 论坛徽章:
- 0
|
See man st for details.
You need to set "ST_VARIABLE (x0001)" option on for variable block size setting in your "data-property-name" in your st.conf.
Using the example 1 in "st" manual page as an example:
tape-config-list = "Magic DAT", "Magic 4mm Helical Scan", "magic-data";
magic-data = 1,0x34,1024,0x1639,4,0,0x8c,0x8c,0x8c,3;
The formal syntax for data-property-name called as "magic-data" here is:
<data-property-name> = <version>, <type>, <bsize>, <options>, <number of densities>, <density> [, <density>*], <default-density>;
Here, 0x1639 in magic-data is the options set.
According the flag define in man st, <options> is a bit pattern representing the devices, as defined in /usr/include/sys/scsi/targets/stdef.h. Valid flags for tape configuration are:
ST_VARIABLE 0x0001
ST_QIC 0x0002
ST_REEL 0x0004
ST_BSF 0x0008
ST_BSR 0x0010
ST_LONG_ERASE 0x0020
ST_AUTODEN_OVERRIDE 0x0040
ST_NOBUF 0x0080
ST_KNOWS_EOD 0x0200
ST_UNLOADABLE 0x0400
ST_SOFT_ERROR_REPORTING 0x0800
ST_LONG_TIMEOUTS 0x1000
ST_BUFFERED_WRITES 0x4000
ST_NO_RECSIZE_LIMIT 0x8000
ST_MODE_SEL_COMP 0x10000
ST_NO_RESERVE_RELEASE 0x20000
ST_READ_IGNORE_ILI 0x40000
ST_READ_IGNORE_EOFS 0x80000
ST_SHORT_FILEMARKS 0x100000
ST_EJECT_TAPE_ON_CHANGER_FAILURE 0x200000
ST_RETRY_ON_RECOVERED_DEFERRED_ERROR 0x400000
So, we know the following flags are set in "options" (0x1639) for magic-data:
ST_VARIABLE 0x0001
ST_BSF 0x0008
ST_BSR 0x0010
ST_LONG_ERASE 0x0020
ST_KNOWS_EOD 0x0200
ST_UNLOADABLE 0x0400
ST_LONG_TIMEOUTS 0x1000
-----------------------------------------------
+ 0x1639
In this example, ST_VARIABLE flag is turned on. |
|