Minecraft Warden: Keep your FreeBSD10 Minecraft Server Up and Running

My friend Stephane Potvin had been running a Minecraft server but was stuck with some reliability issues. I did some work for the start-up scripts but that work was lost when the port maintainer (rightfully so) decided to take a step back and fix up the port. He did a great job in my opinion and left the “start-up” process to be figured out by users.

That said, there was still a gap left. The reality is that some of things in the older port used a .lck file and that made things great and portable since you could use whatever the heck you want to wrap the service and start it up, restart it, shut it down, etc.

Having said all of that, I present to you my MinecraftWarden to keep the Minecraft application running like it should! Here is a link to my gitlab repo: MinecraftWarden. The only caveats are that we haven’t tested it on his system since I need to bring him a Gigabit switch to connect the server onto his network.

Troubleshooting WordPress Attachments

Went to make a post this morning and found that I was getting a nice little error from WordPress, posted below:WPError

Sounds like a permissions issue I think. /me makes some coffee and proceeds to troubleshoot the root cause. Let us see what is in the wordpress directory and take a look at wp-content’s permission settings.

drwxr-xr-x   4 wordpress  wordpress      5 Feb  2 12:11 wp-content/

Okay so wordpress is the owner and group, the owner has full permissions and the group has read and execute permissions.

Let’s try this, root@Wordpress:/usr/local/www/apache24/data/wordpress # chmod 775 wp-content/, same error.

Let’s try root@Wordpress:/usr/local/www/apache24/data/wordpress # chmod 777 wp-content/, voila. Hrmm, I’d be shot if I left 777 and called it a day. Let me check to see what permissions were set when the file was successfully uploaded with 777 in-place.

-rw-rw-rw-  1 www  wheel  16896 Apr  8 08:45 AbarthSuspensionForm.xls, ah ha!

Reset the permissions to 755 and change ownership via: chown www: wp-content

Check our work:

drwxr-xr-x   4 www        wordpress      5 Apr  8 08:47 wp-content/



Automotive Suspension Design and Tuning

Years ago when I was studying Electrical Engineering at the University of Ottawa, I had the opportunity to dive into learning what makes your car go bouncy-bounce! (Or crash! and Bang!). I held a lead role for the proposal and research stages of designing a Formula SAE car for the purpose of competing against the Carleton Ravens team which by the way, is a very formidable and capable team that has both an IC powered car and an electric powered car!

One of the things I found when looking through the maths of suspension design was just how familiar all of the equations were to acoustics. When you look at a speaker and it’s physical characteristics, you look at things like Cms (suspension compliance), magnet force, surround excursion, damping factor and so on. A speaker is a really neat device btw and you should definitely look at it in detail.

I took on a personal project to develop some basic maths for the FIAT community, having noticed that there was a lot of guesswork and “try this, try that” going on. I knew from school and my acoustics design experience, that you can select a design target and direct your approach methodically without guessing.

It is without further ado, I bring you the v1.0 of the Fiat 500 Abarth suspension design spreadsheet! AbarthSuspensionForm The spreadsheet is directly inspired by the similar looking Fat Cat models on Fat Cat Motorsports’ website. The spreadsheet can be used to determine desired spring rates, target natural frequencies and oversteer/understeer characteristics. I’ll be posting a tutorial video to work through an example and posting that as soon as I can track down the time!


Details on the WordPress server ;)

Some details on my quaint little FreeNAS box. It has had a relatively simple life providing files over CIFS and NFS, but now it’s time to put her to work and see how far I can stretch it out! This wordpress site is running off of a jail if you haven’t noticed ;). My ZFS kit is a stripe (gasp!) and has no redundancy (yet) but for my purposes before hosting any public facing stuff, that stripe was all that I could need.

  • FreeNAS 9.3
  • AMD Sempron(tm) 3850 APU with Radeon(tm) R3
  • 8GB RAM

Hosting: 3 jails/4 Virtual Systems Total

  • transmission (jail)
  • virtualbox (jail) hosting 1 VM for GitLab (Ubuntu)
  • WordPress (jail)

More Backup Scripts (This time for wordpress)

I was able to complete my backup scripts for the WordPress site lickity split. I also found that grive in ports is broken and should be deprecated since the Google API it uses has been defunct since 2012. I had to download and compile grive2 from the interwebs (a quick search will yield success).

Here is a link to the wordpress backup script: WordPress Backup

And a link to the BSD version of the Google Drive backup script: GoogleDrive Backup Script (BSD). The BSD version points to /usr/local/bin/bash instead of /bin/bash, but that could likely be soft linked.

FYI, I pass the TARGETDIR in through the script’s args but here is an example of how my crontab looks like on the WordPress server:

0 0 * * * /home/brodey/src/Scripts/backupWordPressh.sh
30 0 * * * /home/brodey/src/Scripts/backupBSDFilesToGoogleDocs.sh /FreeNAS/WordPress

Yes, I’ll eventually have a “common place” for all of my scripts to run and better maintainability  but this is a “get something in place now” type of deal.

First things that I’m working on

Looks like I may be looking at a possible drive failure or, “normal” wear-in on one of my brand new hard drives (A 4TB Hitachi). I received a lovely error message from FreeNAS indicating that my drive error count increased from 0 to 1, so I shall be monitoring that count to see if it’s rate of increase changes.

In the mean time, and after taking manual backups of data. I decided to get some backup scripts in place so that I don’t have to continuously monitor the situation. I developed a simple script with a touch of ‘hard coding’ to get the job done for now, using a couple posts about grive and BASH.  Grive is awesome, grive -f is also equally awesome when forcing a “download” or “pull” from your Google Drive.

Here is a link to my backup script: Backup Script

New Website For Tracking Personal Projects and Getting All of “that” Info Back Out To The Land Of The Internet

New Page!!!!


Hello All,

Welcome to my website where I will start tracking any of my personal projects on the go. I tried doing this earlier but could not devote sufficient resources to keep the site up and running, keep useful content out in the open and generally didn’t have the nudge I was looking for.

I’ve been recently relieved of my duties at the company I worked 3.5 years for because of a company acquisition deal. I shall take this opportunity though, to renew my roots and re-focus my own personal goals may they be personal goals or career goals.

“Sometimes you need to take a step backward before you can take two steps forward” – Dr. Bose

Thank you!

Brodey Dover