Archive for mike

My Wife’s Thoughts on Linux

Custom Wedding Cake Topper made by Esther Taal: http://www.fliepsiebieps.com/

Right after the start of August, my wife finally had enough of Windows. Her computer crashed, and it was the last straw. I convinced her to try Linux (Ubuntu specifically).

A couple of days ago, I asked her to write me up a small little blurb on what she thought so far. I thought that what she wrote was perfect, so I’m just going to paste let it stand on it’s own merits!


My first impressions of Linux (on my computer)

To start with a little bit of a background, I’ll tell you a little bit about the reasons why Linux has taken up residence on my desktop machine, and what sort of “prior” experience I had with it. I can’t say that I was ever 100% delighted with Windows, and despite the frustrations I’ve experienced with it, Windows has done what I needed and it was there (i.e. it came installed on my computers, ready to go). My games and other applications ran on it. A few things I bought “after market” for my computer, like a TV capture card or somesuch had to be tinkered with a fair bit, but they worked eventually in Windows. It has been this way for me for nearly two decades.

Fast forward to the past 9 months or so. I bought my newest computer when the one before it up and died (in all actuality, the motherboard probably went out, but it was about time for a new one, so why not). It started out that my internet connection would cut out from time to time. That got really irritating after a while, and when my computer died again (with it being less than 6 months old), it was replaced with a new motherboard and all was supposed to be right with the world. Wrong. My internet would still go in and out, and it looked like an issue with the wireless internet adapter. That was, until Mike suggested I try out a Linux bootable CD just for kicks and giggles. And the internet never went out. Shocking.

I’m not afraid of Linux. I know better than to think that Linux is all command line, all intentionally super user-unfriendly, and only designed for computer techy geeks. I mention those preconceived notions because when you mention Linux to someone who has no idea what it is, they just assume that it’s non-graphical and does something really weird. So, again, I’m not afraid of Linux. I’m lazy. I’m too lazy to change off of what was just there and what was working. It doesn’t make a whole lot of sense, because I had to put a lot of work into making things “go” in Windows, so why would I be afraid of putting in the same amount of work to making things “go” in Linux? I saw my husband with Linux on his machine, and he began playing all of the games that he’d had in Windows. He was starting to sell me.

The breaking point was when my Windows side was not holding a connection to the internet, and it was becoming more of a pain and a time suck to get basic tasks done. Knowing that I wasn’t totally ridding myself of the Windows side, I just said…do it. Mike…do it. Put Linux on. Make it work. So he did. Now here are my perceptions.

Speed: Yeah, there really is no contest. My computer booted Windows pretty quickly (usually), but it boots Linux even faster. I didn’t think that was possible. It loads just about everything just as quickly, if not more so, than Windows. In terms of speed, it also doesn’t seem to slow down when I stress programs out. I’m notorious for having 20-30 different Word/word processing documents open at the same time while grading. Simultaneously having at least a dozen tabs in Chrome going. Throw in a couple of PDFs and maybe a spreadsheet, and that usually slows things down on the Windows side, but I don’t notice a whole lot of slow down on the Linux side.

Programs/Applications: There are a lot of spiffy little applications that go with my Linux side. I think they’re actually a lot easier to get a hold of than something that would be an equivalent in Windows. Little widgets, things for desktop customization and things to make your desktop more streamlined and clean. Honestly, my desktop has never looked so clean (and no, it isn’t because I just haven’t cluttered it up yet!).

OK, now on flip side of things, possible negatives. Ubuntu comes with (I think) Libre office, which has had some quirks (as in, it isn’t Microsoft Office, and although close, it has mangled a few documents, made speakers notes invisible in some presentations, just to name a few). I play a few games, and I know my husband has figured out ways to make them work, those modifications aren’t on my system (yet), and they took a bit of research to figure out. As I said, I play a few games, and rarely, but it could be a bigger problem for those who have a bigger variety of games that they play (that were designed for Windows primarily).

Interface: It doesn’t look like Windows, and there are some differences for those switching over from Windows. Nothing major. There’s no big Start/Windows button. I use alt-tab a lot, and that does work, but a little differently (I actually like the Linux function better). That’s all I’ve got there.

