Andrew Latham

Python CLI Webserver

If you ever need or want to create a webserver with the files in the current directory listed then just use this little snippet.

python -m SimpleHTTPServer

It will inform you of the address it is listening at or you can set the port via

python -m SimpleHTTPServer 8080

With Python 3 you might want to use:

python3 -m http.server

The same method of setting the port with Python 3 too

python3 -m http.server 8080

Andrew Latham

Resetting or moving the DNS SOA serial number to a lower number

To reset a DNS SOA serial number, there is a hack that is barely documented

Andrew Latham

Hard Disk Drive Checks on Headless or Remote Servers

The Problem

Setting up remote servers or even local servers that have no keyboard or monitor often called headless requires some thought. File system and hard disk drive checks for example can be troublesome. During start up of any modern Linux distribution a check for the number of mounts or duration since the last check can cause a complete disk inspection often called fsck or file system checker. This is a perfectly normal and safe thing for all systems. If you do not have access to the server or headless system you may not be able answer questions for the fsck program if it finds an issue. Very often one simple press of the Y key is all you need to do. If your server is hundreds of miles away or does not have an easy method of attaching a keyboard this is difficult.

The Solution

In Modern Debian distributions you can change this in the /etc/default/rcS file. Change FSCKFIX=no to FSCKFIX=yes. You can read more about this in the /etc/init.d/ and /etc/init.d/ and see what happens during startup. In Redhat based systems and others it is also very easy configure by creating the file /etc/sysconfig/autofsck and adding AUTOFSCK_TIMEOUT=5 and AUTOFSCK_DEF_CHECK=yes to the file.

Andrew Latham
Cover Image

Converting a chest freezer to a refrigerator and why you should do it to.

Low quality five minute write up. Cold air falls and hot air rises. Unless your upright refidgerator is packed 100% full you cool air is falling out every time you open it. In a video by Mikey Sklar ( ) some metrics like 2000watts vs 100watts for a upright refridgerator vs a chest freezer is crazy but close to the truth. A run of the mill chest freezer can be controlled by a temperature controller to turn the freezer on and off to maintain a temperature you desire.

Andrew Latham

Mediawiki hacking to make it self editable

Good documentation sometimes needs good style. Mediawiki (what powers is a great solution. Along with private SSL you can have a secure but fast documentation system anywhere in the world. By default Mediawiki will load CSS enteries from the Mediawiki: namespace. You can add overrides to these files to change the look or even add your own classes.

Common.css for screens http://wiki.domain.tld/index.php/MediaWiki:Common.css for installs without rewrite rules http://wiki.domain.tld/MediaWiki:Common.css

Print.css for printing http://wiki.domain.tld/index.php/MediaWiki:Print.css for installs without rewrite rules http://wiki.domain.tld/MediaWiki:Print.css

Supermicro IPMI Firmware Backup

Supermicro IPMI Firmware Backup and Upgrade It needs done, there are tools to get it done, lets see how.

Andrew Latham

Supermicro IPMI Firmware Backup and Upgrade

It needs done, there are tools to get it done, lets see how.

Supermicro makes a wide array of servers, server motherboards and even some consumer and embeded systems. Most have an IPMI with BMC onboard to allow remote control of the server or device. This remote control is normally the power controls for any power supply and connection to the system. The two methods of connecting to the system are the serial console and what is called an KVM (Keyboard Video Mouse) to see the video output and send signals to the mouse and keyboard. The additonal features that are not well advertised is the loading of virtual storage devices to the system from remote sources. All of these features work over the IP or Internet Protocol in either the IPv4 or IPv6 flavors.