The last few days have been…interesting to say the least. Firstly, the weather struck…with a vengeance. It’s the beginning of April and we had an ice storm. What’s interesting is that at work they declared a stand down at 2:30 to allow everyone to make it back home. Of course, since I have to wait to pick up my Dad, who leaves work after 5:15 I couldn’t take advantage of that offer. [sigh]. I left however at 4:30 and…then the hell started. First, I found out that my Dad had conveniently ‘liberated’ the ice-scraper from its vanny prison. Since it had already been pelting freezing rain, this meant that I was stuck with a van whose windshield was caked in ice. Say goodbye to antifreeze + windshield wipers. Then, a drive which normally takes 25 minutes took 50 – including a 15/20 minute wait to turn left onto Keele. Joy. A drive which usually takes 1.5 hours took over 2.25 hours.
To make matters worse, the Corolla wasn’t able to handle the slush very well, which meant I had to postpone my event… Bah. Useless.
Today. Hmm. I’m not sure what to make of today. Kinda bittersweet. First, I did quite a bit of work with PAM today… Worked with Quinn. He got the LDAP stuff running properly and I did a _lot_ of tweaking client side with the PAM rules. And then…at around 3:00, the magicalities happened :) It worked! We had a centralized authentication system using LDAP and PAM working. It might sound simple – but it wasn’t! The PAM documentation while complete was missing a lot of info about options. We had to google extensively. Same thing LDAP server side. Besides, nobody seemed to be doing exactly the same sort of stuff we were. To wit:
- Have all user lookups performed using LDAP
- Machine should still work in disconnected mode
- The LDAP should be looked up _first_ not second
- Passwd should change both LDAP and the local passwd file.
- Make home dirs if the user didn’t exist.
We didn’t get everything working without hitches. I was unable to get pam_unix to use_first_pass from pam_ldap while changing passwords, but I’m willing to live with another prompt… At any rate, we tested it – both in connected and disconnected mode – and it worked!
It was a joyous moment – I felt so happy. The idea that I had thought up had been brought into fruition. This is where I have to especially thank Quinn. it is _only_ with his help that this entire thing has been possible. He’s been a big help and he’s taking the chance to do something and help me out on an idea that may/may not have worked – a situation in which most others would not have made the same choice. For this, I am very thankful. This has also taught me the value of teamwork. Without Quinn’s help this project would not have been finished at all… So again – a big thanks Quinn!
It’s wierd – everything works as planned. I had originally envisioned a centralized authentication system that a bug tracker hooked into. We could then hang more and more pieces on it as required. For example – I think an internal Jabber server would be very useful… Quinn used the server to implement BackupPC – a very neat backup tool. It actually pools data between different backup instances – which you can imagine, saves quite a bit of space. I was amazed at the space reductions – we’re talking something like 80% or so. Which is very understandable in our environment – where the vast majority of code checkouts will be common across people’s accounts. At any rate, we’ve done work to sync all the PC’s passwd files up, and have cron jobs running to change the bug tracker database with any added/removed/modified users. The bugtracker uses the central database user list and store, so no need to set up any user accounts…just use your Linux account and go…
The bug tracker has been a pleasure to work with. And as a result I have grown to like python a lot. It’s syntax is extremely nice and I have to say this especially – it does not get in the way of what you’re trying to do. It may sound weird, but I have a much easier time programming in python than any other language. It’s very attainable.
We have this working on 1 client pc, but come Monday, we plan to roll it out onto all the Linux boxes one at a time. Shweet.
But where’s the bitter part you say? Ah well…hmm. I guess I have to start with what happened today morning. We live in the ‘burbs, and being as the ice storm came in April, all the contract plows weren’t there. Now, at the best of times, the road is barely plowed. Today it was a mess. Ice underneath and a layer of snow on top. My sister drives the Corolla to school and my Dad told me to back the car out and have turn it around so that the hood faced the road. This was to ensure that my sister would have minimal problems making it out. So…?
So I tried to back it out – and promptly got stuck right in the middle of the road. Tried to move the car – but it was jammed tight. Got out shoveled. Back in, revved the engine. Rinse. Lather. Repeat. Even in lowest gear the car couldn’t move at all. Finally, with a lot of pushing, got it moving down the road. Created a big loop and got stuck at an interesction. Revving again – managed to dislodge it before I blocked anyone. Reversed halfway up the driveway before the car came to a dead stop again. Walked out and asked my Dad to check if my sister _actually_ had school that day. Said that, at this rate – she’d never get out of the driveway and I’d never make it to work. Recommended that we lock the car, leave it outside and drive her to school ourselves.
No. My Dad wouldn’t do that. He wanted the car back _inside_ the garage. Ever tried to coax a Corolla up a driveway covered with snow and ice? It’s damn near impossible. 10 minutes later after a whole lotta pushing, spinning tires, burning gasoline (I swear) I finally got the car inside the garage.
The Peel District School Board cancelled all schools today. !@#@*
Then, when I got home, I had to help my Dad shovel the snow ridge from the front of my driveway. Dug the shovel deep in the snow, pulled it up … and pulled a muscle somewhere in my back. Oh damn did it hurt. I felt like someone was jamming a poker into my back. I was forced to cancel my activites today too.
It still hurts like hell – especially when I turn… Freaking hell.