So my initial impression is that it works. That is more than I can say for the Windows side. The speed is faster, the interface is cleaner, and the ability to customize things to look how I want them to look is there and easy to play with. Only downside I see now is that I want my Star Trek Online, The Sims, or Civilization V to run, but no big deal.

Mike asks how it is working for me, and I can see how giddy he is waiting for my response (because he’s converted another…LOL!). I’m not one to get all super excited about my operating systems, but he should know that he’s got a winner on this, even if I’m not going all crazy excited about it on my system now. I’m glad it works. If it makes my husband all happy inside, that’s an added bonus :)

Florian Mueller is no Pamela Jones

pamelajones

Today both Google and Oracle submitted filings to the court detailing individuals that they pay to blog on their side. Google doesn’t pay anybody. Oracle pays Florian Mueller.

Rememberings of Pamela Jones

This whole court case brings me back to the SCO/IBM trial. SCO with grandiose claims, and no facts. It’s just like Oracle’s grandiose claims with no facts. I think that Oracle saw that parallel too, and saw the influence one person had over the SCO/IBM case. Pamela Jones, or pj for short. For those who are unaware, Pamela Jones was the founder of Groklaw. Groklaw covered legal news that was interesting to the free and open source software community. Of particular interest to the free and open source community at the time was the SCO/IBM trial, and Groklaw spent a great deal of time focused on it.

I shouldn’t say “focused”. I should say that Groklaw systematically destroyed any and all claims made by SCO. It really didn’t stand a chance.

History Repeating…. well Not Quite

Oracle must have remembered what happened to SCO at the hands of Groklaw. Rather than try to avoid that, they tried to turn it to their advantage. Oracle thought that if they had their very own Pamela Jones, they could easily take Google down. Enter Florian Mueller.

Mueller wrote some computer books in the 80s, and then did some publishing and distribution. He did some marketing, and founded a game company that went nowhere. After that, he campaigned against European software patents (failed at that too), and then had enough and focused on Soccer. His first post on his blog appeared on Saturday, April 3rd, 2010. Four months and change before Oracle sued Google for various copyright and patent infringement claims.

Mueller took notice of the Oracle/Google case right away, and wrote prolifically about it over the course of the case. Seldom was a positive thing said about Google. In April of 2012, Mueller decided that “transparency” was suddenly important and admitted to being on the payroll at Oracle.

Outcome of the Case

So how did things work out? Well, depends on if you’re a fan of Open Source, or if you’re Florian Mueller. Like almost every other venture Florian Mueller has been involved in, he failed. Oracle was decimated in the courts, and won only a tiny sum based on a Copyright that no one is even sure is going to be valid yet. It could be that Oracle walks away owing Google.

Why Didn’t It Work?

So, why did the this method work so well in the SCO/IBM trial, and work so poorly in the Oracle/Google trial? It’s all about the community.

Pamela Jones wasn’t interested in being known. She didn’t even tell people her name at first (she just went by pj), and there’s still only a handful of people that have met her. Florian Mueller has a big “ABOUT ME” page right on his blog with links to a brief but puffed up profile (“award-winning intellectual property activist-turned-analyst”). The profile even has a nice vanity picture where Florian looks like he’s got enough make-up on to walk the catwalk in Milan.

Pamela Jones was interested in facts. Florian Mueller was interested in lining his own pockets with Oracle’s money, and he was willing to do anything and say anything to do it.

Due to her honesty and integrity, Pamela Jones developed a loyal following in the FOSS community. Due to deep pockets Florian Mueller somehow managed to get an unexpected number of tech journalists and bloggers to believe he knew what he was talking about, at least some of the time. Despite that, he never got the community support that Pamela Jones did.

No, Florian Mueller turned out to just be another blow hard, and Pamela Jones knew he was on Oracle’s payroll long before he admitted as such.

In short (to paraphrase), I knew Pamela Jones Mr. Mueller. Pamela Jones was a friend of mine. Mr. Mueller, you’re no Pamela Jones. (I actually don’t know pj, but I wish I did.)

You’re Just Not Geek Enough

Sometimes I’m amazed at the culture I live in. It’s usually an amazing bunch of people who want to do nothing more than learn as much as they can and help as many people as possible. Every single one of these people is a geek or one kind or another. I’m usually pretty proud of that, but tonight I watched the video embedded, and I couldn’t help but be embarrassed for the community.

