What do you want in a custom unRAID package (BubbaRaid)


Recommended Posts

My (not very limited) experience says that when software A, consistently works (along with everything else in the past) and new software B consistently doesn't, then it's software B.

 

Not always... you can have a piece of hardware with problems or multi-vector compatibility issues that are only exposed with software B.

Link to comment
  • Replies 929
  • Created
  • Last Reply

Top Posters In This Topic

I got BubbaRaid up and running and it appears to work fine for me.  I'm using the latest version.  Now for a couple questions.

 

I need to enable rsync.  I use this to perform my offsite backups.  How is the best way to integrate this into bubbaraid and not have it wiped out everytime I upgrade?

 

What I have running now is:

 

go:

 

# Enable rsync for backups

cp /boot/config/secrets /etc/rsyncd.secrets

chmod 400 /etc/rsyncd.secrets

rsync --daemon --config=/boot/config/rsyncd.conf

 

 

rsync is already in UnRAid so all you need is the password and conf. files.  Any reason why I can't just do the same thing for bubbaraid?  I guess if I were really ambitious I could build a web page to support the two file, but for now I"m hoping this will work OK.

 

thanks,

dave

Link to comment

I got BubbaRaid up and running and it appears to work fine for me.  I'm using the latest version.  Now for a couple questions.

 

I need to enable rsync.  I use this to perform my offsite backups.  How is the best way to integrate this into bubbaraid and not have it wiped out everytime I upgrade?

 

What I have running now is:

 

go:

 

# Enable rsync for backups

cp /boot/config/secrets /etc/rsyncd.secrets

chmod 400 /etc/rsyncd.secrets

rsync --daemon --config=/boot/config/rsyncd.conf

 

 

rsync is already in UnRAid so all you need is the password and conf. files.  Any reason why I can't just do the same thing for bubbaraid?  I guess if I were really ambitious I could build a web page to support the two file, but for now I"m hoping this will work OK.

 

thanks,

dave

 

Houston we have a problem!  It worked fine on my test box, but when I booted it up on my UnRaid box, it cannot find ide0 or id1 so I'm missing several HDD including my parity drive.

 

When I look at the syslog I don't see ide0 or id1 even mentioned.  I've not rebooted into 4.4.2 and it works fine, though parity is being rebuilt right now.

 

Ideas?

 

thanks,

dave

Link to comment

True. Which again points us there. What is different in software B that touches the hardware.

 

If BubbaQ does not mind, perhaps a fresh set of eyes might spot a clue when comparing the 2 syslogs?  Do you mind making them available one more time, one with and one without BubbaRAID?

Link to comment

of course!

 

Here are some files (forum doesn't allow me to upload)...

 

1) http://www.ilogic.gr/various/log.zip is from my working system

 

2) http://www.ilogic.gr/various/MESSED-LOGS.zip is from my messed up system...

BTW my UNRAID was enumerated as sde1, so I didn't get an sdf (should there be any device after the stick?).

I have 3 IDE disks and 6 SATA all working perfectly in unRAID (also include disk.cfg in zip AND a screenshot of how unRAID "sees" those disks).

 

3) http://www.ilogic.gr/various/output.zip is /usr/local/sbin

 

4) http://www.ilogic.gr/various/user.conf.php is my wtorrent config file

 

I didn't touch the permission of any folder...

 

For rtorrent and wtorrent:

 

drwxrwxrwx  7 root root 16384 Jan  1  1970 boot/

---

drwxrwxrwx 15 root root    32768 Feb  9 21:54 bubba/

---

drwxrwxrwx  2 root root 32768 Feb  9 21:38 rtorrent/ drwxrwxrwx 11 root root 32768 Feb  8 19:05 wtorrent/ (plus same permissions for everything in directory wtorrent as I already told you)

 

For torrent destination:

 

drwxr-xr-x  12 root root    0 Feb 10 09:15 mnt/

---

