Tips and Tricks for Building Ubuntu Packages and Compiling

If you’re about to build packages

  • apt-get install build-essential

If you can’t find debbuild

  • apt-get install devscripts

You receive the following error

  • apt-get install quilt

You receive the following error

  • apt-get install dh-autoreconf

Building Ubuntu Package

  • apt-get install build-essential fakeroot dpkg-dev
  • mkdir build
  • cd build
  • sudo apt-get source foo
  • sudo apt-get build-dep foo
  • debchange
  • debuild -S -sd or debuild -us -uc -i -I

Creating ISO Partition on Local Disk for XenServer/XenCenter 6.5

I just started playing with XenServer/XenCenter 6.5 and found a couple of templates required ISO images. Specifically Ubuntu 14.04 LTS Trusty Tahr due to a bug, you can google it. Other Images like Ubuntu 12.04 Precise Pangolin didn’t require an ISO and just needed a URL to install. Funny enough this failed for me, I was going to install 12.04 and then upgrade to 14.04 but that failed.

Google hasn’t really been all that helpful at first, it took me a while to find a solution. There are a lot of old articles that reference LVM which I believe was used up until XenServer 6.2?

I installed XenServer 6.5 from the ISO installer, this creates two 4GB GPT partitions and leaves the rest of the space on your installation destination as free. For more details the following blog post has some more information about the installation partitions and how to keep them clean.

http://xenserver.org/discuss-virtualization/virtualization-blog/entry/xenserver-root-disk-maintenance.html

So I would need to create an additional GPT partition to store my ISO’s on. I used a 128GB SSD for XenServer, I used gdisk and created a 50GB partition.

I made sure to leave the type as 0700 and then wrote the changes to disk. If you don’t know how to use gdisk, google can help.

I then had to reboot to see the new partition, and then formatted it as ext3.

Remember /dev/sda2 is the random 4GB not mounted partition, so don’t format it!

I then mounted the partition to /mnt/iso and told XenServer about it.

It showed as blank within XenCenter and I don’t know why, I just renamed it. I also noticed it unmounted the partition, so I had to remount it. I then uploaded my ISO images using WinSCP, I then went to go create my new VM! But my newly uploaded ISO’s didn’t show up. I had to refresh the ISO storage so it could see the newly uploaded files. Just click on the new “ISO” SR and click the “Storage” tab and press “Rescan” which then showed the ISO’s correctly.

Bammmm. Done, any mistakes or incorrectness, please let me know.

CrashPlan Error “Cound not Initialize class com.code42.jna.inotify.InotifyManager”

I had a host that wasn’t backing up at all and found the following error message within the CrashPlan engine_error.log located in /usr/local/crashplan/log

From what I could tell it was related to a CentOS 6.x upgrade that may have set the noexec on /tmp which wasn’t set previously.

The error sees to be related to writing files to the /tmp directory, the following two websites I found by a simple Google search revealed this problem.

http://feeding.cloud.geek.nz/posts/crashplan-and-non-executable-tmp-directories/

https://randomwindowstips.wordpress.com/2013/02/25/crashplan-pro-for-linux-stuck-at-waiting-for-backup-or-connecting-to-backup-destination/

You have to update the CrashPlan Java options to store its temporary that isn’t mounted as “noexec” by your system

Open up  /usr/local/crashplan/bin/run.conf and add the following to the end of SRV_JAVA_OPTS

CloudFlare Cache Purge Plugin Logs to Posts

You might have seen the following Posts in your WordPress blog after installing the CloudFlare Cache Plugin.

This is actually something the plugin is suppose to do, but there is no option to turn it off. And it looks like the plugin hasn’t been updated in months.

https://wordpress.org/support/topic/option-to-turn-off-logging?replies=3#post-6538553

You can disable this by commenting out the following line as per the support article above

 

Active Directory Authentication with NConf

So I had to help someone else with getting NConf working with Active Directory LDAP on a Windows Domain, If you don’t understand the difference between DistinguishedName and sAMAccountName, then you will have some issues.

Currently NConf will only use a DN for successful authentication and authorization (2 steps to getting access to NConf). This means you can’t use your Active Directory username, but instead your DistinguishedName.

If you review the NConf Auth by Active Directory instructions and correctly configure all the options. Using an DistinguishedName of a valid Active Directory account for the username will result in a successful login. Versus using the Active Directory sAMAccountName which is typical the “username” we have all come accustomed to using.

Please note, when specifying the “AD_BASE_DN” as DOMAIN\<username>. You may find success in authenticating, but you won’t have authorization to access NConf. This is due to the memberof logic used in NConf, which fails due to an incorrect Bind DN being provided. It looks like NConf needs to build on the Active Directory integration.

Remove iThemes Security Lockouts Script

I decided to create a command line PHP script that would list the current iThemes Security Logs and also allow you to remove them based on IP Address. Here is the script which I’ve called “ithemes-clearip.php” and it’s Github link, its dirty and really was made in like 15 minutes.

https://github.com/jordantrizz/wordpress-scripts

 

 

Nagios NRPE Disk Check Error on Plesk

If you’re monitoring a server with Nagios NRPE that is running Plesk, you might have run into the following issue. The disck_check command may return the following lovely error message.

DISK CRITICAL – /var/named/chroot/etc/named is not accessible: Permission denied

The fix is rather simple, you just need to modify the /etc/nagios/nrpe.cfg file and change your disk_check command to include the following

-x /var/named/chroot/etc/named -x /var/named/chroot/var/named -x /var/named/chroot/etc/named.rfc1912.zones -x /var/named/chroot/etc/rndc.key -x /var/named/chroot/usr/lib64/bind -x /var/named/chroot/etc/named.iscdlv.key -x /var/named/chroot/etc/named.root.key

Which will exclude the chrooted locations that the NRPE daemon doesn’t have access to it.

Setting up MikroTik/RouterOS with Conditional DNS Forwarding (UnoTelly/UnblockUS)

I have a MikroTik RouterOS device that has some custom DNS settings and therefore I cannot change the DNS servers it provides to clients, which is a requirement to use UnoTelly or Unblockus. Instead I found the following article very helpful, it allows you to configure Conditional DNS forwarding for specific domains.

https://www.dalemacartney.com/2012/12/29/dns-conditional-forwarders-with-mikrotik-routeros/

This works well because I use MediaHint to swap back and forth for NetFlix US and Canada, but use only the US Amazon Prime.

 

How to Disable the Displet Pop WordPress Plugin on Specific Pages

You won’t find much within the support forums in-regards to how to stop the Displet Pop plugin from loading on specific pages. However, I was able to find some pre-created code that does accomplish the task and just modified it for the Displet Pop plugin.

 

 

WordPress Plugin Wordtwit Add Twitter Account Not Working (Setup Instructions)

If you’ve recently upgraded Wordtwit, you’ll notice some changes which are specifically to address the old Twitter API being deprecated. You will need to create a Twitter Application for Wordtwit to be able to add a Twitter account.

The developer has provided some instructions on how to correctly create a Twitter application for Wordtwit:Creating a custom application for WordTwit

Make sure that you set the callback URL to your websites URL, which is what I had skipped and caused the “Add Account” button under Twitter accounts to not function at all.