Nixie Pixel

If you haven’t seen the embedded video, watch it first. I wouldn’t want to spoil the ending for you. The video was made by a young woman named Nixie Pixel (I’m sure that’s not her real name, but live with it). Recently at a tech convention type thing she experienced some pretty nasty discrimination. People claiming that she’s not really a geek. She doesn’t really do anything for the community. To those saying this I respectfully reply, “Shut your damn mouth.” I watch her show, and I thoroughly enjoy it.

Confessions of a Teenage Pseudo-Geek

Not all of us grew up being beaten up by the football team with aspirations of living in our parents basements. That’s a stereotype. People love to stereotype people even if they claim they don’t (see, I just stereotyped people). Nixie Pixel isn’t a geek because she has a pretty face and girlie bits? I suppose I wouldn’t qualify as a geek then either.

While I meet the “male” part of the stereotype, most of the rest of my growing up doesn’t sound like a geeks childhood. I played on the front line of my High School football team, both Offense and Defense (American football). Personally, I liked Defense better. It’s much more fun to run over the guy with the ball than to try to keep other people from running over the guy with the ball. I was on the track team too. I threw shot and disc, and placed top 10 in the state. I even swam on the Swim Team. I wasn’t as good swimming, but I made State every year. There were a lot of kids that were worse.

My family got our first computer when I was a Junior in High School. We only got it then because I saved up the money I made Life Guarding and bought it myself. My parents thought that computers were a huge waste of time. They still do actually. I was always the kid running rogue programs on the Commodore 64s in the store when the salespeople turned their backs, but I never had one myself. I only really started to learn about computers after a help desk tech suggested I format my hard drive because the sound didn’t work on that first computer. I took his advice, not understanding that I should back up my software first. It took me over a month to find the right software and drivers to get it back up and running again (there was no Internet at the time). Even after I’d done all that, the sound still didn’t work (turns out I plugged the speakers into the wrong port).

Does this sound like a geek to you?

It does if you remember that being a geek is about what you’re into, rather than what you look like or what your history is. My junior and senior year I spent my lunches in the library or the computer lab learning as much about computers as I could. I remember one day the Quarterback finding me in the computer lab after lunch and giving me this exasperated look as he asked me, “Stone, what are you doing? What do you think is going to take you farther in life? Football, or computers?” The look I gave him must have been telling because he looked honestly surprised. I didn’t even answer him but he still said, “Oh.” After High School, he ended up starting his own business doing computer aided drafting, and he’s doing rather well for himself. I guess he got the point.

What is a Real Geek?

A real geek has nothing to do with what you look like. The definition of “geek” is:

A person with an eccentric devotion to a particular interest: “a computer geek”.

Just because they include “computer geek” in the definition doesn’t mean that computer geeks are the only kind. My brother is an English teacher, and he’s an English and Literature geek. Seriously. My wife is a Biology geek (she has the PhD to prove it). My Dad is a carpentry geek. He’s almost 90 years old, and he still goes out to his shop every day.

A lot of years went by where being a geek was considered a bad thing. Now, that’s changed. It’s rolled over to be a badge of honor. It’s a shame that some of the people who were stamped with the term when they didn’t want it now want to deny it to people who’ve earned it now that it’s not such a stigma.

Personally, I think it’s because of their looks (here’s me stereotyping again). They see a beautiful woman, and they’re taken back to some girl that they never even tried to get rejected by in High School or College. Someone like that can’t possibly be in the Geek Club. That conclusion is stupid, and it lessens the members of this community when you go blabbing that kind of crap where it can be heard by humans.

How about we try to judge people by what’s going on between their ears instead of what’s in their pants and under their shirts?

OK, I’m done now. If you’d like to yell at me and tell me that I’m just not geek enough because I played on the football team, feel free to do so in the comments section below.

Samsung vs. Apple: I’m Already Bored

Bored bored bored bored bored bored bored bored boredSo, the Samsung vs. Apple trial started yesterday. I really wanted to pay a lot of attention to this one because it’s being hyped and hyped as this really big deal. So I skimmed the news stories about it, and I diligently read all about it. That lasted all of about 15 minutes before the monotony got the better of me. Two days into it, and I’m already bored out of my mind.

