Jump to content

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

930 posts in this topic Last Reply

Recommended Posts

You don't have to touch the syslinux.cfg,


You are missing the point... I *want* to touch it... in order to have a multiboot option (1) stock unRAID, 2) previous BubbaRAID, 3) current BubbaRAID).


Plus, some people will have some unique modules and libs that they will ADD to the supplemental library on the flash.... if it was a packed image it would be a pain.  I also don't want to mount anything... again, I want it to be as close to stock, interms of layout, filesystems, mounts, and files, as possible.


I don't want an extra layer of complication.... unless some size constraint dictates otherwise, only native files will be on the flash, and they will be symlinked from the initramfs.  The symlinks will be in their default locations, so if some other program looks for them, they will find them.... and if they modify them, they will be persistent.

Share this post

Link to post

You don't have to touch the syslinux.cfg,


You are missing the point... I *want* to touch it... in order to have a multiboot option (1) stock unRAID, 2) previous BubbaRAID, 3) current BubbaRAID).


I'm aware of that, however there was reference earlier about difficulty in patching if a supplementary image was used.

I was only presenting possibilities to get around having an initramfs larger then desirable.

OK, I'll stop adding suggestions.


>> only native files will be on the flash, and they will be symlinked from the initramfs.


Actually this is what I did when I purchased the gigabyte I-RAM drive.

I've just found the flash to be a lil less reliable then I desire.

I've had 4 different machines with 4 different flash's go offline at various times.

Share this post

Link to post

If a flash pukes, it will affect an image the same as native files, so that makes no difference.  Since an I-RAM or other persistent storage device is not stock equip, the flash is the only place to put it.


Plus by maintaining things with symlinks, the system will function as close as possible to stock, so other mods, such as already described in other posts, will work.

Share this post

Link to post

and other apps I currently run on my linux based NAS device (thecus 5200).


What other apps?


BTW, I think there may be a way to get unRAID running on the Thecus!   ;D


Well right now I only run Slimserver and a DDNS client... but I am planning a infrastructure redesign based on a file server upgrade.


Thinking of replacing my current HTPC with a PopCorn Hour and this would probably require a server side app, that I know can run on linux. 


I then can port my HTPC to a unraid/linux box, I really would hope to not have both a file and app server, trying to slim down my PCs in the house. lol


As for running unraid on a thecus NAS, that would be cool and all but I am looking to expand my files server beyond 5 drives.  I have almost filled my 5 750gb RAID5!!!


I am not saying I am a complete computer bone-head, just a windows centric geek.  So a slackware/unraid "package"/distro would be a good starting point for someone like me to get my feet wet with linux.

Share this post

Link to post

You can put a hard drive in the PCH and it will do what you need.... torrents, nzb downloading, media browsing app, etc., and serve up files from unRAID via Samba shares.

Share this post

Link to post

Also, the popcorn hour B-110 is an ITX version that can handle 2 SATA drives and 1 IDE device.

From what I'm reading it can get files via SMB and NFS and also serve files like a low duty NAS


I'll know more in about two weeks as I ordered one a couple weeks ago.


Share this post

Link to post

True the popcorn hour can be a stand alone device but there are server side apps like llink and myihome which improve the GUI and provide functions like movie info etc.   The popcorn hour by itself could not replace my htpc but with these server side apps it could be possible.


I know llink is linux, don't know about myihome... heard it has some serious limitations.


I just wanted to let you know bubba that there would be some interest in a slackware/unraid distro...  If the time arrives I probably will dive into your instructions and see what I can cut my teeth on...

Share this post

Link to post

That is great! I did not notice that... but then I am back to slimserver still requiring something to run on...  I suppose I could keep the thecus still running the slimserver, but then I couldn't sell it to fund part of the unraid upgrade :-\

Share this post

Link to post

Since BubbaRaid will have a web server w/ php, you can count on it also having a media server like Slimserver, Open ShowCenter, OxylBox, etc.

Share this post

Link to post

I have a preference for applications that are accessible via HTTP (like NZBGet) and plan to incorporate them into BubbaRaid.  Each application will have their "home" off the http document root.  I'm writing PHP interfaces to some others.




