Category: Code Samples
Simple Disk Benchmarking in Linux Using ‘dd’
A great way to do a real-world disk test on your linux system is with a program called dd. dd stands for data description and is used for copying data sources. A simple command to do real-world disk write test in linux is: 1dd bs=1M count=512 if=/dev/zero of=test conv=fdatasync This creates a file named ‘test’ [...]
Apache 2.4 Upgrade and the “Invalid Command ‘Order’” Error
The new Apache 2.4 has been released a few weeks ago and I decided to use this version while installing a new server (I compiled it from scratch rather that using an rpm or deb). After using one of my tried and true Apache configuration files, I received this error on start: 12Starting httpd: AH00526: [...]
The Easy CIDR Cheatsheet
Even though I’ve been working with Classless Inter-Domain Routing (henceforth known as CIDR) for years now, I always need a bit up a help remember how many addresses are in each block and how many sub-blocks fit into larger blocks. I have the following printed out for easy reference, and here it is for your geeky enjoyment:
CIDR Total number Network Description: Notation: of addresses: Mask: -------------------------------------------------------------- /0 4,294,967,296 0.0.0.0 Every Address /1 2,147,483,648 128.0.0.0 128 /8 nets /2 1,073,741,824 192.0.0.0 64 /8 nets /3 536,870,912 224.0.0.0 32 /8 nets /4 268,435,456 240.0.0.0 16 /8 nets /5 134,217,728 248.0.0.0 8 /8 nets /6 67,108,864 252.0.0.0 4 /8 nets /7 33,554,432 254.0.0.0 2 /8 nets /8 16,777,214 255.0.0.0 1 /8 net (Class A) -------------------------------------------------------------- /9 8,388,608 255.128.0.0 128 /16 nets /10 4,194,304 255.192.0.0 64 /16 nets /11 2,097,152 255.224.0.0 32 /16 nets /12 1,048,576 255.240.0.0 16 /16 nets /13 524,288 255.248.0.0 8 /16 nets /14 262,144 255.252.0.0 4 /16 nets /15 131.072 255.254.0.0 2 /16 nets /16 65,536 255.255.0.0 1 /16 (Class B) -------------------------------------------------------------- /17 32,768 255.255.128.0 128 /24 nets /19 16,384 255.255.192.0 64 /24 nets /19 8,192 255.255.224.0 32 /24 nets /20 4,096 255.255.240.0 16 /24 nets /21 2,048 255.255.248.0 8 /24 nets /22 1,024 255.255.252.0 4 /24 nets /23 512 255.255.254.0 2 /24 nets /24 256 255.255.255.0 1 /24 (Class C) -------------------------------------------------------------- /25 128 255.255.255.128 Half of a /24 /26 64 255.255.255.192 Fourth of a /24 /27 32 255.255.255.224 Eighth of a /24 /28 16 255.255.255.240 1/16th of a /24 /29 8 255.255.255.248 5 Usable addresses /30 4 255.255.255.252 1 Usable address /31 2 255.255.255.254 Unusable /32 1 255.255.255.255 Single host -------------------------------------------------------------- Reserved Space: 0.0.0.0/8 127.0.0.0/8 192.0.2.0/24 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 169.254.0.0/16
What a Resilver Looks Like in ZFS (and a Bug and/or Feature)
At home I have an (admittedly small) ZFS array set up to experiment with this neat newish raid technology. I think it has been around long enough that it can be used in production, but I’m still getting used to the little bugs/features, and here is one that I just found.
After figuring out that I had 2 out of 3 of my 1TB Seagate Barracuda hard drives fail, I had to give the array up for a loss and test out my backup strategy. Fortunately it worked and there was no data loss. After receiving the replacement drives in from RMA, I rebuilt the ZFS array (using raidz again) and went along my merry way. After 6 months or so, I started getting some funky results from my other drive. Thinking it might have some issue as with the others, I removed the drive and ran Seatools on it (by the way, Seatools doesn’t offer a 64-bit Windows version – what year is this?).
The drive didn’t show any signs of failure, so I decided to wipe it and add it back into the array to see what happens. That, of course, is easier said than done.
Disabling The hald-addon-storage Service On CentOS/RedHat
The hald – Hardware Access Layer Daemon – runs several processes in order to keep track of what hardware is installed on your system. This includes polling USB Drives and ‘hot-swap’ devices to check for changes along with a host of other tasks. You might see it running on your system as follows: 12342474 ? [...]
Experimenting with Pascal on Ubuntu
I’ve been busy lately on a number of projects, one of which is a programming class I am currently taking. The class itself is interesting, we are learning about the different types of programming languages. For our latest project, we were tasked with writing a simple program in Pascal. Pascal isn’t used too much any [...]
Some Rights Reserved 2012