Apple had their opening statements.

Samsung had their opening statements.

Samsung released information to the press that the judge said couldn’t be in the trial.

Apple whined about Samsung releasing information to the press that the judge said couldn’t be in the trial.

Samsung says that the information released was public information.

It’s all the same back and forth. Now Apple is seeking emergency sanctions against Samsung for leaking  public information to the press. I don’t get that at all. IT’S PUBLIC INFORMATION. I’m not a lawyer, but how is it that Samsung can be sanctioned for releasing information that is not secret in anyway? If someone is a lawyer who is reading this, please please PLEASE explain this to me in the comments.

I’m not sure how much of this kind of news I can stand. Seriously. It’s like watching a shoving match on a playground. A lot of words, very little action. In the end, someone just might end up with a boo-boo. I say “might” because pretty much everybody knows that no matter what decision is reached, the loser is going to appeal. Apple wins, Samsung appeals. Samsung wins, Apple appeals. Then we get to sit through this same load of crap all over again. If I’m bored of it now, what is it going to be like in 6 months?

 

Raspberry Pi Getting Android 4.0

If you’re a fan of the Raspberry Pi, you’re about to love it even more. It was announced yesterday that Android 4.0 (Ice Cream Sandwich) is almost done being ported to the Raspberry Pi.

This is great news for the Pi. Android is in a unique position to make use of the Raspberry Pi’s hardware. Since Android is designed with mobile in mind, the 700MHz ARM processor found on the Pi has more than enough power. Hardware-accelerated graphics and video are also working.

With very little effort and $25 plus shipping, you can have a working Android game system for your TV. Access to both Google Play and the Amazon App Store will guarantee a ton of apps you can easily install on the Pi.

Currently, the implementation uses a different kernel and VideoCore binary image from the one available on GitHub. They’re looking into converging the two code lines. As soon as they can, they’ll be releasing the sources to the public.

I’ll update this post as more information becomes available.

Will Your Next PC Be a Google Nexus?

Will your next PC be a Google Nexus? A recent “ask maggie” column addressed the question, “Is Google headed toward an Android Nexus PC?” Her conclusion was “when Google challenges Microsoft or Apple on the traditional computing OS battlefield, it won’t likely be armed with Android.”

I disagree.

Where Android and ChromeOS are Today. It’s Competition Too.

Today, Android has taken the dominant position in smart phones, and the number two position in tablets. It’s advancing at a break neck speed, and has easily surpassed it’s only real competition. It’s spread to a significant number of other platforms, such as music players, car stereos, TVs, gaming systems, and even wrist watches and reality augmentation devices. No other operating system in history has done something like this.

ChromeOS has only just begun, and has seen amazing advances since it’s introduction. It started out as a glorified browser, and now has added application functionality and remote storage capability. It also has the ability to run applications through Citrix, making it a feasible stand-in for a Microsoft or Apple based operating system anywhere in the Enterprise market.

Windows has stagnated over the last decade, accomplishing very little of value considering the ten years it’s had to do it. A recent Vanity Fair piece referred to it as “Microsoft’s Lost Decade“. Windows got some flashier graphics in Vista and 7, and then traded them for a travesty of a user interface in Windows 8.

Apple hasn’t done much better on the desktop than Microsoft. OSX has added an App Store type interface, but other than some graphical changes, there’s no significant changes to OSX since it’s arrival in 2001.

Our desktop operating systems have stagnated. Improvements are measured in baby steps rather than leaps and bounds, if they’re improvements at all.

ChromeOS or Android? Where does Nexus Figure into this?

The question that has to be asked now is, why Android? It’s not even a desktop operating system. ChromeOS is. Shouldn’t it be ChromeOS that replaces Windows and OSX, not Android?

True, ChromeOS is the desktop operating system. Android has always taken it’s position on other kinds of systems, never the desktop.

It really comes back to why Google decided to do two different OSs to begin with, and what their plans were.

The Nexus Consolidation.

The thing that no one seems to be taking into consideration is Google’s plans. Maybe it’s because it’s not convenient, or maybe it’s just because their memories are short. We need to think back to 2009. In an interview with CNET, Sergey Brin was asked about ChromeOS and Android, and why the two seperate Operating Systems. His reply was that Android and the Chrome OS “will likely converge over time.” In fact, the two operating systems share a common Webkit and Linux foundation.