drwxr-xr-x 15 root root 352 Jan 14 22:23 disk7/

---

drwxrwxrwx 13 root root  544 Feb 12 20:34 P2P/

 

...you see they are ok (/mnt and /mnt/disk7 are default as set by unRAID).

 

...there you are... thanks!

 

Link to comment

NLS, you have multiple problems.  Please give up on the wtorrent issue.  If the wTorrent people don't see fit to fix it, there isn't anything I can do. Repeatedly bringing up the wTorrent issue just clouds the water.

 

I compared your syslogs some time ago.  Your hardware problem is with the USB subsystem.  Something is not being properly initialized, and appears to be hanging long enough that it is not ready when the call to mount the flash by volume name is made, but it then does finish initing later, so you can mount the flash by hand.  But by that time, too many other things have failed due to the faile mount of the flash as listed in fstab.

Link to comment

I can't help with the torrent stuff at all.  And if there is any confusion between my analysis and that of BubbaQ, then I defer to his experience.  I would however like to present my own analysis of what I saw in the comparison of syslogs.

 

I don't have good news, as I can see the serious event that precipitated all of the subsequent failures, and I can roughly explain why most of the drives and networking are either not visible or not working, but I can't explain why it happened or what to do to fix it, although I do have a possible theory below.  The problem is that an interrupt was raised on IRQ 18, and nobody claimed it ("kernel: irq 18: nobody cared"), so after its attempt to debug it and display a short execution trace, it then disables IRQ 18 ("kernel: Disabling IRQ #18"), which is disastrous.  IRQ 18 had been assigned to that entire controller, so none of the 3 IDE drives connected are able to finish their setup, and a long series of exceptions, timeouts, and resets begin, which appear to hang the machine too long for anything else to initialize.  IRQ 18 was also assigned to the networking, so that would not have worked either, if it had been able to progress that far.  IRQ 18 was also one of the IRQ's assigned to *some* of the USB support, but not apparently to the ports used by your flash drive or the USB keyboard and mouse.  So the flash drive was setup fine as sde, but the rest of the 'life' of this computer was just involved in the setup of the 3 IDE drives (sdf, sdg, and sdh), and after many minutes, it *did* get them partly setup and assigned, but not usable, and too late for anything else.

 

There is one more thing that looks wrong to me, and that leads me to a wild theory, but I could be far off the mark.  Both syslogs have a very similar setup until after the Promise card, which is the first drive controller they come to.  At this point, they begin to work on the IDE controller with 3 IDE drives attached.  The stock unRAID kernel uses the piix driver to handle it, without issue.  The BubbaRAID kernel uses ata_piix instead, and gets as far as identifying the 2 IDE drives on the primary channel and configuring them for UDMA/100, when the 'unclaimed' IRQ 18 occurs, and almost everything goes wrong from that point on.  It never gets to the last drive controller, with SATA drives in an IDE emulation mode that do need the ata_piix driver.

 

I'm not an expert in this, but in my experience the piix driver is supposed to handle true IDE drives, and the ata_piix driver handles SATA drives pretending to be IDE drives, but not true IDE drives.  That is, it handles SATA drives on a motherboard with BIOS settings in IDE emulation mode.  So it looks to me as if the stock kernel is configured correctly, to assign piix to these IDE drives, and the BubbaRAID kernel for unknown reasons assigns the wrong driver ata_piix, which perhaps is what causes their drive support to collapse.

 

My wild theory?  SATA drives and IDE drives talk a different language, a different protocol.  (That's why you can't add NCQ support to PATA drives.)  So I wonder if the first IDE drive sdf made its first communication, by raising IRQ 18, and ata_piix in effect said "that's IDE talk, not SATA talk, so that's not for me", and passed on it, leaving the IRQ unhandled.

 

