Integration with RedHat 9
Hi
this is a great tape emulator which works perfectly when using RedHat 6, the emulation side works perfectly fine with RedHat 7 although the GUI is problematic and doesn't work properly, but i have recently tried to install on RedHat 9 and can't get it to work correctly. The way i got around the GUI issues with RedHat 7 was to deploy mhvtl on RedHat 6 and copy across the configuration which worked without issue i tried the same with RedHat 9 and i can't get the Tape drives to be recognised within teh backup software (NetWorker) is this supposed to work or have you any tips on how i can get it to work:
[root@RHEL9SN by-id]# lsscsi -g [0:0:0:0] disk VMware Virtual disk 2.0 /dev/sda /dev/sg0 [0:0:1:0] disk VMware Virtual disk 2.0 /dev/sdb /dev/sg1 [1:0:0:0] cd/dvd NECVMWar VMware IDE CDR00 1.00 /dev/sr0 /dev/sg2 [3:1:0:0] mediumx STK SL3000 0016 /dev/sch0 /dev/sg13 [3:1:0:1] tape STK T10000A 1.27 /dev/st5 /dev/sg8 [3:1:0:2] tape STK T10000A 1.27 /dev/st3 /dev/sg6 [3:1:0:3] tape STK T10000A 1.27 /dev/st4 /dev/sg7 [3:1:0:4] tape STK T10000A 1.27 /dev/st6 /dev/sg9 [3:1:0:5] tape STK T10000A 1.27 /dev/st0 /dev/sg3 [3:2:0:0] mediumx STK SL3000 0016 /dev/sch1 /dev/sg14 [3:2:0:1] tape STK Ultrium 6-SCSI 1.27 /dev/st1 /dev/sg4 [3:2:0:2] tape STK Ultrium 6-SCSI 1.27 /dev/st8 /dev/sg11 [3:2:0:3] tape STK Ultrium 6-SCSI 1.27 /dev/st7 /dev/sg10 [3:2:0:4] tape STK Ultrium 6-SCSI 1.27 /dev/st9 /dev/sg12 [3:2:0:5] tape STK Ultrium 6-SCSI 1.27 /dev/st2 /dev/sg5
[root@RHEL9SN by-id]# ls -l /run/systemd/generator/mhvtl.target.wants total 0 lrwxrwxrwx 1 root root 39 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected] lrwxrwxrwx 1 root root 39 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected] lrwxrwxrwx 1 root root 36 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected] lrwxrwxrwx 1 root root 36 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected] lrwxrwxrwx 1 root root 36 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected] lrwxrwxrwx 1 root root 36 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected] lrwxrwxrwx 1 root root 36 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected] lrwxrwxrwx 1 root root 36 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected] lrwxrwxrwx 1 root root 36 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected] lrwxrwxrwx 1 root root 36 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected] lrwxrwxrwx 1 root root 36 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected] lrwxrwxrwx 1 root root 36 Jan 27 16:28 [email protected] -> /lib/systemd/system/[email protected]
it all seems okay but when i run the inquire command i can only see the library itself:
[root@RHEL9SN by-id]# inquire -slcp
-l flag found: searching all LUNs, which may take over 10 minutes per adapter for some fibre channel adapters. Please be patient.
(using name lookup) [email protected]:STK SL3000 0016|Autochanger (Jukebox), /dev/tape/by-id/scsi-SSTK_SL3000_90000050 [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error [email protected]:STK SL3000 0016|Autochanger (Jukebox), /dev/tape/by-id/scsi-SSTK_SL3000_90000070-changer [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error
i have only 10 GB of space in root but i have added 150GB extra disk which i have created a symbolic from for /opt/mhvtl could this be the cause?
any help would be greatly appreciated
Regards
Lee
hmm, last time I tried to spin up a NetWorker setup, I couldn't get the 'master' (nsrd) to start... Just to rule out the low hanging stuff - have you tried with SELinux disabled ? Any chance of /var/log/messages from when you attempt the 'inquire' ? Perhaps on one of the virtual tapes - try the following sequence before running inquire - to place daemon in verbose mode, then change it back.
vtlcmd -q 11 verbose
twice (verbose toggles 1-0-3-2-1....)
[markh@localhost ~]$ sudo grep Verbose /var/log/messages
Jan 28 18:46:44 localhost /usr/bin/vtltape[1123102]: processMessageQ(): Verbose: disabled at level 0
Jan 28 18:46:58 localhost /usr/bin/vtltape[1123102]: processMessageQ(): Verbose: enabled at level 3
run the inquire and provide the /var/log/messages at verbose 3.. Also 'sg_turs -v /dev/sgX' ? /dev/sg4 perhaps..
Hi Mark
Thanks for your response SElinux is disabled or it seems to be at least:
[root@RHEL9SN mhvtl]# sestatus SELinux status: disabled
i tried to do what you asked and i can't get it to work not sure what it is referring too when it is asking for a daemon number i tried with the serial number and the process ID both came back with this response:
[root@RHEL9SN mhvtl]# vtlcmd 500 -q 11 verbose Please check command, parameter 'check param' wrong.
Usage : vtlcmd <DeviceNo>
i edited /etc/mhvtl/mhvtl.conf to enable debug not sure if that is the same as what you asked or not: [root@RHEL9SN mhvtl]# cat mhvtl.conf MHVTL_CONFIG_PATH=/etc/mhvtl CAPACITY=1500 VERBOSE=3 VTL_DEBUG=1
i then ran the commands in the install files along with inquire:
[root@RHEL9SN mhvtl]# ps -ax | fgrep vtl 851 ? Ss 0:00 /usr/bin/vtllibrary -F -q50 -v1 852 ? Ss 0:00 /usr/bin/vtllibrary -F -q70 -v1 853 ? Ss 0:00 /usr/bin/vtltape -F -q51 -v1 856 ? Ss 0:00 /usr/bin/vtltape -F -q52 -v1 857 ? Ss 0:00 /usr/bin/vtltape -F -q53 -v1 861 ? Ss 0:00 /usr/bin/vtltape -F -q54 -v1 864 ? Ss 0:00 /usr/bin/vtltape -F -q55 -v1 865 ? Ss 0:00 /usr/bin/vtltape -F -q71 -v1 867 ? Ss 0:00 /usr/bin/vtltape -F -q72 -v1 869 ? Ss 0:00 /usr/bin/vtltape -F -q73 -v1 874 ? Ss 0:00 /usr/bin/vtltape -F -q74 -v1 875 ? Ss 0:00 /usr/bin/vtltape -F -q75 -v1 6020 pts/0 S+ 0:00 grep -F --color=auto vtl [root@RHEL9SN mhvtl]# lsscsi -g [0:0:0:0] disk VMware Virtual disk 2.0 /dev/sda /dev/sg0 [0:0:1:0] disk VMware Virtual disk 2.0 /dev/sdb /dev/sg1 [1:0:0:0] cd/dvd NECVMWar VMware IDE CDR00 1.00 /dev/sr0 /dev/sg2 [3:1:0:0] mediumx STK SL3000 0016 /dev/sch0 /dev/sg10 [3:1:0:1] tape STK T10000A 1.27 /dev/st1 /dev/sg4 [3:1:0:2] tape STK T10000A 1.27 /dev/st2 /dev/sg5 [3:1:0:3] tape STK T10000A 1.27 /dev/st0 /dev/sg3 [3:1:0:4] tape STK T10000A 1.27 /dev/st4 /dev/sg7 [3:1:0:5] tape STK T10000A 1.27 /dev/st5 /dev/sg8 [3:2:0:0] mediumx STK SL3000 0016 /dev/sch1 /dev/sg13 [3:2:0:1] tape STK Ultrium 6-SCSI 1.27 /dev/st3 /dev/sg6 [3:2:0:2] tape STK Ultrium 6-SCSI 1.27 /dev/st8 /dev/sg12 [3:2:0:3] tape STK Ultrium 6-SCSI 1.27 /dev/st6 /dev/sg9 [3:2:0:4] tape STK Ultrium 6-SCSI 1.27 /dev/st9 /dev/sg14 [3:2:0:5] tape STK Ultrium 6-SCSI 1.27 /dev/st7 /dev/sg11 [root@RHEL9SN mhvtl]# mtx -f /dev/sg10 status Storage Changer /dev/sg10:5 Drives, 65 Slots ( 5 Import/Export ) Data Transfer Element 0:Empty Data Transfer Element 1:Empty Data Transfer Element 2:Empty Data Transfer Element 3:Empty Data Transfer Element 4:Empty Storage Element 1:Full :VolumeTag=S00001TA Storage Element 2:Full :VolumeTag=S00002TA Storage Element 3:Full :VolumeTag=S00003TA
[root@RHEL9SN mhvtl]# mtx -f /dev/sg13 status Storage Changer /dev/sg13:5 Drives, 65 Slots ( 5 Import/Export ) Data Transfer Element 0:Empty Data Transfer Element 1:Empty Data Transfer Element 2:Empty Data Transfer Element 3:Empty Data Transfer Element 4:Empty Storage Element 1:Full :VolumeTag=T00001L6 Storage Element 2:Full :VolumeTag=T00002L6 Storage Element 3:Full :VolumeTag=T00003L6
[root@RHEL9SN mhvtl]# inquire (using name lookup) [email protected]:VMware Virtual disk 2.0 |Disk, /dev/sg0 [email protected]:VMware Virtual disk 2.0 |Disk, /dev/sg1 [email protected]:NECVMWarVMware IDE CDR001.00|CD-ROM, /dev/sg2 [email protected]:STK SL3000 0016|Autochanger (Jukebox), /dev/sg10 S/N: 90000050 [email protected]:STK SL3000 0016|Autochanger (Jukebox), /dev/sg13 S/N: 90000070 2 Disk, 1 CD-ROM, 2 Autochanger (Jukebox), Total: 5 [root@RHEL9SN mhvtl]# inquire -slcp
-l flag found: searching all LUNs, which may take over 10 minutes per adapter for some fibre channel adapters. Please be patient.
(using name lookup) [email protected]:STK SL3000 0016|Autochanger (Jukebox), /dev/tape/by-id/scsi-SSTK_SL3000_90000050 [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error [email protected]:STK SL3000 0016|Autochanger (Jukebox), /dev/tape/by-id/scsi-SSTK_SL3000_90000070 [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error [email protected]: Input/output error 2 Autochanger (Jukebox), Total: 2
please find /var/logs/messages attached
just an addition maybe the issue here is my copying across the config files could you help me with the commands to create a library etc to see if i get the same? unfortunately i have tried and the GUI is unusable for this or is there a way of making the GUI work on RedHat9? (i know it hasn't been developed for a number of years so maybe not)
Regards
Lee
oh just to add if you ever try to set up a NW set up again and have any issues just let me know and i will help as best i can, but generally if nsrd doesn't start it is down to the internal DBs (mm, nsrdb etc)
The verbosity is still at 1.. But never mind. Just snip out one daemon (virtual tape)..
Jan 28 11:00:41 RHEL9SN /usr/bin/vtltape[867]: CDB (476) (delay 26405): 00 00 00 00 00 00
Jan 28 11:00:41 RHEL9SN /usr/bin/vtltape[867]: return_sense(): [Key/ASC/ASCQ] [02 3a 00]
Jan 28 11:00:41 RHEL9SN /usr/bin/vtltape[867]: ssc_tur(): Test Unit Ready (476) ** : No, No tape loaded
Jan 28 11:00:41 RHEL9SN /usr/bin/vtltape[867]: CDB (477) (delay 5): 12 00 00 00 ff 00
Jan 28 11:00:41 RHEL9SN /usr/bin/vtltape[867]: spc_inquiry(): INQUIRY ** (477)
Jan 28 11:00:41 RHEL9SN /usr/bin/vtltape[867]: CDB (478) (delay 5): 12 01 00 00 ff 00
Jan 28 11:00:41 RHEL9SN /usr/bin/vtltape[867]: spc_inquiry(): INQUIRY ** (478)
Jan 28 11:00:41 RHEL9SN /usr/bin/vtltape[867]: CDB (479) (delay 5): 12 01 80 00 ff 00
Jan 28 11:00:41 RHEL9SN /usr/bin/vtltape[867]: spc_inquiry(): INQUIRY ** (479)
Jan 28 11:00:41 RHEL9SN /usr/bin/vtltape[867]: CDB (480) (delay 5): 12 01 83 00 ff 00
Jan 28 11:00:41 RHEL9SN /usr/bin/vtltape[867]: spc_inquiry(): INQUIRY ** (480)
Everything returned success except the 'Test Unit Ready' which returned 'No tape loaded' - which is expected.
Q. What does the inquire -slcp option expect ?
Does 'inquire' without any options return data as expected ?
Hi Mark
Thanks for looking yeh i can't see any errors for inquire in the logs either just to explain inquire lists all available SCSI devices on the host just to explain the different flags:
–s Suppresses the collection of serial number information by inquire –l Performs a complete LUN search for all SCSI adapters in the system –c Sends the SCSI inquiry command directly to the device –p Tells inquire to display persistent device names
i reinstalled mhvtl so i went back to the default installation and i get the same for the default created Libraries as well inquire alone shows like this:
[root@RHEL9SN ~]# inquire (using name lookup) [email protected]:VMware Virtual disk 2.0 |Disk, /dev/sg0 [email protected]:VMware Virtual disk 2.0 |Disk, /dev/sg1 [email protected]:NECVMWarVMware IDE CDR001.00|CD-ROM, /dev/sg2 [email protected]:STK L700 0107|Autochanger (Jukebox), /dev/sg20 S/N: XYZZY_A [email protected]:STK L80 0107|Autochanger (Jukebox), /dev/sg23 S/N: XYZZY_B [email protected]:STK SL3000 0016|Autochanger (Jukebox), /dev/sg10 S/N: 90000050 [email protected]:STK SL3000 0016|Autochanger (Jukebox), /dev/sg13 S/N: 90000070
it is odd that the 2 SL3000 Libraries remained in place in the past when i have reinstalled mhvtl on earlier versions of RedHat it has removed whatever i had in place and wrote the default libraries in there place, just so you are aware this is what inquire should look like when everything is working as expected:
inquire
(using name lookup) [email protected]:VMware Virtual disk 1.0 |Disk, /dev/sg0 [email protected]:VMware Virtual disk 1.0 |Disk, /dev/sg1 77662:inquire: CDI warning: Using old-style passthrough via st driver 77662:inquire: CDI warning: Using old-style passthrough via st driver [email protected]:NECVMWarVMware IDE CDR101.00|CD-ROM, /dev/sg2 [email protected]:STK SL3000 0016|Autochanger (Jukebox), /dev/sg13 S/N: 90000050 [email protected]:STK T10000A 1.27|Tape, /dev/nst0 S/N: 90000051 ATNN=STK T10000A 90000051 WWNN=50112233AB010001 Can Encrypt & Decrypt [email protected]:STK T10000A 1.27|Tape, /dev/nst1 S/N: 90000052 ATNN=STK T10000A 90000052 WWNN=50112233AB010002 Can Encrypt & Decrypt [email protected]:STK T10000A 1.27|Tape, /dev/nst2 S/N: 90000053 ATNN=STK T10000A 90000053 WWNN=50112233AB010003 Can Encrypt & Decrypt [email protected]:STK T10000A 1.27|Tape, /dev/nst3 S/N: 90000054 ATNN=STK T10000A 90000054 WWNN=50112233AB010004 Can Encrypt & Decrypt [email protected]:STK T10000A 1.27|Tape, /dev/nst4 S/N: 90000055 ATNN=STK T10000A 90000055 WWNN=50112233AB010005 Can Encrypt & Decrypt
i was looking through the messages log file again today and can see a verification failed message when it is loading the mhvtl modules:
Jan 27 15:44:12 RHEL9SN systemd[1]: Starting Trellix Agent... Jan 27 15:44:12 RHEL9SN systemd[1]: Software RAID monitoring and management was skipped because of an unmet condition check (ConditionPathExists=/etc/mdadm.conf). Jan 27 15:44:12 RHEL9SN systemd[1]: Starting Trellix Endpoint Security Platform for Linux... Jan 27 15:44:12 RHEL9SN systemd[1]: Starting Load mhvtl modules... Jan 27 15:44:12 RHEL9SN systemd[1]: Load CPU microcode update was skipped because of an unmet condition check (ConditionPathExists=/sys/devices/system/cpu/microcode/reload). Jan 27 15:44:12 RHEL9SN systemd[1]: OpenSSH ecdsa Server Key Generation was skipped because no trigger condition checks were met. Jan 27 15:44:12 RHEL9SN systemd[1]: OpenSSH ed25519 Server Key Generation was skipped because no trigger condition checks were met. Jan 27 15:44:12 RHEL9SN systemd[1]: OpenSSH rsa Server Key Generation was skipped because no trigger condition checks were met. Jan 27 15:44:12 RHEL9SN systemd[1]: Reached target sshd-keygen.target. Jan 27 15:44:12 RHEL9SN systemd[1]: System Security Services Daemon was skipped because no trigger condition checks were met. Jan 27 15:44:12 RHEL9SN systemd[1]: Reached target User and Group Name Lookups. Jan 27 15:44:12 RHEL9SN kernel: mhvtl: loading out-of-tree module taints kernel. Jan 27 15:44:12 RHEL9SN kernel: mhvtl: module verification failed: signature and/or required key missing - tainting kernel Jan 27 15:44:12 RHEL9SN systemd[1]: Starting Resets System Activity Logs... Jan 27 15:44:12 RHEL9SN systemd[1]: Starting User Login Management... Jan 27 15:44:12 RHEL9SN systemd[1]: TPM2 PCR Barrier (User) was skipped because of an unmet condition check (ConditionPathExists=/sys/firmware/efi/efivars/StubPcrKernelImage-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f). Jan 27 15:44:12 RHEL9SN systemd[1]: Started VGAuth Service for open-vm-tools. Jan 27 15:44:12 RHEL9SN systemd[1]: Started Service for virtual machines hosted on VMware. Jan 27 15:44:12 RHEL9SN systemd[1]: Finished Restore /run/initramfs on shutdown. Jan 27 15:44:12 RHEL9SN kernel: scsi host3: mhvtl: version 0.18.32 [20230224-0], opts=0x0 Jan 27 15:44:12 RHEL9SN systemd[1]: Finished Load mhvtl modules.
i noted that Trellix was starting as this was happening i wonder if it is blocking? Mcafee has to be installed (Company regulations) i tried stopping the services for it but it didn't make a difference. Do you think it could be something to do with the Anti Virus before i start messing with uninstalling mcafee as a test or adding exceptions once i know how to do that in Linux?
Have you got any instruction on how to install Libraries, drives etc using command line for the future when this is solved?
Regards
Lee
just to add i installed the debug binaries for the Linux kernal i need to work out how to enable it and to look for the mhvtl processes.
If the mhvtl.ko (kernel driver) failed to load, none of the user-space daemons would load and no VTL devices would be available. Never had to deal with McAfee on Linux - so this is uncharted territory.
Are you able to install 'mt-st' and 'mtx' packages on the RHEL ? I'll write up steps to test library & tape functionality using the above utilities and the good old 'dd' for reading/writing data. See if we can isolate it from NW or mhVTL to start with..
both mt-st and mtx are installed:
[root@RHEL9SN ~]# yum install mt-st Updating Subscription Management repositories. Last metadata expiration check: 2:01:51 ago on Thu 30 Jan 2025 04:02:02 PM GMT. Package mt-st-1.4-7.el9.x86_64 is already installed. Dependencies resolved. Nothing to do. Complete! [root@RHEL9SN ~]# yum install mtx Updating Subscription Management repositories. Last metadata expiration check: 2:02:03 ago on Thu 30 Jan 2025 04:02:02 PM GMT. Package mtx-1.3.12-26.el9.x86_64 is already installed. Dependencies resolved. Nothing to do. Complete!
i installed all the recommended packages not sure if you intend running anything anything else but i have run the following:
mt -f /dev/st1 status mtx -f /dev/sch0 inquiry mtx -f /dev/st1 status mtx -f /dev/st1 inventory
just so you are aware i rebooted the host after disabling the trellix processes all remains the same although the SL3000 Tape Libraries have now been removed just as i had expected them to be before i rebooted so i think we can rule out AV.
inquire (using name lookup) [email protected]:VMware Virtual disk 2.0 |Disk, /dev/sg0 [email protected]:VMware Virtual disk 2.0 |Disk, /dev/sg1 [email protected]:NECVMWarVMware IDE CDR001.00|CD-ROM, /dev/sg2 [email protected]:STK L700 0107|Autochanger (Jukebox), /dev/sg4 S/N: XYZZY_A [email protected]:STK L80 0107|Autochanger (Jukebox), /dev/sg11 S/N: XYZZY_B
lsscsi -g [0:0:0:0] disk VMware Virtual disk 2.0 /dev/sda /dev/sg0 [0:0:1:0] disk VMware Virtual disk 2.0 /dev/sdb /dev/sg1 [1:0:0:0] cd/dvd NECVMWar VMware IDE CDR00 1.00 /dev/sr0 /dev/sg2 [3:0:0:0] mediumx STK L700 0107 /dev/sch0 /dev/sg4 [3:0:1:0] tape IBM ULT3580-TD8 0107 /dev/st1 /dev/sg5 [3:0:2:0] tape IBM ULT3580-TD8 0107 /dev/st3 /dev/sg7 [3:0:3:0] tape IBM ULT3580-TD6 0107 /dev/st2 /dev/sg6 [3:0:4:0] tape IBM ULT3580-TD6 0107 /dev/st4 /dev/sg8 [3:0:8:0] mediumx STK L80 0107 /dev/sch1 /dev/sg11 [3:0:9:0] tape STK T10000B 0107 /dev/st5 /dev/sg9 [3:0:10:0] tape STK T10000B 0107 /dev/st0 /dev/sg3 [3:0:11:0] tape STK T10000B 0107 /dev/st6 /dev/sg10 [3:0:12:0] tape STK T10000B 0107 /dev/st7 /dev/sg12
mt -f /dev/st1 status /dev/st1: Input/output error
mtx -f /dev/sch0 inquiry Product Type: Medium Changer Vendor ID: 'STK ' Product ID: 'L700 ' Revision: '0107' Attached Changer API: No
mtx -f /dev/sch0 status Storage Changer /dev/sch0:4 Drives, 43 Slots ( 4 Import/Export ) Data Transfer Element 0:Empty Data Transfer Element 1:Empty Data Transfer Element 2:Empty Data Transfer Element 3:Empty Storage Element 1:Full :VolumeTag=E01001L8 Storage Element 2:Full :VolumeTag=E01002L8 Storage Element 3:Full :VolumeTag=E01003L8
mtx -f /dev/st1 status cannot open SCSI device '/dev/st1' - No medium found
mtx -f /dev/st1 inventory cannot open SCSI device '/dev/st1' - No medium found
when running the status and inventory commands it sits for a few minutes just printing out messages like below in the messages log:
Jan 30 18:02:41 RHEL9SN /usr/bin/vtltape[852]: return_sense(): [Key/ASC/ASCQ] [02 3a 00] Jan 30 18:02:41 RHEL9SN /usr/bin/vtltape[852]: ssc_tur(): Test Unit Ready (585) ** : No, No tape loaded Jan 30 18:02:42 RHEL9SN /usr/bin/vtltape[852]: CDB (586) (delay 29605): 00 00 00 00 00 00 Jan 30 18:02:42 RHEL9SN /usr/bin/vtltape[852]: return_sense(): [Key/ASC/ASCQ] [02 3a 00] Jan 30 18:02:42 RHEL9SN /usr/bin/vtltape[852]: ssc_tur(): Test Unit Ready (586) ** : No, No tape loaded Jan 30 18:02:43 RHEL9SN /usr/bin/vtltape[852]: CDB (587) (delay 29605): 00 00 00 00 00 00 Jan 30 18:02:43 RHEL9SN /usr/bin/vtltape[852]: return_sense(): [Key/ASC/ASCQ] [02 3a 00] Jan 30 18:02:43 RHEL9SN /usr/bin/vtltape[852]: ssc_tur(): Test Unit Ready (587) ** : No, No tape loaded
just to add i installed mhvtl using the make and make install method i suspect it shouldn't matter as we seem to only have an issue with drive and not the library itself but you never know so thought i would mention. do you think it is better to compile the RPM from the source code or both methods are basically the same? i did originally try to use the rpm method but had issue compiling it so have always used this make method since.
i will try and install with AV disabled again tomorrow to see if it makes a difference but expect it to be the same
Hello,
looking at this issue it looks like the error is the same as in https://github.com/markh794/mhvtl/issues/127
The EIO errors you get come from the st driver (i.e, mt commads) this bug was introduced with [1] which made it into RHEL 9.4 (same for Alma and Rocky). Looks like there is a patch on the way [2].
in the mean time , the way to deal wit this is to clear the "power-on" via a sg_command, i.e., sg_modes /dev/sgX, this will only work before issuing any mt command, as issuing any mt command after the "power-on" will set the pos_unknow variable in the st device file (/dev/stX|/dev/nstX).
Once the flag has been set in the st device file the only way to get out of this state is mounting a tape (mtx) and doing a rewind (mt) which will clear the pos_unknown flag and everything will work as expected.
[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/scsi/st.c?h=v6.14-rc1&id=9604eea5bd3ae1fa3c098294f4fc29ad687141ea [2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/scsi/st.c?h=v6.14-rc1&id=98b37881b7492ae9048ad48260cc8a6ee9eb39fd
Pablo.
Pablo,
Thank you for the detailed analysis/explanation.
About the only comment would be to use Test Unit Ready 'sg_turs -v /dev/sgX' rather than sg_modes. Although both commands will achieve the 'clear power-on/reset' sense.
Hi Mark and Pablo
Thanks for your comments, i haven't had the chance this week to look more into this other than installing MHVTL with mcafee disabled and it made no difference as expected. I had been leaning towards an OS side issue, but could you please confirm if the last 2 comments are related to just mt commands or is this possibly the reason why the inquire command and NetWorker can't access the drives?
i will have a play later though
Regards
Lee
Hi Mark and Pablo
I tested with 1 drive and running sg_modes /dev/sg4 or whatever the number was seemed to work and inquire showed the device as expected, unfortunately i then tried to create a new library by editing the /etc/mhvtl files and using mktape to create new media this time it didn't work when i ran the sg command. I suspect that failure was down to what i did rather than the command not always working i will reinstall mhvtl tomorrow and test again with the default libraries and run for all drives then configure the library in NetWorker if i can see all of the drives.
as i have mentioned the GUI isn't fit for purpose though i can create a library and devices but it doesn't create the tape media and it is outdated anyway obviously. Could you help me with finding the .sh file or the correct commands to use to create a library and drives so i can use the latest additions to mhvtl, i can make LTO 8 tape cartridges for example but currently have no way of creating the library with LTO8 drives.
Regards
Lee
Hi Mark and Lee,
About the only comment would be to use Test Unit Ready 'sg_turs -v /dev/sgX' rather than sg_modes
You are absolutely right.
could you please confirm if the last 2 comments are related to just mt commands
Technically, is not just mt commands but anything that interacts with the drive through the Linux st driver right after a power-on, for example, an ioctl call. As I said before if you get to this state you can also mount a tape and rewind it to fix the problem.
then tried to create a new library by editing the /etc/mhvtl files and using mktape to create new media this time it didn't work when i ran the sg command
I don't know anything about this NetWorker or the mhVTL GUI, but, were you running these software the first time it worked? Or did you do the steps for one drive, then start this NetWorker thing and then create the new media? In the second case I would suspect the networker to be using the st driver.
Regards, Pablo.
Hi Pablo
Thanks for your response, please ignore the NetWorker comment that is just the backup software that i am using and will eventually configure the VTL within it, but it isn't involved at this stage it was purely stuff within the Redhat OS and mhvtl config files. I am sure it was the actions i took when messing with the configuration files or maybe i didn't run sg_turs again the first time i did it, i ran both sg_mode and sg_turs to see what happened as i had never used them before, i will reinstall mhvtl again when i start work in the morning and test with both commands.
Regards
Lee
Hi Mark and Pablo
I tested with 1 drive and running sg_modes /dev/sg4 or whatever the number was seemed to work and inquire showed the device as expected, unfortunately i then tried to create a new library by editing the /etc/mhvtl files and using mktape to create new media this time it didn't work when i ran the sg command. I suspect that failure was down to what i did rather than the command not always working i will reinstall mhvtl tomorrow and test again with the default libraries and run for all drives then configure the library in NetWorker if i can see all of the drives.
as i have mentioned the GUI isn't fit for purpose though i can create a library and devices but it doesn't create the tape media and it is outdated anyway obviously. Could you help me with finding the .sh file or the correct commands to use to create a library and drives so i can use the latest additions to mhvtl, i can make LTO 8 tape cartridges for example but currently have no way of creating the library with LTO8 drives.
Regards
Lee
There is little in common between the library config and the drive 'type' (LTO, DLT, AIT). A library definition will determine the number of each type of 'element' (Storage Slot, Data Transfer (drive), Media I/O, and one 'arm'). The emulations attempt to enumerate the 'element' numbers to mirror the physical counter parts.
Unlike the physical counter parts, the library slots will accept any type of media/drive. There are no restricting media types/drive types of any combination within a library.
However, each drive will reject incompatible media. i.e. You can not insert 8mm cartridge into an LTO drive etc. The LTO emulations attempt to reflect real life restrictions of LTO such that one generation back is mounted R/W, two generations back is R/O, any 'forward' generations will be rejected. (The drive enforces this, not the library).
Each drive is defined:
Drive: 34 CHANNEL: 00 TARGET: 12 LUN: 00
Library ID: 30 Slot: 04
Vendor identification: STK
Product identification: T10000B
Unit serial number: XYZZY_B4
NAA: 30:22:33:44:ab:00:12:00
Compression: factor 1 enabled 1
Compression type: lzo
Backoff: 400
Library ID:
Simply update the Vendor Identification, Product identification to the drive model you desire.
e.g. LTO8:
Drive: 11 CHANNEL: 00 TARGET: 01 LUN: 00
Library ID: 10 Slot: 01
Vendor identification: IBM
Product identification: ULT3580-TD8
Unit serial number: XYZZY_A1
NAA: 10:22:33:44:ab:00:01:00
Compression: factor 1 enabled 1
Compression type: lzo
Backoff: 400
The library_contents.
[markh@alma9 usr]$ cat /etc/mhvtl/library_contents.10
VERSION: 2
Drive 1:
Drive 2:
Drive 3:
Drive 4:
Picker 1:
MAP 1:
MAP 2:
MAP 3:
MAP 4:
Slot 1: E01001L8
Slot 2: E01002L8
Slot 3: E01003L8
Slot 4: E01004L8
Slot 5: E01005L8
Slot 6: E01006L8
Slot 7: E01007L8
Slot 8: E01008L8
Slot 9: E01009L8
Once the device.conf and library_contents.xx are created, the 'make_vtl_media' will parse the config and attempt to create the media file(s) if they do not exist.
[markh@alma9 usr]$ sudo make_vtl_media -C /etc/mhvtl -m /usr/bin
===> Reading from /etc/mhvtl/device.conf file to find Tape Libraries and Drives ...
===> Scanning for 'Slot' entries in /etc/mhvtl/library_contents.10 ...
Directory already exists: /opt/mhvtl/CLN101L8: skipping
<snip>
Of course, there is always the 'edit_tape' utility which can modify the media metadata and 'convert' any media to any other media. The 'on disk' format is exactly the same between all media.
Hello,
looking at this issue it looks like the error is the same as in #127
The EIO errors you get come from the st driver (i.e, mt commads) this bug was introduced with [1] which made it into RHEL 9.4 (same for Alma and Rocky). Looks like there is a patch on the way [2].
in the mean time , the way to deal wit this is to clear the "power-on" via a
sg_command, i.e.,sg_modes /dev/sgX, this will only work before issuing any mt command, as issuing any mt command after the "power-on" will set thepos_unknowvariable in the st device file (/dev/stX|/dev/nstX).Once the flag has been set in the st device file the only way to get out of this state is mounting a tape (
mtx) and doing a rewind (mt) which will clear thepos_unknownflag and everything will work as expected.[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/scsi/st.c?h=v6.14-rc1&id=9604eea5bd3ae1fa3c098294f4fc29ad687141ea [2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/scsi/st.c?h=v6.14-rc1&id=98b37881b7492ae9048ad48260cc8a6ee9eb39fd
Pablo.
Hi Mark and Pablo
my apologies for the delay in my reply i have tried since and i am still unable to to get this to work
i updated my Linux kernel today and reinstalled mhvtl
at /etc/system-release Red Hat Enterprise Linux release 9.5 (Plow)
uname -a Linux RHEL9SN 5.14.0-503.22.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jan 15 08:02:15 EST 2025 x86_64 x86_64 x86_64 GNU/Linux
lsscsi -g [0:0:0:0] disk VMware Virtual disk 2.0 /dev/sda /dev/sg0 [0:0:1:0] disk VMware Virtual disk 2.0 /dev/sdb /dev/sg1 [1:0:0:0] cd/dvd NECVMWar VMware IDE CDR00 1.00 /dev/sr0 /dev/sg2 [3:0:0:0] mediumx STK L700 0107 /dev/sch0 /dev/sg3 [3:0:1:0] tape IBM ULT3580-TD8 0107 /dev/st7 /dev/sg12 [3:0:2:0] tape IBM ULT3580-TD8 0107 /dev/st4 /dev/sg9 [3:0:3:0] tape IBM ULT3580-TD6 0107 /dev/st3 /dev/sg8 [3:0:4:0] tape IBM ULT3580-TD6 0107 /dev/st0 /dev/sg6 [3:0:8:0] mediumx STK L80 0107 /dev/sch1 /dev/sg4 [3:0:9:0] tape STK T10000B 0107 /dev/st2 /dev/sg7 [3:0:10:0] tape STK T10000B 0107 /dev/st1 /dev/sg5 [3:0:11:0] tape STK T10000B 0107 /dev/st5 /dev/sg10 [3:0:12:0] tape STK T10000B 0107 /dev/st6 /dev/sg11
sg_turs -v /dev/sg12 test unit ready cdb: [00 00 00 00 00 00] test unit ready: Fixed format, current; Sense key: Not Ready Additional sense: Medium not present Info fld=0x0 [0] device not ready Completed 1 Test Unit Ready commands with 1 errors
mt -f /dev/st7 status /dev/st7: Input/output error
sg_modes /dev/sg12 IBM ULT3580-TD8 0107 peripheral_type: tape [0x1] Mode parameter header from MODE SENSE(10): Mode data length=236, medium type=0x00, specific param=0x10, longlba=0 Block descriptor length=8
General mode parameter block descriptors: Density code=0x0 00 00 00 00 00 00 00 00 00
Read-Write error recovery, page_control: current 00 01 0a 00 00 00 00 00 00 00 00 00 00 Disconnect-Reconnect, page_control: current 00 02 0e 32 32 00 00 00 00 00 00 04 00 00 00 00 00 Control, page_control: current 00 0a 0a 00 00 00 00 00 00 00 00 00 00 Data Compression, page_control: current 00 0f 0e c0 80 ff ff ff ff ff ff ff ff 00 00 00 00 Device configuration, page_control: current 00 10 0e 00 00 00 00 00 64 40 00 18 00 00 00 01 80 Medium Partition [1], page_control: current 00 11 0e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Power condition, page_control: current 00 1a 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 00 00 00 00 Informational exceptions control (tape version), page_control: current 00 1c 0a 08 03 00 00 00 00 00 00 00 00 Medium configuration, page_control: current 00 1d 1e 00 00 01 01 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 page_code: 0x24, page_control: current 00 24 06 00 00 00 00 00 01 page_code: 0x25, page_control: current 00 25 1e 00 00 00 01 01 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 page_code: 0x2f, page_control: current 00 2f 08 00 00 00 00 00 00 00 00
mt -f /dev/st7 status /dev/st7: Input/output error
is there anything i need to do extra reference the patch mentioned above
Regards
Lee
Hi Mark
I am totally stuck and have no idea how to get this to work neither the sg_modes or sg_turs commands seem to work for me am i missing something?
[root@RHEL9SN ~]# lsscsi -g [0:0:0:0] disk VMware Virtual disk 2.0 /dev/sda /dev/sg0 [0:0:1:0] disk VMware Virtual disk 2.0 /dev/sdb /dev/sg1 [1:0:0:0] cd/dvd NECVMWar VMware IDE CDR00 1.00 /dev/sr0 /dev/sg2 [3:0:0:0] mediumx STK L700 0107 /dev/sch0 /dev/sg11 [3:0:1:0] tape IBM ULT3580-TD8 0107 /dev/st3 /dev/sg6 [3:0:2:0] tape IBM ULT3580-TD8 0107 /dev/st1 /dev/sg4 [3:0:3:0] tape IBM ULT3580-TD6 0107 /dev/st2 /dev/sg5 [3:0:4:0] tape IBM ULT3580-TD6 0107 /dev/st4 /dev/sg7 [3:0:8:0] mediumx STK L80 0107 /dev/sch1 /dev/sg12 [3:0:9:0] tape STK T10000B 0107 /dev/st0 /dev/sg3 [3:0:10:0] tape STK T10000B 0107 /dev/st6 /dev/sg9 [3:0:11:0] tape STK T10000B 0107 /dev/st7 /dev/sg10 [3:0:12:0] tape STK T10000B 0107 /dev/st5 /dev/sg8 [root@RHEL9SN ~]# mt -f /dev/st3 status /dev/st3: Input/output error [root@RHEL9SN ~]# mt -f /dev/st1 status /dev/st1: Input/output error [root@RHEL9SN ~]# sg_modes --all -v /dev/sg6 inquiry cdb: [12 00 00 00 24 00] IBM ULT3580-TD8 0107 peripheral_type: tape [0x1] mode sense(10) cdb: [5a 00 3f 00 00 00 00 10 00 00] Mode parameter header from MODE SENSE(10): Mode data length=236, medium type=0x00, specific param=0x10, longlba=0 Block descriptor length=8
General mode parameter block descriptors: Density code=0x0 00 00 00 00 00 00 00 00 00
Read-Write error recovery, page_control: current 00 01 0a 00 00 00 00 00 00 00 00 00 00 Disconnect-Reconnect, page_control: current 00 02 0e 32 32 00 00 00 00 00 00 04 00 00 00 00 00 Control, page_control: current 00 0a 0a 00 00 00 00 00 00 00 00 00 00 Data Compression, page_control: current 00 0f 0e c0 80 ff ff ff ff ff ff ff ff 00 00 00 00 Device configuration, page_control: current 00 10 0e 00 00 00 00 00 64 40 00 18 00 00 00 01 80 Medium Partition [1], page_control: current 00 11 0e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Power condition, page_control: current 00 1a 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 00 00 00 00 Informational exceptions control (tape version), page_control: current 00 1c 0a 08 03 00 00 00 00 00 00 00 00 Medium configuration, page_control: current 00 1d 1e 00 00 01 01 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 page_code: 0x24, page_control: current 00 24 06 00 00 00 00 00 01 page_code: 0x25, page_control: current 00 25 1e 00 00 00 01 01 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 page_code: 0x2f, page_control: current 00 2f 08 00 00 00 00 00 00 00 00 [root@RHEL9SN ~]# mt -f /dev/st3 status /dev/st3: Input/output error [root@RHEL9SN ~]# sg_turs -v -p /dev/sg6 test unit ready cdb: [00 00 00 00 00 00] test unit ready: Fixed format, current; Sense key: Not Ready Additional sense: Medium not present Info fld=0x0 [0] [root@RHEL9SN ~]# mt -f /dev/st3 status /dev/st3: Input/output error
i have tried different variations of the 2 commands and get the same output, is there anything else to try with RedHat 9 or is it impossible to get mhvtl to work on it until we get the kernel patch?
i tried to install on a SUSE Linux 12 SP5 server (to see if it made a difference) but when i try to make in the kernel directory i get this:
NVESN:/usr/src/mhvtl # cd kernel/ NVESN:/usr/src/mhvtl/kernel # make ./config.sh error: you must supply environment variable KDIR or you do not have the kernel-devel installed Makefile:33: recipe for target 'config.h' failed make: *** [config.h] Error 1 NVESN:/usr/src/mhvtl/kernel # zypper install kernel-devel Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP5_x86_64'. Loading repository data... Reading installed packages... 'kernel-devel' is already installed. No update candidate for 'kernel-devel-4.12.14-122.231.1.noarch'. The highest available version is already installed. Resolving package dependencies...
Nothing to do.
the host is quite locked down so maybe it is that side of it that is blocking i tried to install using the .rpm file and that doesn't work either, (should install on SUSE Linux work out of interest? i don't want to play around and it not work at all)
more worried about the RedHat 9 issue, but if you think SUSE 12 or 15 hosts should be able to deploy it i will try and get a less locked down host deployed.
Regards
Lee
On Mar 14, 2025, at 10:33 AM, LeeHayman72 @.***> wrote:
LeeHayman72 left a comment (markh794/mhvtl#140) Hi Mark
I am totally stuck and have no idea how to get this to work neither the sg_modes or sg_turs commands seem to work for me am i missing something?
@.*** ~]# lsscsi -g [0:0:0:0] disk VMware Virtual disk 2.0 /dev/sda /dev/sg0 [0:0:1:0] disk VMware Virtual disk 2.0 /dev/sdb /dev/sg1 [1:0:0:0] cd/dvd NECVMWar VMware IDE CDR00 1.00 /dev/sr0 /dev/sg2 [3:0:0:0] mediumx STK L700 0107 /dev/sch0 /dev/sg11 [3:0:1:0] tape IBM ULT3580-TD8 0107 /dev/st3 /dev/sg6 [3:0:2:0] tape IBM ULT3580-TD8 0107 /dev/st1 /dev/sg4 [3:0:3:0] tape IBM ULT3580-TD6 0107 /dev/st2 /dev/sg5 [3:0:4:0] tape IBM ULT3580-TD6 0107 /dev/st4 /dev/sg7 [3:0:8:0] mediumx STK L80 0107 /dev/sch1 /dev/sg12 [3:0:9:0] tape STK T10000B 0107 /dev/st0 /dev/sg3 [3:0:10:0] tape STK T10000B 0107 /dev/st6 /dev/sg9 [3:0:11:0] tape STK T10000B 0107 /dev/st7 /dev/sg10 [3:0:12:0] tape STK T10000B 0107 /dev/st5 /dev/sg8 @.*** ~]# mt -f /dev/st3 status /dev/st3: Input/output error @.*** ~]# mt -f /dev/st1 status /dev/st1: Input/output error @.*** ~]# sg_modes --all -v /dev/sg6 inquiry cdb: [12 00 00 00 24 00] IBM ULT3580-TD8 0107 peripheral_type: tape [0x1] mode sense(10) cdb: [5a 00 3f 00 00 00 00 10 00 00] Mode parameter header from MODE SENSE(10): Mode data length=236, medium type=0x00, specific param=0x10, longlba=0 Block descriptor length=8
General mode parameter block descriptors: Density code=0x0 00 00 00 00 00 00 00 00 00
Read-Write error recovery, page_control: current 00 01 0a 00 00 00 00 00 00 00 00 00 00 Disconnect-Reconnect, page_control: current 00 02 0e 32 32 00 00 00 00 00 00 04 00 00 00 00 00 Control, page_control: current 00 0a 0a 00 00 00 00 00 00 00 00 00 00 Data Compression, page_control: current 00 0f 0e c0 80 ff ff ff ff ff ff ff ff 00 00 00 00 Device configuration, page_control: current 00 10 0e 00 00 00 00 00 64 40 00 18 00 00 00 01 80 Medium Partition [1], page_control: current 00 11 0e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Power condition, page_control: current 00 1a 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 00 00 00 00 Informational exceptions control (tape version), page_control: current 00 1c 0a 08 03 00 00 00 00 00 00 00 00 Medium configuration, page_control: current 00 1d 1e 00 00 01 01 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 page_code: 0x24, page_control: current 00 24 06 00 00 00 00 00 01 page_code: 0x25, page_control: current 00 25 1e 00 00 00 01 01 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 page_code: 0x2f, page_control: current 00 2f 08 00 00 00 00 00 00 00 00 @.*** ~]# mt -f /dev/st3 status /dev/st3: Input/output error @.*** ~]# sg_turs -v -p /dev/sg6 test unit ready cdb: [00 00 00 00 00 00] test unit ready: Fixed format, current; Sense key: Not Ready Additional sense: Medium not present Info fld=0x0 [0] @.*** ~]# mt -f /dev/st3 status /dev/st3: Input/output error
i have tried different variations of the 2 commands and get the same output, is there anything else to try with RedHat 9 or is it impossible to get mhvtl to work on it until we get the kernel patch?
i tried to install on a SUSE Linux 12 SP5 server (to see if it made a difference) but when i try to make in the kernel directory i get this:
NVESN:/usr/src/mhvtl # cd kernel/ NVESN:/usr/src/mhvtl/kernel # make ./config.sh error: you must supply environment variable KDIR or you do not have the kernel-devel installed Makefile:33: recipe for target 'config.h' failed make: *** [config.h] Error 1 NVESN:/usr/src/mhvtl/kernel # zypper install kernel-devel Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP5_x86_64'. Loading repository data... Reading installed packages... 'kernel-devel' is already installed. No update candidate for 'kernel-devel-4.12.14-122.231.1.noarch'. The highest available version is already installed. Resolving package dependencies...
Nothing to do.
the host is quite locked down so maybe it is that side of it that is blocking i tried to install using the .rpm file and that doesn't work either, (should install on SUSE Linux work out of interest? i don't want to play around and it not work at all)
more worried about the RedHat 9 issue, but if you think SUSE 12 or 15 hosts should be able to deploy it i will try and get a less locked down host deployed.
Regards
Lee
https://github.com/markh794/mhvtl/issues/140#issuecomment-2725345077 https://github.com/notifications/unsubscribe-auth/AAOJGHGBRUB2BACJR6LV5232UMHFXAVCNFSM6AAAAABV6WJSCSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDOMRVGM2DKMBXG4
LeeHayman72 left a comment (markh794/mhvtl#140) https://github.com/markh794/mhvtl/issues/140#issuecomment-2725345077 Hi Mark
I am totally stuck and have no idea how to get this to work neither the sg_modes or sg_turs commands seem to work for me am i missing something?
@.*** ~]# lsscsi -g [0:0:0:0] disk VMware Virtual disk 2.0 /dev/sda /dev/sg0 [0:0:1:0] disk VMware Virtual disk 2.0 /dev/sdb /dev/sg1 [1:0:0:0] cd/dvd NECVMWar VMware IDE CDR00 1.00 /dev/sr0 /dev/sg2 [3:0:0:0] mediumx STK L700 0107 /dev/sch0 /dev/sg11 [3:0:1:0] tape IBM ULT3580-TD8 0107 /dev/st3 /dev/sg6 [3:0:2:0] tape IBM ULT3580-TD8 0107 /dev/st1 /dev/sg4 [3:0:3:0] tape IBM ULT3580-TD6 0107 /dev/st2 /dev/sg5 [3:0:4:0] tape IBM ULT3580-TD6 0107 /dev/st4 /dev/sg7 [3:0:8:0] mediumx STK L80 0107 /dev/sch1 /dev/sg12 [3:0:9:0] tape STK T10000B 0107 /dev/st0 /dev/sg3 [3:0:10:0] tape STK T10000B 0107 /dev/st6 /dev/sg9 [3:0:11:0] tape STK T10000B 0107 /dev/st7 /dev/sg10 [3:0:12:0] tape STK T10000B 0107 /dev/st5 /dev/sg8 @.*** ~]# mt -f /dev/st3 status /dev/st3: Input/output error @.*** ~]# mt -f /dev/st1 status /dev/st1: Input/output error @.*** ~]# sg_modes --all -v /dev/sg6 inquiry cdb: [12 00 00 00 24 00] IBM ULT3580-TD8 0107 peripheral_type: tape [0x1] mode sense(10) cdb: [5a 00 3f 00 00 00 00 10 00 00] Mode parameter header from MODE SENSE(10): Mode data length=236, medium type=0x00, specific param=0x10, longlba=0 Block descriptor length=8
General mode parameter block descriptors: Density code=0x0 00 00 00 00 00 00 00 00 00
Read-Write error recovery, page_control: current 00 01 0a 00 00 00 00 00 00 00 00 00 00 Disconnect-Reconnect, page_control: current 00 02 0e 32 32 00 00 00 00 00 00 04 00 00 00 00 00 Control, page_control: current 00 0a 0a 00 00 00 00 00 00 00 00 00 00 Data Compression, page_control: current 00 0f 0e c0 80 ff ff ff ff ff ff ff ff 00 00 00 00 Device configuration, page_control: current 00 10 0e 00 00 00 00 00 64 40 00 18 00 00 00 01 80 Medium Partition [1], page_control: current 00 11 0e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Power condition, page_control: current 00 1a 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 00 00 00 00 Informational exceptions control (tape version), page_control: current 00 1c 0a 08 03 00 00 00 00 00 00 00 00 Medium configuration, page_control: current 00 1d 1e 00 00 01 01 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 page_code: 0x24, page_control: current 00 24 06 00 00 00 00 00 01 page_code: 0x25, page_control: current 00 25 1e 00 00 00 01 01 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 page_code: 0x2f, page_control: current 00 2f 08 00 00 00 00 00 00 00 00 @.*** ~]# mt -f /dev/st3 status /dev/st3: Input/output error @.*** ~]# sg_turs -v -p /dev/sg6 test unit ready cdb: [00 00 00 00 00 00] test unit ready: Fixed format, current; Sense key: Not Ready Additional sense: Medium not present Info fld=0x0 [0] @.*** ~]# mt -f /dev/st3 status /dev/st3: Input/output error
i have tried different variations of the 2 commands and get the same output, is there anything else to try with RedHat 9 or is it impossible to get mhvtl to work on it until we get the kernel patch?
i tried to install on a SUSE Linux 12 SP5 server (to see if it made a difference) but when i try to make in the kernel directory i get this:
NVESN:/usr/src/mhvtl # cd kernel/ NVESN:/usr/src/mhvtl/kernel # make ./config.sh error: you must supply environment variable KDIR or you do not have the kernel-devel installed Makefile:33: recipe for target 'config.h' failed make: *** [config.h] Error 1 NVESN:/usr/src/mhvtl/kernel # zypper install kernel-devel Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP5_x86_64'. Loading repository data... Reading installed packages... 'kernel-devel' is already installed. No update candidate for 'kernel-devel-4.12.14-122.231.1.noarch'. The highest available version is already installed. Resolving package dependencies...
Nothing to do.
the host is quite locked down so maybe it is that side of it that is blocking i tried to install using the .rpm file and that doesn't work either, (should install on SUSE Linux work out of interest? i don't want to play around and it not work at all)
more worried about the RedHat 9 issue, but if you think SUSE 12 or 15 hosts should be able to deploy it i will try and get a less locked down host deployed.
Regards
Lee
So set KDIR to the directory where your kernel sources are located? I believe the Makefile looks in /lib/modules/VERSION/build, and then in /usr/src/linux-headers-VERSION, so if the include files it needs are elsewhere, you have to set KDIR, e.g.:
zsh> KDIR=$PWD Make
Also, you might try Tumbleweed. I personally added mhvtl to tumbleweed and keep it running every time the kernel changes. (Mark: Hint: let’s get rid of having a KMP!)
— Lee Duncan
Re:
NVESN:/usr/src/mhvtl/kernel # make
./config.sh
error: you must supply environment variable KDIR
or you do not have the kernel-devel installed
Makefile:33: recipe for target 'config.h' failed
make: *** [config.h] Error 1
NVESN:/usr/src/mhvtl/kernel # zypper install kernel-devel
Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP5_x86_64'.
Loading repository data...
Reading installed packages...
'kernel-devel' is already installed.
No update candidate for 'kernel-devel-4.12.14-122.231.1.noarch'. The highest available version is already installed.
Can you please confirm the running kernel (uname -r) is the same as the kernel-devel-4.12.14-122.231.1
While I've not experienced this on SLES, I have on the RHEL based distros (CentOS/Rocky/AlmaLinux).
i.e. Install OS, run package upgrades without a subsequent reboot to load latest kernel and attempt to build mhvtl.ko...
Cheers Mark
Hi Mark and Lee
Thanks for your feedback, the SUSE wasn't my main concern but i think the kernel version is the cause as i said it is locked down:
uname -r 4.12.14-122.162-default
i hadn't thought about my kernel being below, i will get that updated ASAP (not a quick task) to test further on it
Are we saying now that RedHat 9 or at least my Server is not going to be able to use MHVTL? until the fixes that Pablo identified are introduced in the Kernel or is there another way around this?
i wont be around for a couple of weeks so if we have gone as far as we can with this please feel free to close it
thanks for all the help
Regards
Lee