Today, we’ve already seen Google add the Chrome Browser to the Android operating system. Much of the ChromeOS functionality is already incorporated with Android Jellybean. All that remains is the right hardware to bring the two operating systems together.

This is where Nexus comes in.

Nexus systems are designed by Google to Google’s specifications. It could be that the first Nexus “PC” could be a hybrid device, similar to the Motorola Atrix or the ASUS PadFone. We’ve already seen such a hybrid type system with Ubuntu for Android. When in “phone mode”, it’s Android. When it’s docked, it becomes a more desktop type system. Google’s moves to combine the functionality of the two OSs would make a move like this easy. Both systems are already Linux. Both systems already have use WebKit. Both systems are already Google.

The Nexus Solution.

A Nexus based PC would solve any number of problems with the PC. Files would be stored in the cloud, making it infinitely more secure and easily backed up. Lost hardware could be shutdown and wiped from a distance. A dock at home and a dock at work would be all that’s required. Your pocket is your new laptop case. Any location with a dock is a your home workstation.

Google has already gotten themselves into a position to implement a consolidation of Android and ChromeOS. All that Google needs now is the hardware. This is why your next computer just might be a Nexus computer.

Tux: Modern Olympic Champion

Tux: Olympic ChampionThe Olympics are known throughout the world and have been going on for centuries. The first Olympic games were thought to have occurred in the sixth century BC, and it consisted of foot races only. It started as a race for young women to compete for the honor of being a priestess for the goddess, Hera. A second race was run for young men for the right to be a consort for the priestess.

A lot has happened since then.

This year, the Olympic games are being held in London, and champions from all over the world are attending in the hopes of taking home Olympic gold.

One champion there is nothing like the others, and you won’t see in any of the events. It’s Linux.

When the Olympic Games needed a server to host their web page, they chose to rely on the same server that anyone in the world can download free of charge. Linux. The web services are provided by Apache and PHP, the database by MySQL. Like other Olympic competitors, the demands placed on Linux will be high. The website will be responsible for distributing stats for all of the events, receiving their information and making it available to other organizations to broadcast. That includes the event video distribution organization. You know all that information you see on the bottom of your television screen during the broadcast? That will be coming from the Linux server.

Don’t be confused though. There were other runners in the race. The Olympics could have chosen a Microsoft Server, or a traditional Unix server. They could have run their DBs on MSSQL or Oracle, but they didn’t. They chose a LAMP server.

To me, this shows a great deal of faith in the Linux environment. The Olympics chose to use the same software you can download from the Internet free of charge for their mission critical needs, and the world is watching. If Linux stumbles, the world will see. If Linux runs it’s race with speed and grace (which I am pretty sure it will), it will be a great victory for Linux.

Here’s to Olympic Gold in 2012.

Are We Overworked?

First of all, if you’re looking for Linux, this posting isn’t about it. Sorry. Today, I’m feeling overworked, which has very little to do with my operating system of choice.

First, a brief little anecdote.

This morning my kids drug me out of bed just shy of 9 minutes before my alarm clock was suppose to ring. They were a little rambunctious, so we played a bit before I managed to divert them with breakfast so I could go take a shower. I was ready to go 15 minutes later. Showered, shaved, and dressed. Got the kids in the car was headed off to work. My kids unfortunate timing this morning led me to be a few minutes later than I usually am. I got my first call of the day while I was still in the car. Of course, I told them I’d take care of it as soon as I was in the office as I wasn’t able to take care of it from the car. Of course that’s not entirely true as I could have sshed to the server on my phone and taken care of it, but then I would have had to stop driving. I rolled into the office about a quarter to 8:00.

I planned lunch with my former boss (I’d been reassigned to another department due to some restructuring), but I ended up having to work on something that came up at the last minute, so I grabbed a frozen burrito out of the company fridge and ate at my desk. I finished up work tonight about 8:30 after resolving an issue with a stored proc.

After work, I went for a run. As an aside, I know that many people love to run. I hate it with a fire that burns brighter than a thousand suns. Literally. I do it because if I can force myself to run, there’s not much else in my life that I can’t force myself to do. Over the course of my run, I thought about an issue I’m having at work.

