Archive for February, 2006

Bittorrent is Evil, Remember?

Got an interesting call today.
guy on phone:
Hi, I’m with thje intrusion detection team- we had a wolverine alert that your machine set off, I was wondering if you could enable your machine so I could remote in and check it out and make sure you’re not infected.

Which machine was it?

guy on phone:
*reads off a machine number*

Ah. ok, you won’t be able to- that’s my laptop, and it’s not running windows, it’s running linux. Was it a bittorrent alarm it set off? I was downloading an new iso for gentoo.

guy on phone:
Um, I’m not sure, you’ll have to ask the security guys. You said this machine wasn’t running windows?

Ok… how do I explain this. I’m the linux administrator. My laptop is running Linux. I used bittorrent to download a Linux iso.

guy on phone:
You’re not allowed to have that installed.

*exasperated* don’t worry, it was a legitimate use. This is a normal thing and completely legal for me to do.

guy on phone:
ok, well, you’re going to be getting a call from the security team. I’m going to forward this ticket to them.

Ok, fine- make sure you tell them that I was downloading a “Gentoo 2006 LiveCD iso”.

guy on phone:
*he repeats it back*
ok, I’ll let them know. *click*

I know the guy was just doing his job, and doesn’t set the rules, but it was still sort of annoying. I know this will lead to me getting the 5th degree for doing my job. My coworker wanted to install gentoo on a spare machine here, and I grabbed an iso and ripped it to disk.

From now on I’ll make sure to grab from a http or ftp site.

What I found really interesting was his reaction to the word bittorrent. It’s automatically assumed I was doing something bad. Looking back, my reaction was interesting as well- my reaction wasn’t fear, it was curiousity- how did I set their scanner off? I wanted to know so I wouldn’t do it again.

By the way, this is my 100th post in WordPress. well- I have about 20 articles in draft mode right now, but that’s still quite a few.

DnD Character

Fark has a great link for a DnD character personality test.
Here’s what I came up with for me.

Neutral Good Half-Elf Ranger

Neutral Good characters believe in the power of good above all else. They will work to make the world a better place, and will do whatever is necessary to bring that about, whether it goes for or against whatever is considered ‘normal’.

Half-Elves are a cross between a human and an elf. They are smaller, like their elven ancestors, but have a much shorter lifespan. They are sometimes looked down upon as half-breeds, but this is rare. They have both the curious drive of humans and the patience of elves.

Primary Class:
Rangers are the defenders of nature and the elements. They are in tune with the Earth, and work to keep it safe and healthy.

Detailed Results:

Law and Chaos:
Law ----- (0)
Neutral - XXXXXX (6)
Chaos --- XXXXX (5)

Good and Evil:
Good ---- XXXXXXXXX (9)
Neutral - XXXX (4)
Evil ---- (-2)

Human ---- XXXXX (5)
Elf ------ XXXXXXXXXX (10)
Gnome ---- XXXXXXX (7)
Halfling - XXXXXX (6)
Dwarf ---- (0)
Half-Orc - XX (2)

Fighter -- XXXX (4)
Barbarian -XX (2)
Monk ----- XXXXXXXXXXXXXX (14)
Paladin -- XXXXXXX (7)
Cleric --- XXXXXXX (7)
Mage ----- XXX (3)
Druid ---- XXXXXXXXXX (10)
Thief ---- (-1)
Bard ----- XXXXXXXX (8)

Useful Utility: ls

With the exception of maybe cd (which is boring), ls is probably the command you’ll use the most if you do a fair amount of work at the command line.

ls lists files. It’s simple enough concept, but there’s a lot of information about those files that you can list as well. ls by itself will list the contents of all regular files and directories in the current directory. you can provide with with a target such as ls /foo or with multiple targets like ls /mnt /opt or ls foo.png foo.jpg foo.gif. You can also feed it command line special characters like ls foo.* or document[0-9].txt.