1) Would it be better to move emhttp to a differnet port than 80, and run the web server on port 80, or leave emhttp on port 80 and run the web server on something else?  What port should be used for the alternate? I usually use either 90 (PointCast) or 88 (kerberos) since they will rarely step on anything else.


The home page for the web server will be a framed interface to all the applications (NZBget, torrents, unmenu, BubbaDashboard, etc.) including the standard emhttp.... so it will be easy for a novice to find everything.... so moving emhttp to a different port seems the best way to go.  I can code-bracket the go script to load emhttp on its standard port when booting stock unRAID, and on a different port when booting BubbaRaid.


The kernel config will append "(Bubba-xxxxx)"  (xxxx being the BubbaRaid release number) after the kernel ID so if a script needs to code bracket, they can do it with uname -r


Two DOS batch files will be added to the root of the flash:  disable_bubba.bat, and enable_bubba.bat.  There will also be similar shell scripts so you can switch from BubbaRaid to stock unRAID from inside Linux, and not have to hook up a kbd and monitor to the server to select a different syslinux option.


All except for the two DOS batch files, of the BubbaRaid files will live under a /bubba hierarchy in the flash.


The only stock unraid flash files to be touched will be the go script, and the syslinux config.



Share this post

Link to post

1) Would it be better to move emhttp to a differnet port than 80, and run the web server on port 80, or leave emhttp on port 80 and run the web server on something else?  What port should be used for the alternate? I usually use either 90 (PointCast) or 88 (kerberos) since they will rarely step on anything else.


I like the idea of running emhttp on a different port if apache or lighttpd is present.

I was going to do this myself and use a proxy or redirect to bounce the user to the correct emhttp port.



From what I've seen and some of my experimentation, it's also possible to use /proc/cmdline with options passed from the syslinux.cfg line that can control and/or present emhttp on a different port.


For example, my syslinux.cfg has the following sections.


label unRAID OS DEV
  menu default
  kernel bzimaged
  append initrd=bzrootd rootdelay=10 noexecgo debug 


My GO script has the following sections

# ------------------------------------------- #
# If noexeco is in syslink.cfg exit 
# before starting other programs
# ------------------------------------------- #
if grep -wq noexecgo /proc/cmdline
   then exit

/usr/local/sbin/emhttp &
fromdos < /boot/custom/etc/rc.d/init.d/rc.local_startup | sh


I've seem code where people use VAR=VALUE in the syslinux.cfg file then have code in the startup that takes apart the var=value and operates on it.

Share this post

Link to post

Yes, Ive done similar things with command line vars, but that requires an extra step.... someone messes up the config and the system boots, but is broken.  Since the go script runs after the system is up, it is more reliable to code-bracket on something more reliable, such as uname.

Share this post

Link to post

The first incarnation of BubbaRaid is ready for download.


To install it:


  - unzip it to your unRAID flash

  - in Windows, run the “enable_bubba” batch file from the root of the flash


Then boot the flash normally.... you should see a new boot menu option “BubbaRaid” that is set as the default.


Note the initramfs is larger than stock unRAID, so it takes longer to boot.


You can undo BubbaRaid easily  - in Windows, run the “disable_bubba” batch file from the root of the flash.


Share this post

Link to post

The first incarnation of BubbaRaid is ready for download.




What is the feature set of this "first incarnation"? are there already any built in apps?

Share this post

Link to post



It has a web server running lighttpd

The configuration file is in /etc/lighttpd/lightppd.conf

The root for your web server documents is initially set to:  /var/www/htdocs


Because the document root is on the ramdisk, changes will be lost when you reboot. You should consider changing the lighttpd configuration file to use a location on the array for your web documents.


Php is installed and enabled for cgi in the web server.


NZBGet daemon is installed, along with the web interface to NZBGet. Be sure to edit BOTH the config files to change the location for NZBGet's files (initially set to /tmp/nzbget). You also have to put your news server login info into the nzbget.conf.


Here is a list of packages that are installed in this version of BubbaRaid:























Some of the kernel modifications in this version of BubbaRaid are:


Local version string .-Bubba. added

SysV IPC enabled

Suspend to RAM support enabled (actually, it was already enabled iu unRAID 4.3.3)

Hardware monitoring enabled and modules for several chips included