How stupid is this?

I make an OK salary, but it’s sure as heck not enough to warrant a 12 hour day. The thing is, this isn’t an unusual day for me. I’ve talked with other people who are in the same line of work as I am, and it’s not unusual for them either. I’m not the only one pulling this kind of stuff in my office. Not even close.

I was flipping through channels on my radio the other day, and I ran across (involuntarily) that old Dolly Parton song, “9 to 5″. That whole song is complaining about how rough that 9 to 5 job is, but the first thought that crossed my mind was, “Man, I wish I worked 9 to 5.”

What do you think? Are we working too hard, or am I just being a whiny loser? Let me know what you think down in the comments.

Fun with File Permissions – Part 4

And we’re back for Day 4 of the Fun with File Permissions Nerdathon! On Day 1 we covered our standard DAC permissions. On Day 2 we covered getfacl and setfacl, and on Day 3 we covered lsattr and chattr. Today we’re going to close out our run by taking a quick look at the sticky bit!

I’ll admit right out of the gate that I know the least about the sticky bit than any of the other day’s topics. If you see something I get wrong, don’t hesitate to correct me in the comments. I’ll update the post with the correct information.

So stick bits really started out in Unix in the 70s. You can still find pictures of it with big hair and bell bottoms. The original idea was that it was meant to be used on executable files. When the bit was flipped, the executable file would stay resident in memory so that it could be quickly loaded again. There were issues with it, like when you had to update those executables, you had to remove the bit, upgrade the file, and then replace the bit.

The functionality evolved. Linux has never supported this implementation of sticky bits.

Today, sticky bits are used to protect files from being removed when you give another user full rights to the file. So, how does this thing work?

Setting the sticky bit is easy. You just use the chmod command just like you did back on Day 1:

chmod +t test

This will set the sticky bit on a file, or in my case directory. Doing an ls -al from inside the test directory you’ll see this:

mike@PreciseApex:~/test$ ls -al
total 28
drwxrwxr-t 2 mike mike 4096 Jul 20 20:15 .
drwxr--r-- 56 mike mike 16384 Jul 20 19:20 ..
-rwxrwxrwx 1 mike mike 0 Jul 20 20:15 file

In that directory, I’ve created a file called (originally), file. You can see that file has full read write execute privileges. You can also see the permissions on the . directory above oddly end with a “t” instead of an x or a – like you’d expect. That tells us that the sticky bit is active. If you were using the sticky bit on a file, a lowercase t would indicate that it’s not executable, and an uppercase T would indicate that it is.

So, let’s try to kill this file.

I login with my wife’s account (shhhhhhhh), and do an ls -al in the same directory:

amy@PreciseApex:/home/mike/test$ ls -al
total 28
drwxrwxr-t 2 mike mike 4096 Jul 20 20:15 .
drwxr--r-- 56 mike mike 16384 Jul 20 19:20 ..
-rwxrwxrwx 1 mike mike 0 Jul 20 20:15 file

Things look pretty much the same in this account. You can see the lowercase t on the end of the directory permissions, but other than that, it looks like I’ve got full rights to file. I can open that file, modify that file, and save that file. No problems, even from my wifes account. Where the sticky bit comes into play is when I try to delete the file. An rm -f results in:

