Greetings jpoa,
First off, I wanted to thank you for your efforts. They were sufficiently encouraging enough to get me to persevere. I had never used bacula before and it was/_is_ a bit of effort to get everything straight as to how it works and all the pieces interoperate.
Pardon the delayed response. It was an _ordeal_ just trying to purchase a drive. IBM sucks, they flat-out can.not seem to sell anyone anything. Perhaps if you are a large business they _might_ be motivated. As an individual, my $3k USD is not just not, apparently worth it to them. That said, it did lead me to Quantum. All these lto6 drives are oem'd by someone else. I haven't actually cracked mine open to see, but the fw is IBM so perhaps they are doing it? In any event, I decided to go with an autoloader. I picked up a Quantum SuperLoader 3, 16 slot. Amusingly enough, it was about the same, if not even cheaper, as a single standalone ts2260. I went with straight up SAS since the USB variant is super hard to come by. And ltfs is not as amazing as it could be. It doesn't support spanned physical media so even if I did get that going, I'd have to deal with 2.5TB swaths of my data. As I'm talking about a bit over 60TB, that's just not going to work for me. And, for similar reasons, swapping tapes was also unappealing.
Onto the good stuff. What camcontrol reports:
Code:
# camcontrol devlist | egrep -i 'ibm|quantum'
<IBM ULTRIUM-HH6 E4J1> at scbus0 target 68 lun 0 (pass36,sa0)
<QUANTUM UHDL 0091> at scbus0 target 68 lun 1 (ch0,pass38)
I attempted to configure bacula via the UI w/displeasing results. For one, and this may be one of the config issues you mentioned, after adding a device, it's added but there's no way to modify and/or remove it as subsequent selections of it come back with an error. And no clue as to what the error _is_. Also, I'm not certain how you are using it w/your setup. Are you just using it for backing up other machines? e.g. external clients. My use-case is that all my data is _on_ the NAS...all my plex transcodes and 1:1 isos of my optical media collection. The idea of if I could get the sd working, to only have to set up a client on a windows machine to back up the data one the NAS through CIFS shares was 'crazy' and something to reserve for the last ditch effort. So I played around in the bacula-sd jail a bit.
Ultimately I dx'd all of the ix configuration nonsense, used the samples as guides and created the dir, sd, fd, and bconsole configs manually. The versions are built with postgres support, I bootstrapped and updated pkg to get that installed. Then, zsh, as the lack of a _real_ shell is soul-crushing. Then mtx for the changer and postgres for bacula db action. The end result is that everything is working as of this morning. This is also why, as you'll see, a lot of the bits are fairly generic. i.e. MyCatalog, Default, etc.. I'm still not clear on how I want to set up my naming. The most important thing for me then/now is to get at one complete full backup. Once that's done, I can put in some new tapes, and choose some more original/useful names. Then do it again on those and purge/recycle that original.
Current status of the job:
Code:
bacula-sd_1# echo 'status client' | /usr/pbi/bacula-sd-amd64/sbin/bconsole -c /usr/pbi/bacula-sd-amd64/etc/bconsole.conf
Connecting to Director localhost:9101
1000 OK: bacula-dir Version: 5.2.12 (12 September 2012)
Enter a period to cancel a command.
status client
Automatically selected Client: bacula-fd
Connecting to Client bacula-fd at localhost:9102
bacula-fd Version: 5.2.12 (12 September 2012) amd64-portbld-freebsd9 freebsd 9-STABLE-p5
Daemon started 02-Sep-15 22:51. Jobs: run=7 running=0.
Heap: heap=0 smbytes=391,666 max_bytes=393,588 bufs=129 max_bufs=131
Sizeof: boffset_t=8 size_t=8 debug=0 trace=0
Running Jobs:
JobId 11 Job FullBackupClient1.2015-09-03_02.15.21_03 is running.
Full Backup Job started: 03-Sep-15 02:15
Files=3,019 Bytes=2,702,750,366,546 Bytes/sec=73,962,847 Errors=0
Files Examined=3,019
Processing file: /mnt/media/video/transcoded/tv_shows/Star Trek The Next Generation/Season 06/Star Trek The Next Generation - S06E26 - Descent (1).mkv
SDReadSeqNo=5 fd=5
Director connected at: 03-Sep-15 12:24
And the device status portion:
Code:
Device status:
Autochanger "Superloader3" with devices:
"lto6autochanger" (/dev/sa0)
Device "lto6autochanger" (/dev/sa0) is mounted with:
Volume: NIA327L6
Pool: Default
Media type: LTO-6
Slot 2 is loaded in drive 0.
Total Bytes=202,375,885,824 Blocks=3,137,026 Bytes/block=64,512
Positioned at File=202 Block=6,027
====
Used Volume status:
NIA327L6 on device "lto6autochanger" (/dev/sa0)
Reader=0 writers=1 devres=0 volinuse=1
====
The transition from the tape in slot 1 to the tape in slot 2 was automatically handled by bacula and, ultimately, mtx. Since this is already compressed video data, I was expecting to only get the native 2.5TB/tape. And, thus far, that's what it's looking like from tape 1.
Code:
Connecting to Director localhost:9101
1000 OK: bacula-dir Version: 5.2.12 (12 September 2012)
Enter a period to cancel a command.
list media
Automatically selected Catalog: MyCatalog
Using Catalog "MyCatalog"
Pool: Default
+---------+------------+-----------+---------+-------------------+----------+--------------+---------+------+-----------+-----------+---------------------+
| mediaid | volumename | volstatus | enabled | volbytes | volfiles | volretention | recycle | slot | inchanger | mediatype | lastwritten |
+---------+------------+-----------+---------+-------------------+----------+--------------+---------+------+-----------+-----------+---------------------+
| 2 | NIA326L6 | Full | 1 | 2,524,203,085,824 | 2,525 | 31,536,000 | 1 | 1 | 1 | LTO-6 | 2015-09-03 11:41:03 |
| 3 | NIA327L6 | Append | 1 | 226,985,472,000 | 227 | 31,536,000 | 1 | 2 | 1 | LTO-6 | 2015-09-03 12:33:52 |
| 4 | NIA320L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 3 | 1 | LTO-6 | |
| 5 | NIA321L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 4 | 1 | LTO-6 | |
| 6 | NIA322L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 5 | 1 | LTO-6 | |
| 7 | NIA323L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 6 | 1 | LTO-6 | |
| 8 | NIA324L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 7 | 1 | LTO-6 | |
| 9 | NIA325L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 8 | 1 | LTO-6 | |
| 10 | NIA328L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 10 | 1 | LTO-6 | |
| 11 | NIA329L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 11 | 1 | LTO-6 | |
| 12 | NIA330L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 12 | 1 | LTO-6 | |
| 13 | NIA331L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 13 | 1 | LTO-6 | |
| 14 | NIA332L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 14 | 1 | LTO-6 | |
| 15 | NIA333L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 15 | 1 | LTO-6 | |
| 16 | NIA334L6 | Append | 1 | 64,512 | 0 | 31,536,000 | 1 | 16 | 1 | LTO-6 | |
+---------+------------+-----------+---------+-------------------+----------+--------------+---------+------+-----------+-----------+---------------------+
Slot 9 is not listed as that is the slot that contains the cleaning tape.
The thing that almost defeated me was a failure with getting postgres working. It fails to start due to an inability to get shared memory. After quite a bit of searching it was clear that these needed to be set.
Code:
security.jail.sysvipc_allowed=1
security.jail.param.allow.sysvipc=1
The _where_ is the kicker. It seems obvious they need to be set on the FreeNAS host machine. I manually attempted to set both but that did not affect the jail, even after a restart. And param.allow didn't even work. Setting it to 1 just returned
the parameter as 0 -> 0. So I don't know what it is that prevents root from being able to mod that. Various postings indicated they should be in the obvious /etc/sysctl.conf, other indicated there _and_ /boot/loader.conf, and then at least one mentioned
Code:
jail_sysvipc_allow="YES"
in /etc/rc.config. And, indeed, looking at /etc/rc.d/jail, _that_ appears to be the actual place. I ended up 'shotgunning it' as that was the order I had found things. I have yet to remove them everywhere else as of yet.
This,
Code:
jail -m jid=8 allow.sysvipc=1
, also works. (my jail id is 8 ymmv)
Only one 'minor' issue remains for me. If I start the console when there is no tape in the drive it punts with a device not configured error. I have tried various permutations of Always Open/AutoMount booleans in the config(s) but those don't appear to matter. Clearly bacula/mtx
are able to change the tapes appropriately. Even
worked w/out issue, even before I knew about and added the Cleaning Prefix attribute and it attempted to label the cleaning tape. It emitted a reasonable error and moved on. I'm not sure how to configure it to be ok w/the drive being empty and just know to go ahead and load a tape. This is minor enough that I still consider this a fully working solution. And I'm not sure if this would prevent a scheduled job from just working (auto loading an appendable tape) or if it's just a bconsole issue. I guess I'll see at the next incremental.
I may attempt to update to version 7 of bacula at some point since pkg is working. There are some minor, to me, new features so I'm not in a hurry currently. Maybe after I get some backups, and a few more restores, done.
Thanks again!
Greetings halite, I believe this should not change much when using 9.3.
However, pay attention at two big changes in this ecosystem, FreeNAS 10 is coming out (is there a date?) and Bacula has just released a new version which (in theory) has support for ZFS filesystems (which would be a big plus in our case).
I have yet to see how that thing works on the new one.
Nonetheless the current bacula plugin could use some love (there was once an issue with the interface that was solved so there is a user base, even if small), I would not be too surprised if the plugin gets some love once the new versions are out for a while. Can only speak for myself, for many times considered solving some of the configuration woes of the bacula-sd plugin, but knowing that v10 is coming soon I will not do it until then.
Out of curiosity, how much are these IBM recorders costing now? I had never considered USB for this, but if the cost is fine... Anyway, you always have the alternative of getting a board with SAS connector and jump the need for a USB tape drive (which I am sure you considered).
Our setup here works flawlessly (we did a restore already, so yes, it works IRL), although I am cautious about the latest FreeNAS upgrades since there was an issue on some machines with some plugins (which seem to be solved now, so you should be OK).
tl;dr: Bacula works with FreeNAS and tape recorders *if* your tape recorder is properly detected by the kernel (run the bacula tests to be sure everything is working A-OK). It might seem complicated to setup but it is not (really), and once it is running you don't need to change anything.
In your case, since you can fallback to another alternative you shouldn't be too worried. I can assure you that this HP model works fine, no idea about the IBM one.