PowerWire.eu

Independent IBM i, AIX and Linux news and tech tips for Europe and beyond

  • Home
  • News
  • Technical Articles
    • IBM i
    • AIX
    • Linux
    • VIOS
  • Subscribe
  • About Us
  • Contact Us
  • Advertise with PowerWire.eu

Backup the backup of your backup

May 5, 2020 by David Shears Leave a Comment

It may sound like we’re getting into some sort of recursion error, but I like to think of it as the poor mans VTL, Virtual Tape Library, and something you can try at home (I assume most of us are working at home right now.)

A little bit of background, most of my customers are still on LTO cartridges of some description, but they backup to savefile first which is then offloaded onto the tape. This has the advantage that if the tape offload fails, we still have a copy of the backup to work from.

With circumstances being what they are, we’ve tried to get customers to load tapes before offices go into full lockdown. This means you can set it to rewind and keep doing the nightly backup as normal. But what if both fail, or a customer wasn’t able to put the tape in?

Well luckily, we have plenty of intel servers at various degrees of usefulness/activity with some spare disk space. So, I figure lets at least get a copy of my backup off of this particular rack. Even if all that means is it’s on the opposite side of the server room that’s still better than a poke in the eye?

So that I keep control of the process I’d rather the IBMi did a put rather than something else doing a get. The simple answer to that is if the intel server I’m being offered runs FTP services, but what about if it doesn’t? Then we’ll play with the IFS and QNTC.

For those who haven’t used it, QNTC is part of the function to allow the IBMi communicate with smb/cifs network shares (like say, windows shares.) You’ll need to make sure you have access to the relevant server plus, if you’re offloading your backup there, then you want some sort of security/permissions in place. For the sake of the example I’ve got an IBMi profile that also exists in active directory and the passwords are the same on both sides, but you might want to look into your own systems to find what works well.

Bear in mind as well any differences in password rules (insert grumble about my v5r4 customer running at pwdlvl 0.) Also using 5.4 as an example the version of SMB will be a little archaic and so convincing your intel admin to enable an older version could be a fun conversation. Luckily in this example the customer also has a 7.2 partition so I’m passing through that to be a little more modern.

The next question is how you choose to actually get the files from point A to B, given my backup is already in savefile format I figure lets just move those. Some of you may be familiar with the method for transferring a savefile in the IFS to a library using FTP? If not IBM do a nice support article on the subject, and naturally the method works in reverse as well. /QNTC/<servername>/<foldername> is still part of the IFS after all, so you can FTP to your local server and mput your savefiles to the intel server.

A very basic version of what the FTP script might look like:

<username> <password>          
namefmt 1                 
bin                       
lcd /qsys.lib/backuplib.lib
cd /qntc/server/IBMibackup
mput *.savf               
quit                      

You could have multiple versions of the script, for example, if you want to backup to/from a different location depending on day of the week. Alternatively, you could have a template txt source member and stamp some variables into it before running.

Another hurdle you should consider, what will your program do if the folder isn’t there? Say for example the server is down. The default answer is your savefiles are all going to get dumped into qgpl which can cause its own problems, I didn’t have to fight against a box at 100% disk usage…honest….

The solution I’m using at the moment is the CHKIN command, although the server at the other end won’t understand the command (CPFA0AD) the fact you’re getting that error means it’s at least there. If you got CPFA0A9 instead (object not found) then you know the folder has gone walkabouts and can abort processing / throw errors to the crowd.

MONMSG     MSGID(CPFA0AD)                  

MONMSG     MSGID(CPFA0A9) EXEC(DO)         
SNDUSRMSG  MSG(‘Backup offload failed – +  
             server/folder not found’) +
             MSGTYPE(*INFO) TOUSR(*SYSOPR) 
GOTO       CMDLBL(ENDPGM)                  

ENDDO

Obviously in an ideal world you would tidy this up a lot, or even better get a proper VTL instead of trying to build your own out of milk bottle tops and string. But in these interesting times we are cursed to live in, you make do with what you’ve got I suppose?                                       



Filed Under: IBM i, Technical Articles

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Free monthly newsletter signup

News

A screen a story – Not our problem anymore

Last week I ran into an issue, which did teach me something new about the command WRKPRB. After checking a … [Read More...]

Raspberry Pi and Machine Learning

In my last article, I demonstrated how I used Machine Learning on the Raspberry Pi to determine if a … [Read More...]

Shield Advanced Solutions – new Messaging and Monitoring solutions

September 2022 – Toronto As Shield Advanced Solutions celebrates the significant milestone, 25 years of … [Read More...]

More articles from this section

Quick Links

  • Advertise
  • Subscribe

Follow Us…

  • Email
  • LinkedIn
  • Twitter

Search This Website

Copyright © 2023 · Cue Communications · All Rights Reserved

Log in