ls -l is probably the most useful and used flag you’ll use, since it lists permissions, ownership, timestamp, size in bytes and some other information. You can manipulate this enrty further by adding the -r and -t flags, which orders the list by timestamp, and then reverses it. This makes the bottom of the list show the most recently modified file- very useful when dealing with logs.

ls foo/ will list the contents of foo/, but if you add a -d flag, it will simply list the properties of foo/ itself. ls -a foo/ will list not only the contents of foo/, but the hidden files, directories and the special ./ (which represents foo/ ) and ../ (which represents the parent directory). ls -A will list all files EXCEPT the .. and ../ directories.

ls -s will list the file sizes next to the file name, while ls -sh will show the file sizes in a human readable format, such as k, m or g. If you want to know if a file is executable, symlink, directory or pipe, you can try ls -F, which is much shorter than ls –color, which colorizes files according to their type. The last really useful item you might be interested in is ls -R which shows the contents recursively of every subdirectory below the target directory.

As always, I’m just scratching the surface. feel free to include your own uses and flags in the comments below.

Setting up my Garden

Well, it’s Feb. 26th and it’s still nice out. it’s only 34, but it’s bright and sunshiney. It was 60 last week, and it’s been decent most of the winter. My brain is starting to activate and come out of winter hibernation, so that means it’s time to start planting.

Since I live in an apartment, I don’t get a real garden, so we have a bunch of pots and windowboxes and such. Jackie picked up a weeping Fig and another cane-y palm tree looking thing. While we were at it, we decided to repot almost all of our other plants.

The current cane/palmtree things we have were getting a bit crowded, and the smaller of the two had grown some extra shoots pretty low on the stem, so it needed to be raised up. It should be noted that with these, you have one small and one large, usually. We switched pots, cleaned off the roots, gave them fresh dirt and got some new rocks to cover the top with. We also wiped the dust off the leaves while we were at it. it looks much better now. Jackie originally got the new cane/palmtree in the hopes she could put the two new stalks with the 2 old ones, but that just wasn’t practical, so we gave it the same treatment, and got a new big pot for it as well. The weeping fig was a mess, but we got it out of the old pot and into another large one. When I say large, I mean that this and the cane/palms have 14 inch pots. I think it’ll grow nicely.

The Creeping Jerusalem (I think that’s what pete called it) didn’t have enough soil and needed a bigger pot. We transplanted it, seperated the roots as much as possible, and replanted in a bigger pot. It’s roots were fairly tangled, but we did get some of them seperated. It’s sitting in the living room on an end table, next to some forget-me-nots that jackie had from her grandfather’s funeral. Jackie brought my old (failed) window box in from outside, cleaned it up, and I planted spearmint and sage in it. it’s sitting on the desk next to me. Jackie also has a pot on her side of the desk she messed with a few days ago, but it looks like it’s just ferns and such.

The window sill in the kitchen has a couple of windowboxes and some pots on it. My window box has basil and “various peppers” planted in it, and jackie’s has more forget-me-nots. We also got two of those “plants in a bucket” things from walmart, although we got nicer pots for them- one for strawberries (I have my doubts on this one) and one for cayenne peppers. with any luck I’ll get some nice peppers for salsa this way. The other pot is this weird looking plant we got somewhere, but I have no idea what it is- it’s got a red mohawk. As long as it doesn’t eat the cats, I’ll be happy (note- jackie says it’s what we got from her aunt joann). We also have my 2 basil pots that still haven’t died yet- as soon as they do, I’ll toss them, but not before. Rounding out the window sill are two bamboo stalks, which are growing suprisingly well. On the far side of the counter in the kitchen we have our old bamboo forest of about 10-12 stalks, and a new one- jackie found some nice bamboo in an ugly pot, so we tried transplanting them in a glass vase and holding them in place with some rocks. It looks pretty good, but I’m curious how long it’ll last.

So it’s not quite a garden, but it is some nice greenery, which makes the pain of being in DC a little bit less. I’ll try and get some pictures up later.

Kiss my Ass, Linksys (pt. 2)