Sound card support module included

I2C support module included along with I2C device support and I2C Hardware Bus Support

PC Speaker module included (pcspkr)

EX3 file system module included

CPU Frequency Scaling enabled, and all governor modules included


The linux config file for BubbaRaid is in /usr/src/linux

Share this post

Link to post

This first release is more of a proof of concept.  I am working on the next release, which includes Nano, bittorrent, UPS monitoring, and Slimserver.


I'm just waiting on a little feedback before I release the next version.

Share this post

Link to post

I am looking forward to testing this out.  Likely won't be able to until this weekend.


Thanks for including sound support!

Share this post

Link to post

bubaQ, which version of torrent client can You add?


I  love torrentflux (http://www.torrentflux.com/) because it is have web interface and exist add-on for simply add torrent from FireFox (from local shortcut menu. This add-on exist for MaxOS X too).

Share this post

Link to post

- torrent

- correctly configured ftpd (the uses user security correctly and is in correct home folder)



Share this post

Link to post



I rarely use torrents, and when I do so, I use the torrent server on the PCH.... so I am open to suggestions about a specific torrenting application to include.  I'll test torrentflux.com.


My only requirement is that it must have a web interface.  My preference is for something written in php or perl.




I have Slimserver working (I think, since I don't have the hardware that it talks to, I can't tell).  It is actually written all in Perl, so once I had a decent perl installation on BubbaRaid, it ran fine.


Nano and other editors:


Nanno is added, and I know people (me included) have affinity for their favorite editors, so I can add more... just waiting for suggestions.


I am also including the ability to edit text files on the server using just the browser.... this has been a BIT timesaver for me.




Sound support was enabled, but I did not include any specific sound-card drivers.  Since I don't do sound myself, I am seeking input as to what sound cards chips are common, and should be included.


Beep is also now installed, and the pcspkr driver will automatically load.



@NLS... I'll see about symlinking the vsftp config to the flash and creating a proper user for it to run as ... that should take care of it.




A number of application, such as SlimServer, are distributed as source code in languages such as perl, php, and python.  They also tend to be LARGE, and depend on user-content (such as your media collection).  Thus, they need to be installed on the array, and not on the flash.  To accommodate these, I'm calling them "Extras" and each one will have a custom install script that will install it for you, after prompting you for needed installation parameters.



Share this post

Link to post



Torrentflux is written in PHP and Python. Torrentflux have successfuly web interface. But torrentflux needed any SQL server for store queue of downloaded or/and seeded torrent files.




Support of internal PC speaker is sufficient. But BubbaRaid can support integrated codecs in chipsets on motherboard.  (I do not know why somebody can support "sound card" on server)




Today or tomorrow I can test BubbaRaid. I am curious for BubbaRaid.

Share this post

Link to post


There is Torrentflux-b4rt. It seems to be able to use SQLite, thereby lowering the dependency on an SQL Database.



What I like about this is the unified file transfer ability.


On other notes,


ctorrent is a minimal command line client capable in a pinch. It's relatively simple. It's not very large and can be statically compiled.

I would consider it a tool box command.


rtorrent is a very capable curses based client, with an SCGI interface.

This allows it to be a console application controlled by remote interface.

There are many.

Some of which use http/scgi and/or ssh (ntorrent)

wtorrent, rtgui, rTWi


So Along with lighthttpd, enabling SCGI, wtorrent can be an addon which would provide the browser interface.

If going this route I would suggest installing screen so that rtorrent can be kicked off in a virtual screen.


I've used this for months now and have beat the hell out of my server with it. 0.7.9 has been rock solid stable and a veritable workhorse.

Share this post

Link to post

I do not know why somebody can support "sound card" on server.


I use sound on a few of my servers along with Festival. They "speak" the condition of events as they occur.  ;D

Along with the use of a Roku Soundbridge, I get marquee alerts throughout my living space.

Probably more then what an unRAID server should do, but the possibility exists.



For those interested, the soundbridge interfaces with slimserver and the firefly server (mt-daapd)


Another use for sound on the server is with MPD. This is a remote music playing daemon capable of control via commandline or socket calls. There are many applications to control this remotely (pocket pc, php, command line etc, etc).

Share this post

Link to post

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.

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.