As to why NLS is the only one affected, this is just my own idea so could be wrong, but I can't help thinking that users that are more technically advanced to use BubbaRAID, seem more likely to me to have more modern equipment, less likely to try to use this with older IDE drives that need the piix driver.  Just a guess, with very little data behind it...

Link to comment

Thanks Joe.  I saw the piix issue, but it doesn't seem to me to be the *cause* but just a symptom.  I just grepped for piix in both the BubbaRaid .config and the stock unRAID .config.

 

The stock unRAID .config, has the following:

===============================

CONFIG_BLK_DEV_PIIX=m

CONFIG_ATA_PIIX=m

# CONFIG_PATA_MPIIX is not set

# CONFIG_PATA_OLDPIIX is not set

 

 

The BubbaRaid .config uses:

============================

CONFIG_BLK_DEV_PIIX=m

CONFIG_ATA_PIIX=m

# CONFIG_PATA_MPIIX is not set

# CONFIG_PATA_OLDPIIX is not set

 

My current theory is something on the SMBus.... but it is hard to debug that w/o the machine in front of me.  BubbaRaid enables sensors on the SMBus for hw monitoring, but those are all enabled in 0.18 (which works for NLS) and nothing there has changed.

 

I'm building a new kernel for NLS tonight, and will see what happens.

Link to comment

A lot of technical stuff

 

RobJ and bubbaQ, you guys are brilliant.  RobJ's explanation pretty much made sense to me, and while i do not consider myself dumb it was very well explained.  I would never have been able to deduce that stuff form his syslogs (and i even downloaded them to take a look).

 

The only other thing i have a question about is this.  I have been looking around at the config files in BubbaRaid and I see that most if not all of the stuff required to get this running is already there.  I am not sure how to proceed any further then that, without possibly screwing something up.  I have no idea how tightly wtorrent is tied to rtorrent and how exactly they communicate.

 

For now i have reverted to .21 and wtorrent is working again.  I will probably try to upgrade to the latest version again this weekend and see how it goes.  I am running a set of preclears on some new data disks i am adding to the array, so i don't/can't take it offline.

Link to comment

So could the reason NLS is not getting his IDE drives initialized be related to my problem of not getting the ide drives initialize?  I don't see time outs or anything, but I do not ever get the ide0 nor ide1 controllers discovered with bubbaraid.  2 and 3 come in fine. . .

 

My hardware is the orignal MB, promise ide cards.

 

thanks,

dave

Link to comment

I'm also going to do a compare of the modules from stock to Bubba, and see if something is being built differently (other than version magic).

 

But as Joe pointed out, the difference is at the Promise ctrlr load.  But I both ata_piix and piix are needed for a system with both SATA and ATA drives -- so I can't just remove the ata_piix module.  Plus, they both exist as modules in stock, so they obviously can live together.  Something *else* is causing the Promise card to be handled by ata_piix instead of piix.  That's when it starts cascading.

Link to comment

I just compared my stock unraid 4.4.2 syslog with bubbaraid syslog.  I see them diverge at line 400 when in stock unraid it finds ide0 and ide1, with the piix driver, while bubbaraid uses the ata_piix driver and calls them ata1 and ata2.  These are the two ide interfaces on the motherboard.

 

bubbaraid:

Feb 18 13:29:04 Tower kernel: ata_piix 0000:00:1f.1: version 2.12

Feb 18 13:29:04 Tower kernel: ata_piix 0000:00:1f.1: enabling device (0005 -> 0007)

Feb 18 13:29:04 Tower kernel: ata_piix 0000:00:1f.1: PCI INT A -> GSI 18 (level, low) -> IRQ 18

Feb 18 13:29:04 Tower kernel: ata_piix 0000:00:1f.1: setting latency timer to 64

Feb 18 13:29:04 Tower kernel: scsi1 : ata_piix

Feb 18 13:29:04 Tower kernel: scsi2 : ata_piix

Feb 18 13:29:04 Tower kernel: ata1: PATA max UDMA/100 cmd 0x1f0 ctl 0x3f6 bmdma 0xffa0 irq 14