I’ve apparently become either very brave, or very stupid in my old age. Last night at 10pm I reset my router and flashed it’s firmware with an open source alternative.

A few years back, some Linksys tech realized the usefulness of some open source components and implemented them in the firmware of their routers- they just forgot to follow the license agreement of the software they used and didn’t tell anyone or release the source code and the changes they made. Along comes some hacker and recognizes the code, and a shitstorm of controversy hit Linksys, which ended up with them agreeing to release their changes (as they should).

From this, a lot of open source projects popped up with re-implementations of the firmware. One of them was DD-WRT, which added a lot of new functionality to the linksys router. This is what I’m using now.

Among the many new features, I have access to the following: WPA2, pptp service on the router, syslog, MRTG, more than 10 port groupings that can forward, and SSH access. By the way- this is all running on a linux kernel, so the regular linux stuff applies.

Everything was running smoothly by 2am- would have had it done by midnight, had I been using the proper password. But that’s over and done with. Oh, remember how I got pissed at linksys for their visually impaired-unfriendly text interface?

Works fine now, so I don’t want to hear the bullshit that they couldn’t do it. Here’s what the new interface looks like:

A bit prettier, if you’ve ever seen the original linksys interface. So it’s prettier AND more functional.

The sad part here is I’d consider buying another linksys router for no other reason than to run dd-wrt. If it holds up with no problems for a month, I’m gonna be sending the author some “good job, keep it up” money. I’m impressed, so far.

Review: iAudio M5 (day 5)

So Today is the last day that I get to play with Jackie’s M5. I’m gonna miss it 🙁

on the bright sid,e I did find out something cool- the battery almost died on the way to work- that’s because it hasn’t been charged since monday. The long ass battery life this thing has is very nice. I thought when I connected it to a USB cable it would trickle charge, but it turns out, as I just found out a few moments ago, you have to slide the power charge on, then the “charge button” I mentioned on day one glows bright red- it’s a light, not a button! The screen says charging and has a little “battery filling” animated icon. I’m gonna let it sit for a while and see how long it takes to charge.

I definitely want one though, and that’s what matters.

While I’m at it…

I’d just like to state, for the record, that I will never, EVER, E_V_E_R buy anything from the spam that I get in my inbox. So spammers, if you’re paying attention, you can remove every single account because they all come to me and I’m not buying anything.

So leave me alone and quit sucking my bandwidth.

Kiss my ass, linksys

I remember, back in the day when Quality was more important than looking pretty… well, not really- marketing droids and slack-jawed fools always choose shiny and useless over plain and useful.

take, for example, the links WRT54G router. When I first got it, the firmware was buggy and ugly, but I could use it in lynx, a text browser. no pretty colors or images, just straight text. Using lynx meant I could edit my router config remotely to add/remove ports as I needed them.

well, that day is gone. it’s been gone for a while, but I recent had my hopes dashed again. The last revision of the firmware made the linksys router interface unusable in lynx (and elinks). I was messing with it yesterday when I got fed up and went in search of newer firmware for it- just my luck, I found it. Unfortunately, linksys took this oppertunity to make their interface even MORE useless.
It’s so bad, that I thought I’d include a few screenshots.

screencap of the linksys text interface
Here you can see the base interface I see when I log in- nothing special, but useful.
Below you see what happens when you dig past this pretty facade. this is what happens when I go to the security page.
screencap of the linksys text interface showing only underscores and brackets- no text or labels

This is an EMBARASSMENT in my eyes. Linksys, you should be ashamed. I know this is an embedded device and all, but for crying out loud, could you at least get some competent developers in there? Keep in mind, you’re seeing what a Blind person would hear when they tried to access this with a text reader.

So who do we have to blame for this crappy code?
screencap of the linksys text interface source code showing it's property of another company and not for production use

And I quote, for the visually impaired: “This software should be used as a reference only, and it not intended for production use!”

Someone should tell Linksys that.

so I guess I could either load up an open source firmware binary and hope for the best, or just get a new router. whatever I get, it probably won’t be a linksys. I’m tired of this shit.

