Posted by & filed under Personal.

Here’s a video I took of an alley that I have to walk through every day to work. It’s pretty obvious that someone is being very sloppy with their grease dumping habits. I’m not positive which company is dumping it. The doorway seen in the video connects to Tomukun, a local restaurant.

This same situation happens weekly. If you look closely at the stained cement, you can see that this has been happening for a long time. The smell is disgusting, and sticks around for days at a time. The grease flows from the Tomukun part of the alley, and runs through a neighboring property (used to be owned by Grand Traverse Pie Company) in their seating area. I’m pretty sure it will require some major pressure washing to fix, and is probably diminishing the property value.

I’m assuming this has gone unchecked for so long because the building in front with the seating area being ruined is currently closed. Obviously, once a business moves in, they will make sure this issue goes away pretty quickly (otherwise their customers would never want to eat outside). I’m posting this on my blog for visibility, in the hopes that I can get whoever owns the grease trap to stop dumping.

Dumped in Alley next to Tomukun

Dumped in Alley next to Tomukun

Very Old Grease Stains

Very Old Grease Stains

Viscous Grease Runoff

Viscous Grease Runoff

Viscous Grease Runoff

Viscous Grease Runoff

Stained Cement

Stained Cement

 

Posted by & filed under Linux, Redis.

If you’d like to have the most recent version of Redis installed on your Debian machine, follow along with this guide. Unfortunately, the process of installing it is not as easy as `sudo apt-get install redis`, which you probably already knew since you’re reading this. The current version of Redis, at the time of me writing this, is 2.6.13. Go to the website and copy the download link and be sure to change the version in the URL below:

# Install the required tools to build the source
sudo apt-get install build-essential
# Download and extract the files
wget http://redis.googlecode.com/files/redis-2.6.13.tar.gz
tar -xzf redis-2.6.13.tar.gz
cd redis-2.6.13
# Compile
make install

Now that you’ve got it “installed”, you’re going to want to make it a Debian service (so that it can run on startup, and you can use commands like `sudo service redis start`):

# Create a user account for Redis
sudo adduser --system --no-create-home --disabled-login --disabled-password --group redis
# Make a writable log file
sudo touch /var/log/redis.log
sudo chown redis:redis /var/log/redis.log
sudo chmod u+w /var/log/redis.log
# Make an init script
cd /etc/init.d/
wget https://gist.github.com/peterc/408762/raw -O redis
sudo chmod u+x redis
sudo update-rc.d -f redis defaults
# Make a place to store your database
sudo mkdir /var/redis
sudo chown redis:redis /var/redis
sudo chmod u+xw /var/redis

Next, you’ll want to edit the configuration script. Do the following:

sudo mkdir /etc/redis
sudo touch /etc/redis/redis.conf
sudo chown redis:redis -R /etc/redis/
sudo vim /etc/redis/redis.conf

Here is what I use for my redis.conf file:

daemonize yes
pidfile /var/run/redis.pid
logfile /var/log/redis.log
port 6379
# bind 127.0.0.1
# unixsocket /tmp/redis.sock
timeout 300
loglevel verbose
databases 16
save 900 1
save 300 10
save 60 10000
rdbcompression yes
dbfilename dump.rdb
dir /var/redis/
# requirepass foobared

Once that’s all done, run the following to make sure everything was installed properly:

$ sudo service redis start
$ redis-cli
> INFO

If you see an error when the server is starting, or an error after running the CLI script that it cannot connect, something went awry. Leave a comment and I’ll be sure to lend a hand.

Posted by & filed under OS X.

Boy does my Homebrew installation like to get messed up. Pretty much every time I do a big `brew update` I have to repair everything. This is what I typically have to do:

cd /usr/local
sudo chown -R USERNAME /usr/local/.git
sudo chown -R USERNAME /usr/local
sudo chown -RL mysql:mysql /usr/local/mysql/data
git pull
git reset --hard origin/master
brew update

My permissions often end up completely out of whack, and I also get a bunch of garbage in the /usr/local directory. This fixes the permissions and pulls the latest from homebrew and runs the update. Your mileage may vary.

Posted by & filed under Linux.

If you’re using my previous method for logging a networks ever-changing public IP to a webserver you control, you can use this simple command to grab the last known IP and SSH into the box that way.

ssh USERNAME@`curl -s http://www.example.com/pong.php`

The `backticks`, when run in a shell, will execute that command and return the results. In this case, it grabs the pong script, reading the IP address it provides, and the SSH’s into it.

Posted by & filed under PHP.

<?php
$raw_header = "http://location/\r\nBadHeader";

# PHP 5.4:
$clean_header = explode("\n", explode("\r", $raw_header)[0])[0]);

# PHP 5.3:
$no_cr = explode("\r", $raw_header);
$no_nl = explode("\n", $no_cr[0]);
$clean_header = $no_nl[0];
unset($no_cr, $no_nl);

echo $clean_header;

Posted by & filed under Linux.

Use this script to take a photo using the webcam on your computer. It makes use of and requires the installation of mplayer. When it takes pictures, it will take 20 of them, and delete the first 19. I have to do this because my netbook has a really crappy camera, and it takes a while to adjust to the light and focus. You might be able to get away with a lower setting, so tweak the number until something looks good.

/home/USERNAME/webcam/grab.sh:

#!/bin/bash

# Take 20 frames worth of pictures
mplayer -vo png -frames 20 tv://

# Copy the 20th frame to the webcam directory as the current time
mv /home/USERNAME/00000020.png /home/USERNAME/webcam/`date +"%Y-%m-%d_%H:%M:%S"`.png

# Delete the first nineteen frames
rm /home/USERNAME/000000*.png

I wouldn’t be surprised if mplayer has some sort of command to ‘trim’ the first 20 frames, and specify output location so you don’t have to run this awkward delete, but I wasn’t able to figure it out.

The images will be saved into a folder called webcam, and the filenames will be in the format YYYY-MM-DD_HH:MM:SS.

I’m using absolute paths for everything because I’m running this as a CRON job (to take a picture once per minute). Basically, I use it as a security camera. If you’d like to do the same, feel free to snag this crontab entry (which you can add by running `crontab -e`):

crontab:

* * * * * /home/USERNAME/webcam/grab.sh >/dev/null 2>&1

Posted by & filed under Security.

I was at work yesterday, and mentioned the word “Authentication” to a co-worker via IRC. His client had cut off the last word, and he asked me what the hell Authenticatio was. I jokingly said I was talking about authenticat.io as a domain. On a whim, I dropped $40 and bought the thing.

Later, while asking what the hell I should do with it, a friend suggested it could be about AuthentiCat, a cat who has advice on Authentication and Data Encryption. Thus, AuthentiCat.IO was born.

It’s going to be a web-comic site about silly computer security topics. I’ll try to post at least one thing a week. Wish me luck!