Feb 18 13:29:04 Tower kernel: ata2: PATA max UDMA/100 cmd 0x170 ctl 0x376 bmdma 0xffa8 irq 15

Feb 18 13:29:04 Tower kernel: ata1.00: ATA-6: WDC WD3200JB-22KFA0, 08.05J08, max UDMA/100

Feb 18 13:29:04 Tower kernel: ata1.00: 625142448 sectors, multi 16: LBA48

Feb 18 13:29:04 Tower kernel: ata1.00: configured for UDMA/100

Feb 18 13:29:04 Tower kernel: ata2.00: ATA-6: ST3120026A, 8.01, max UDMA/100

Feb 18 13:29:04 Tower kernel: ata2.00: 234441648 sectors, multi 16: LBA48

Feb 18 13:29:04 Tower kernel: ata2.01: ATA-7: ST3250620A, 3.AAF, max UDMA/100

Feb 18 13:29:04 Tower kernel: ata2.01: 488397168 sectors, multi 16: LBA48

Feb 18 13:29:04 Tower kernel: ata2.00: configured for UDMA/100

Feb 18 13:29:04 Tower kernel: ata2.01: configured for UDMA/100

Feb 18 13:29:04 Tower kernel: scsi 1:0:0:0: Direct-Access    ATA      WDC WD3200JB-22K 08.0 PQ: 0 ANSI: 5

 

 

stock UnRaid:

Feb 17 12:19:30 Tower kernel: piix 0000:00:1f.1: IDE controller (0x8086:0x24db rev 0x02)

Feb 17 12:19:30 Tower kernel: PIIX_IDE 0000:00:1f.1: enabling device (0005 -> 0007)

Feb 17 12:19:30 Tower kernel: PIIX_IDE 0000:00:1f.1: PCI INT A -> GSI 18 (level, low) -> IRQ 18

Feb 17 12:19:30 Tower kernel: piix 0000:00:1f.1: not 100%% native mode: will probe irqs later

Feb 17 12:19:30 Tower kernel:    ide0: BM-DMA at 0xffa0-0xffa7

Feb 17 12:19:30 Tower kernel:    ide1: BM-DMA at 0xffa8-0xffaf

Feb 17 12:19:30 Tower kernel: Probing IDE interface ide0...

Feb 17 12:19:30 Tower kernel: hda: WDC WD3200JB-22KFA0, ATA DISK drive

Feb 17 12:19:30 Tower kernel: hda: host max PIO4 wanted PIO255(auto-tune) selected PIO4

Feb 17 12:19:30 Tower kernel: hda: UDMA/100 mode selected

Feb 17 12:19:30 Tower kernel: Probing IDE interface ide1...

Feb 17 12:19:30 Tower kernel: hdc: ST3120026A, ATA DISK drive

Feb 17 12:19:30 Tower kernel: hdd: ST3250620A, ATA DISK drive

Feb 17 12:19:30 Tower kernel: hdc: host max PIO4 wanted PIO255(auto-tune) selected PIO4

Feb 17 12:19:30 Tower kernel: hdc: UDMA/100 mode selected

Feb 17 12:19:30 Tower kernel: hdd: host max PIO4 wanted PIO255(auto-tune) selected PIO4

Feb 17 12:19:30 Tower kernel: hdd: UDMA/100 mode selected

Feb 17 12:19:30 Tower kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14

Feb 17 12:19:30 Tower kernel: ide1 at 0x170-0x177,0x376 on irq 15

 

After this it continues booting and the array does not start because it is missing three drives.

 

Hope this helps a little,

dave

Link to comment

First a big thanks to BubbaQ and the rest of the people on this thread/forum.

 

I thought I would post some of my experiences installing and

configuring BubbaRaid since it was a little hard to find out how to get a

few things working.

I already had a basic version of unraid running, so adding bubbaraid