UPDATE: as mentioned in the comment below, the firmware version was showing what it was like BEFORE this latest update. this is what it looks like aver reloading the page:

screencap of the linksys text interface showing only underscores and brackets- no text or labels
It makes me want to vomit, seriously.

Useful Utility: screen

Screen is probably one of the top 10 most useful programs in the unix world- why? Because of what it does. Screen lets you create a session on a machine and then disconnect, while the session stays open. Suppose you wanted to start a large compile on your home server before you left work, but needed to shut down your laptop and bring it home.

You could ssh into the machine and simply start the compiling, but the compilation would stop when you broke the ssh connection by shutting off the laptop. That’s not acceptable. Enter screen.

Beginning with Screen

When you ssh to the server, instead of immediately running the compile, run screen.

morgajel@lappy ~ $ ssh
morgajel@homeserver ~ $ screen

The terminal should flicker, clear, and show a regular prompt. you are now in screen. You can check this by using one of the many screen control commands.
Go ahead and execute your compilation, then press ctrl+a followed by the ‘d’ key.
The screen should flash and look something like this:

morgajel@homeserver ~ $  

The session still exists, it’s just not attached to this particular terminal. go ahead and log out of homeserver and take your laptop home with you. As a side note, get used to pressing ctrl+a. That’s how you’re gonna communicate with screen.

When you get home, hop on your homepc and ssh into your homeserver.once you’re back in, run “screen -r -d”:

morgajel@homepc ~ $ ssh
morgajel@homeserver ~ $ screen -r -d

There’s your compile- still running. It was running the entire time you had disconnected. Pretty cool, huh?

Multiple Screens

Now lets try something a little more advanced- lets open another terminal inside this screen instance. while watching your compile, press ctrl+a followed by the ‘c’ key. This creates a new terminal. if you press ctrl+a followed by a double quote (“), you’ll see a list of existing terminals. To move to another terminal, you can highlight it and press enter or press ctrl+a followed by it’s id number. By far the most useful is ctrl+a followed by an ‘a’ which bounces you back to the previous terminal.

Just to give you an idea of how I use screen, it’s not uncommon for me to sit at work with a single ssh connection to my home server and branching ssh connections to each box at home. My current screen at the time of this writing looks like this (I’m updating my systems):

0: irc connection to freenode
1: irc connection to
2: irc connection to
3: 'scratch' shell on p-nut
4: emerging packages on p-nut
5: emerging packages on pablo
6: emerging packages on draccus
7: emerging packages on jaxon
8: emerging packages on zaven

Meta Screens

There are also a couple of “meta” screens- screens you can get to that already exist. Ctrl+a followed by a double quote(“) as we discuessed earlier will bring up a list of all open screens.
Ctrl+a followed by a question mark(?) will bring up a help menu.

… Actually, there’s not as many as I thought there were.

the man page as a nice breakdown of what ctrl+a options there are, as well as using “commands”, which are way out of the scope of this review.

The Weave

I ride a shuttle bus to work every day- the type with a driver and passenger seats, then 2 rows of 2 seats stretching the length of the bus, with a door on on side of the first row of seats.

Every day, I watch people scramble to be the first ones off the bus- they’re smart enough to stay seated until it’s their row’s turn, but then they start jockying to get out before the people across from them.

The sad part is not that they do this; it’s sort of human nature- what’s sad is I get mad at them for not doing the most optimal thing- The Weave. Observe:

The blue is the door, and the black is a half railing. If people got off in the order listed there, it would be the most efficient- people on the inside rows should fo first. After both of the inside people go, the outside people should go, following the same order as the inside people- this allows #5 to move to #3’s spot as #4 gets out of the way. by the time #4 has went, #6 has moved to #4’s old seat and can follow. It provides a rythm, and is sustainable on an arbitrarily long bus.

Now, I don’t know whether this is a good thing or not, but it’s how my mind works. I see patterns like this.

Go to Top