amy@PreciseApex:/home/mike/test$ rm -f file 
rm: cannot remove `file': Permission denied

Dun dun dun. Permission denied. If I do the same command from my user?

mike@PreciseApex:~/test$ rm -f file 
mike@PreciseApex:~/test$

No errors. The sticky bit will allow the owner of a file, and root (or a user with equivalent rights) to remove the file. If you want to remove the sticky bit from a file, it’s as easy as:

chmod -t file

And so our four days of Fun with File Permissions come to an end. I had a great time writing about this. It seems on the surface like it would be such a dry subject, but there are so many fun intricacies that it’s so exciting to experiment with. Please, if I didn’t cover something that you could have liked to see me cover, please mention it in the comments.

Fun with File Permissions – Part 3

Welcome to back to Mike’s 4 Days of Extreme Geekery (yes, Geekery is a word I just made up)! On Day 1 we talked about traditional Unix file permissions. On Day 2 we talked about setfacl and getfacl. Today, I want to go over chattr and lsattr!

What these two commands do is pretty self explanitory. lsattr shows you the attributes currently on a file or directory, and chattr changes those attributes. You use either + or – to add or subtract attributes.

 mike@PreciseApex:~/mike/test$ lsattr mike
 -------------e- mike
 mike@PreciseApex:~/mike/test$ sudo chattr +i mike
 mike@PreciseApex:~/mike/test$ lsattr mike
 ----i--------e- mike
 mike@PreciseApex:~/mike/test$

The first time I found about the file attributes in Linux, I thought right away, “Hey, this is kinda like DOS!” I know what you’re thinking, and trust me if I could kick my own ass for saying that, I would. It turns out that the file attributes in DOS/Windows suck compared to the Linux version (like most things in DOS/Windows when compared to their Linux counterparts). Quick comparison will show you that DOS/Windows has 5 attributes. They are:

 R: Read Only
 A: Archive
 S: System
 H: Hidden
 I: Index

What each of these attributes does is, well, who cares. We’re not talking about DOS/Windows. The Linux version of file attributes is significantly more advanced. Available file attributes are:

 A: The date of last access is not updated (only useful for reducing disk access on laptops)
 S: The file is synchronous, the records in the file are made immediately on the disc.
 a: The file can be opened in addition to writing
 c: The file is automatically compressed before writing to disk, and unpacked before playback.
 D: The case is synchronous (see:S)
 d: The file will not be saved by the dump
 I: Can not be fixed by chattr only listed by lsattr
 i: The file / directory can not be amended, deleted, renamed or linked symbolically, not even by root.
 j: Mount file system with "data=ordered" or "data=writeback", and files are written to the log before the file.
 s: When the file is destroyed, all data blocks are being released to zero.
 T: Usable from version 2.5.46 kernel.
 u: If the file is deleted, its content is saved, it allows the user to seek its restoration.
 E: Experimental, can detect an error of compression can not be fixed by chattr, but can be listed by lsattr
 X: Experimental shows that the raw data to a compressed file can be accessed directly.
 Z: Experimental, provides information on the status of a compressed file.

As you can see, there are quite a few more file attributes that do significantly more. Some of these are more interesting than others. I’m only going to touch on a few of them that I find interesting. Of course, consult your man page for more information on the others.

The +A attribute basically locks that last accessed time to what it’s currently set at. Set this attribute, and you’re fill will be frozen in time. No more accesses will be recorded.

A really interesting one is the +c. This is an on the fly compression. If you add the +c attribute to an empty directory, everything you write to that directory will be compressed as if you stuck it in a file using gzip9 compression. One odd thing about it is that ls -l doesn’t show a darn thing. You can’t see the compression. I’ve heard that you can see it with a du, but when I was playing around with it, I didn’t see that.

I have to say that my favorite is the +i. I’m not sure what the i stands for, but I’m going with “Immortal”.

mike@PreciseApex:~/mike/test$ lsattr mike
----i--------e- mike
mike@PreciseApex:~/mike/test$ rm mike
rm: remove write-protected regular empty file `mike'? y
rm: cannot remove `mike': Operation not permitted
mike@PreciseApex:~/mike/test$ sudo rm mike
rm: cannot remove `mike': Operation not permitted
mike@PreciseApex:~/mike/test$ sudo rm -f mike
rm: cannot remove `mike': Operation not permitted

With the +i attribute set, this file can not be deleted. Not by the owner, not by root, not by anybody. You have to be root (or equivalent) to set this attribute, so no messing with your admins on servers you don’t own, but still fun.

The last two kind of have to be taken together. +s and +u. If a file with the s attribute is deleted, the blocks where it lived are zeroed out and written to the disk. Bye bye file. Good luck retrieving that one. In contrast, the +u makes sure that the files information is saved just in case you want to undelete it later. +s and +u are opposites. Oddly, you can set both flags on a single file. Not sure what that would do. If you know, throw it into the comments.

That’s an extremely high level view of the file attributes in Linux. I could probably spend weeks on these two commands going over what they do, but I have the feeling that I’d probably lose most of you in that amount of time. Tomorrow, I’m going to take a look at sticky bits! Bound to be fun!