by unzipping and running the enable_bubba.bat in a windows shell was

pretty straight forward.

 

It booted up immediately and I could access the portal.

 

First slimserver:

installing via the provided link was also pretty painless. Is that bug

in 7.3.1 fixed yet? Has anyone tried the latest versions(7.4..)?

SqueezeCenter is at http://192.168.0.100:9000/

(substitute your UnRaid's IP)

SoftSqueeze is at: http://192.168.0.100:9000/html/softsqueeze/webstart.html

 

The first problem was that Squeezecenter could not see all of my

directories and files.

I need to chmod all the directories to world read+executable (chmod

755) and all the files to world readable (chmod 644)

To do this you can use something like this after logging into your box:

 

#change all directories and subdirectories in current path:

find . -type d -exec chmod 755 {} \;

#change all files in current and sub directories

find . -type f -exec chmod 644 {} \;

 

-exec works better than | xargs if you have spaces in file or directory names

 

To set newly created files, you have to modify the samba configuration

by using the go script:

 

For some reason this didn't work in the go script(/boot/configs is

where I keep my custom configs):

 

echo "Setting Share Permissions"

cp /boot/configs/smb.shares /etc/samba

smbcontrol smbd reload-config

 

But this did(got it from another thread):

 

#Try reseting samba again

#define USER_SCRIPT_LABEL Set SAMBA File Permissions

#define USER_SCRIPT_DESCR Sets SAMBA file permissions to 0644 and

directory permissions to 0755

echo "<pre>"

set -xv

sed -i -e "s/create mask = 0711/create mask = 0644/" /etc/samba/smb.shares

sed -i -e "s/directory mask = 0711/directory mask = 0755/" /etc/samba/smb.shares

 

smbcontrol smbd reload-config

 

 

As for SoftSqueeze, I had a problem where my browser's connection was

incorrectly set to look for a proxy or auto detect. This resulted in a

security exception unknown protocol socket message from java.

To fix this I set the connection to no-proxy in mozilla since by

default java looks at the default browser's config, you can also do

this in the java control panel.

 

For some custom bash environment settings and aliases, I added to the go script:

 

echo "Copying bashrc files"

cp /boot/configs/.bash_profile /root

 

For the Powerdown script:

