lin_tape on Redhat 5.x and TSM server 6.x

Trident

TSM/Storge dude
ADSM.ORG Moderator
Joined
Apr 2, 2007
Messages
618
Reaction score
73
Points
0
Location
Oslo, Norway
Website
www.basefarm.no
I spendt some time figuring out why TSM 6.2 could not access my library (TS3500) or any drives.

TSM server runs as user tsmsrv1, and that user did not have access to /dev/IBM* files.

Quick fix was to chown tsmsrv1:tsmsrv1 /dev/IBM*

A better solution is to add a file in /etc/udev/rules.d like 99-lin_tape.rules

The content should be

KERNEL=="IBM*", OWNER="tsmsrv1", GROUP="tsmsrv1", MODE="0660"


And you should replace tsmsrv1 with whatever username/group you have selected.

Hope this will save some time for other admins out there,
 
Good idea to post this. I did something similar, but as I run multiple instances within a the rhel5 image I left the ownership as root and set the group owner to the common group that runs all the instances:

Code:
KERNEL=="IBMtape*",             GROUP="tsmservs",       MODE="0660"
KERNEL=="IBMchanger*",          GROUP="tsmservs",       MODE="0660"

Have you setup persistent naming yet? I've found that if configured, and if you wind up mapping to the alternate rather than the primary path there is a significant performance hit (50%). I've used udev config lines of the following form to provide the mappings:

Code:
KERNEL=="IBMtape*[0-9]",        SYSFS{ww_port_name}=="0x500507630??17701",      SYSFS{primary_path}=="Primary",         SYMLINK="lin_tape/<ATL name>/f01_d01"

In the example above you can see that the base WWPN of my ATL has been inserted with a pair of wildcard characters - these map as the two WWPNs via which you can see the drive (in my case its a 3592 which are dual-pathed).
 
Hi,

I only have one TS3500 with 12 LTO drives, none of those have multipath.

Would it still be advisable to use persistent bindings?
 
I suspect it would - that way your devices don't go out of whack if you reboot and they get discovered in a different order. Makes it very easy to see at a glance which drive path you're defining / accessing too.

Just take out the primary_path clause from the udev line and it should be fine. EDIT: and, of course, customise the ww_port_name and ATL name for your site..
 
KERNEL=="IBMtape[0-9]", PROGRAM="/etc/udev/scripts/tapedrive_name.sh %k", RESULT=="3500507630f190b02" , SYMLINK+="TAPE0"
KERNEL=="IBMtape[0-9]", PROGRAM="/etc/udev/scripts/tapedrive_name.sh %k", RESULT=="3500507630f190b03" , SYMLINK+="TAPE1"
KERNEL=="IBMtape[0-9]", PROGRAM="/etc/udev/scripts/tapedrive_name.sh %k", RESULT=="3500507630f190b01" , SYMLINK+="TAPE2"
KERNEL=="IBMtape[0-9]", PROGRAM="/etc/udev/scripts/tapedrive_name.sh %k", RESULT=="3500507630f190b04" , SYMLINK+="TAPE3"
KERNEL=="IBMtape[0-9]", PROGRAM="/etc/udev/scripts/tapedrive_name.sh %k", RESULT=="3500308c0a03750a0" , SYMLINK+="TAPE4"
KERNEL=="IBMtape[0-9]", PROGRAM="/etc/udev/scripts/tapedrive_name.sh %k", RESULT=="3500308c0a0375098" , SYMLINK+="TAPE5"
KERNEL=="IBMtape[0-9]", PROGRAM="/etc/udev/scripts/tapedrive_name.sh %k", RESULT=="3500308c0a0375090" , SYMLINK+="TAPE6"
KERNEL=="IBMtape[0-9]", PROGRAM="/etc/udev/scripts/tapedrive_name.sh %k", RESULT=="3500308c0a0375000" , SYMLINK+="TAPE7"
KERNEL=="IBMtape[0-9]", PROGRAM="/etc/udev/scripts/tapedrive_name.sh %k", RESULT=="3500308c0a03750a8" , SYMLINK+="TAPE8"
 
I had another question.
My System is RHEL 5.7 64bit OS and Lin_tape driver is lin_tape-1.76.0-1xx.
I have edit the 98-lin_tape.rules.
When I run start_udev to get lin_tape device persistent naming , it works OK.
But when I reboot the server, the lin_tape device persistent naming does NOT work.
I need to run
start_udev every time to make it work .
What can I do to make it work automatic ?

Thanks all !



.
 
Back
Top