(downloaded from http://code.google.com/p/unraid-powercontrol/ )

 

echo "Installing Powerdown packages"

CTRLALTDEL=YES SYSLOG=YES STATUS=YES START=YES installpkg

/boot/packages/powerdown-1.02-noarch-unRAID.tgz

 

For lm_sensors:

Run sensors-detect to detect any supported chips, then I added:

 

echo "Starting lm_sensors"

cp /boot/configs/lm_sensors /etc/sysconfig

modprobe w83627ehf

sensors -s

 

Actually I'm not sure if I need the sysconfig line.

 

For apcupsd:

I have a cyberpowersystems UPS, but I only had to modify these lines

with the web interface to the apcupsd configuration file:

 

UPSNAME CyberPower

UPSCABLE usb

UPSTYPE

DEVICE

 

Now for some questions:

 

I tried running s2ram -n and it could not detect my system, but s2ram

-f seemed to work. It would go into low power and I could WOL.

 

Now how can I configure it to power down after a set amount of time?

Can I add a configuration setting/button to the Portal to set this? Maybe it

can look at the disk spindown time and be X minutes after the last disk

spins down.

 

What kind of housekeeping needs to be done before and after calling

s2ram? I'm assuming it'd be prudent to close all the files and maybe

stop a few things then resume them after waking. I don't know what

would happen if the system was in s3 and a power outage happened,

would apcupsd still shut it down cleanly?

 

Thanks again!

Link to comment
The first problem was that Squeezecenter could not see all of my

directories and files.

 

Yup.  BubbaRaid has no idea where your media files are.... and SS needs the permissions on those files to be world readable.

 

Has anyone tried the latest versions(7.4..)?

 

It's broke.  Don't use it.

 

I don't know what would happen if the system was in s3 and a power outage happened

 

If you don't have a UPS, the system loses power and will reboot when powered back up.

 

would apcupsd still shut it down cleanly?

 

Nope.

 

I'm not intending to hook s2ram into the BubbaRaid interface.... too much danger.  I added so people can experiment with it.  You'll have to handle the housekeeping and the timing yourself.

 

I would spin up all drives and sync at a MINIMUM.  Also, in S3 sleep mode, the system only pulls a couple of Watts, so even a small a UPS can last for many hours.

Link to comment

...btw I tried your latest internal beta and is no go for me again.

 

I think RobJ and lovingHDTV may have a point since it's clear to me that something doesn't go ok with the drives. Not ONE drive (where it could be the USB stick) but more than one drives from "ATA4" and on...

 

I remind again: My setup is not TOO old (even though using 3 IDE disks because I happened to have them), uses only stock mobo (no extra cards) which is a very eponymous (and once very high-end) Asus P4C800-E Deluxe with AFAIK the latest available firmware. Note also that no version before 0.01 had problems (and now that I reverted to .21 again, it works fine), all unRAID (well not all... I had to use irqpoll a couple of versions back) and Windows (XP, Server 2003 and Vista) were working fine on it (until it got "support" duty with unRAID).

 

 

Link to comment

 

I would spin up all drives and sync at a MINIMUM.  Also, in S3 sleep mode, the system only pulls a couple of Watts, so even a small a UPS can last for many hours.

 

Would it be possible to post a short shell script that does this?

 

In fact how can I find out the command line equivalents of stop / start / spin up / spin down buttons on the Unraid main page?

 

Thanks.

Link to comment

First, bubbaq, thanks a ton for all the hard work you have put into bubbaraid!

 

Second, now that I have greased the wheels...  a couple questions.  First, I downloaded and installed the latest (0.01.02-Beta) and ran the script to enable bubbariad.  Rebooted everything and everything came up as expected.  Very happy...  Now, I try to configure unraid_notify and have it send a test email and I get errors:

 

/usr/bin/unraid_notify: line 327: [: 27: unary operator expected

/usr/bin/unraid_notify: line 327: [: 26: unary operator expected

/usr/bin/unraid_notify: line 388: [: 481: unary operator expected

/usr/bin/unraid_notify: line 396: [: 1: unary operator expected

 

So, I figure I will telnet into the box and look at the unraid_notify script.  Well, short story, I can't because my go script has been modified and it isn't installing my packages on startup anymore.  So, I was able to add the appropriate lines back into the bubbaraid go script and reboot and all my packages get installed.  So, is this the right way to control mods to the go script?  Should I track everything that I do so that if I make a mod into one version, then I will have to reimplement those changes into the other version (i.e. with or without bubbaraid)?  What about upgrades to bubbaraid?  Will upgrading cause me to have to make those changes again?

 

Next, what about those errors I am getting?  I looked at the offending lines and they seem pretty harmless.  I'm not sure how they could be causing a problem (although, I have to admit, I don't even know what language that script is written in, much less know for sure if the syntax is correct).  Here is line 396:

 

if [ $iMinSinceLastSend -ge $iNotifyDelay ]

 

I'm guessing that there is a problem somewhere else manifesting itself at the reported line numbers.  Any ideas anyone?

 

Thanks in advance for any help,

Chris

Link to comment

Also, another question about configuring the 'unraid_notify' script.  What are appropriate values for the wait between status checks and the spindown time.  I'm not sure what the mechanism for checking the drives and then spinning them down is, so I don't want to use a setting that causes this checking mechanism to keep spinning up the drives to test them and then not allow then to spin down.  I'm sure that there probably isn't any 'right' answer, but there may be 'wrong' answers, and I don't want to ignorantly set them to the wrong values.

 

Thanks,

Chris

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.