OpenVZ and Fedora Core
OpenVZ can have various heinous problems with udev. Most often, you cannot enter the VZ from the admin, and you cannot connnect via SSH.
beast / # vzenter 51 enter into VE 51 failed Unable to open pty: No such file or directory
In Fedora you can make a simple change to /etc/udev/makedev.d/50-udev.nodes
--- 50-udev.nodes~ 2008-01-10 16:00:08.000000000 +0000 +++ 50-udev.nodes 2008-07-30 15:44:07.223092644 +0000 @@ -1,4 +1,5 @@ # These device have to be created manually +ptmx tty1 tty2 tty3
e.g. Simply just add ‘ptmx’ to the file someplace. This is fairly simple and seems to work very well.
More on the mofo track.
You have to give Microsoft credit. They were 66% correct. That’s about 150% better than normal. Seriously. Todays fun is imported from the land of broken-wmi-crap.
The Bug
After the super-exciting side affect of an asshat package manager, a Microsoft standard-issue-busted-software problem has cropped up:
Event Type: Error Event Source: MSExchangeSA Event Category: Monitoring Event ID: 9097 Description: The MAD Monitoring thread was unable to connect to WMI, error '0x8004100e'.
The Microsoft Article purported to fix this is 33% wrong. They list the major components, and the MSExchangeSA error does indeed subside. Side-note: I found that I had to re-do the steps listed in the TID - AFTER a reboot. ???
The Tragedy
However, I discovered a new pain after my joy: the Message Tracking Center returns WBEM error 0x80041010. Translate this, “missing wmi class”. I did a number of searches (lots of hits from mis-informed TID-spouting ‘do-holes) and finally located this article in Google Groups. He walks through re-creating WMI, and other neat things. I skipped ahead, as I had done all of this before.
I followed his testing advice - I couldn’t get the remote testing to work - local testing showed that root\microsoftExchangeV2 only had 73 out of 74 classes. Frustrated I briefly considered a by-hand comparison with a functioning server. I chose to plow ahead, based on this guys informative nature and clear expertise - and it paid off:
The Missing Command
mofcomp.exe -n:root\cimv2\applications\exchange “c:\winnt\system32\wbem\msgtrk.mof”
In my case the command was actually:
mofcomp.exe -n:root\cimv2\applications\exchange msgtrk.mof
The Apathy
This worked when Microsoft Failed. I feel semi-indifferent. I think this is Microsofts chief tactic for dealing with “haters who want stuff that works”. Entropy from the titanic marketing efforts makes the efforts get them to change them almost worthless.
As a side note, I did submit feedback at the support site. Maybe someone will see it?
biggest mofos on the planet
I hate Microsoft. I truly do. These assholes are simply unbelievable. I cannot articulate the fury and frustration which I feel at this moment. Seriously. The insanity of whatever policy drives them is beyond the measure of intelligent people.
I cannot write a scathingly witty post about overcoming them. I have redacted this blog once, but this is beyond endurance.
A client has a Windows 2003 SBS network. They started out on “Volume Licensing”, and the previous admin upgraded to a “2003 SBS R2 Retail” license. Let me tell you - THAT was a joke. You pay Microsoft to run an install off of a CD labeled “R2 Technologies”. This ~$400 investment runs in about 10 minutes or less. The largest change is the “2003 SBS R2” BRANDING. The f*ck*ng BRANDING. That’s right - half a dozen pictures which appear in places.
Whatever, we commenced the upgrade and transition to the Transition Pack. This leveraged our current investment, and actually allows us to virtualize. The problem is that the Transition Pack doesn’t ship with an Exchange 2003 cd.
I do not have enough swear words to make this pain go away. Anyone who knows ANYTHING knows you cannot remove DS from an Exchange Server. You must first uninstall Exchange. Then you may remove/demote/whatever. Then you simply reinstall Exchange.
In our case, we want to move Exchange to server Two, DS to server Three and deprecate server One. We cannot. We don’t have the media. The Exchange media which came with the SBS install requires installation on Windows 2003 SBS. Anyone who tells me I didn’t plan ahead and “see what I got” deserves to be anally raped by rabid coyotes.
This is so stupid and frustrating. I paid $1400.00 to get a two CD pack which migrates SBS 2003 to 2003 Standard. It also came with paper that allows me to migrate Exchange 2003. Oh, and the “rights” to “buy” media from a “fulfillment” center.
Ripping off a product managers head and sh*tt*ng down his throat is more like fulfillment here.
flac to mp3 1
I love flac files, and I always rip my CDs in EAC - straight to FLAC. The problem is that a couple months ago I was transfering some of my older music to my MacBook and I discovered something awful. The horror known as iTunes doesn’t grok Flac. I failed to find a single plugin.
First, I sought to convert my FLACs to ALEs - because it’s rad. But I gave up. I finally discovered someone already having written what I wanted - in python - w00t.
flac2mp is an awesome little script. He got it from “ogg 2mp3”, and I like it.
MSSQL - Relocating Database Files
There are a ton of articles, esp from Microsoft, regarding moving SQL Server data and log files. After our storage expansion we wanted to move the data and logs for several databases, all of which participated in replication by one means or another.
I didn’t find any articles specifically mentioning what I was doing, however, I decided the best approach was to test moving the files in the same way you relocate MSSQL System Databases. It worked, and I thought I would mention it here.
If you’ve never done this, it’s quite simple.
- Locate the files (and logical names)
- Alter Database to change the new location on next startup.
- Stop MSSQL
- Relocate the files (locations form step 1).
- Restart MSSQL
Locate
SELECT name, physical_name AS LogicalName, FileName
FROM sys.master_files
WHERE database_id = DB_ID(N’REPLDB0’);
Alter
ALTER DATABASE REPLDB0 MODIFY FILE
( NAME = ‘REPLDB0_Data’, FILENAME = ‘D:\MSSQL\Data\REPLDB0.mdf’ ); ALTER DATABASE REPLDB0 MODIFY FILE
( NAME = REPLDB0_Log’, FILENAME = ‘E:\MSSQL\Logs\REPLDB0_1.ldf’ );
Relocate
Stop MSSQL, using the paths already seen, move the files and restart MSSQL. Just don’t screw it up.
bash.org - Election Year Wisdom
Most people think that bash.org is just a collection of useless quotes. IRC is a seething underbelly of stupidity and intellectual mayhem. However, it appears that that the vacant stares actually assist in the discovery of blinding insights.
Democrats Candidates in general
There are more Bush related quotes than can be read in a single day. (Finding them is the difficult part, bash.org people have lots to say about ‘bush’ as opposed to Bush.) Cheney quotes are fairly prolific as well. However, I think that this quote really sums up the feelings of the community and the moderators for the current administration.
In short, according to Bash.org: Democrats are racists or sexists, Republicans aren’t smart, (as Bush would put it:) “the current administrations is idiots”, oh, and we’re all doomed.
Idiots in Power
Why is it that normal people don’t run more successful projects? See this ticket regarding Paludis. Paludis is a C++ replacement for Portage. Portage is a squirrels nest and even though the ebuild system is pretty nice, portage itself is pretty lame.
Disclosure
In the interest of fairness, I would point out: The Paludis site flatly refuses to say anything about the project. Therefore being run by a complete asshole isn’t contradictory to any previous statements.
Summary
The gist of the ticket is that Paludis doesn’t support certain types of parallelism and the developer(s) refuse to do anything sane in order to prevent, notify or clearly document the danger of it. This danger is apparently readily realized by users.
Examples of sanity might be:
- Warn people it’s not supported.
- Make some sort of method for restricting parallel execution.
- ADD A NOTE TO A FAQ
Evidence
What does the Paludis think of a notice about the dangers of parallel runs of the software they publish:
chaoflow: “What about preventing parallel paludis runs or at least a FAQ or some other way of explicitly telling people, that parallel paludis operations are not supported?”
ciaranm: “Preventing parallel runs is a security hole. And an FAQ entry is pointless – parallel executions are fine so long as they stick to certain operations.”
chaoflow: “Wouldn’t it be nice to have documented, which operations are fine for parallel execution?”
ciaranm: “Not really. If you don’t already know, you shouldn’t be doing it at all.”
Very Dense
This is clearly beyond the scope of Paludis. See this conversation:chaoflow: “What about preventing parallel paludis runs?”
ciaranm: “Preventing parallel runs is a security hole.”
chaoflow: “Could you elaborate on that?”
ciaranm: “It’s an inversion. A non-root user can obtain the locks and prevent root from being able to do anything for an arbitrarily long time.”
This stunning display of logic and intellect is what passes for success over at Paludis. Even I can think of a few methods to help prevent this:
- Make an override mechanism. Easy enough, right?
- Enable super-users to kill the offending process.
- Put the lockfile in a secured-location.
- Use shared memory, and make use of ipcrm to kill rogue locks.
- Observe that a security /hole/ involves some sort of exploitation of a system. A DoS involves prevention of normal operation. This doesn’t even make a legitimate DoS.
Blackhole
The stupidity doesn’t end there:
chaoflow: “And way way better would be some simple locking inside of paludis preventing bad things from happening.”
ciaranm: Paludis is not there to protect you from yourself.
ciaranm must see this as an incredibly clever way of saying “go f* yourself.”. ciaranm seems to be an incredibly dense idiot. Why is an f’d up system preferable to some logic which may lead to the inconvenience of cleaning up a rogue lock?
Paludis IS a security hole - It just might fuck up your system, if you run it in parallel with itself, but it certainly won’t try to tell you that. I am guilty too.
OpenVZ vs. Scalix
We win again. I wanted to run Scalix for a client, inside of a VE/CT/whatever, and I tried using Fedora Core 7 to do so. I was unable to make the installer work and didn’t see much in the way of help from Scalix. Here is a link to the Bugzilla page. (Login Required) Here are the important bits. Aside from discouragement I didn’t get anything from Florian… Nothing except responses that was. No one else seems to give a damn if I even exist.
Whatever. The point is that with some minor extra-effort, Scalix does indeed work inside of an OpenVZ container on Linux. My host OS is gentoo, running 2.6.18-028stab053.
The Scalix package is pretty great, just up the Java memory once you have it running. The instances (two) on a system shared by two different companies work great. We migrated to Scalix from Kolab. Outlook users (all two) are happy. Thunderbird users didn’t see too much of a change.
Yay for us.
Typo Hell... (straight out da ghetto)
Typo is a Rails app. Rails is a Ghetto. While I’m not sure what it has to do with torturing the Jewish people, I think that Zed might be a Jew. I digress.
Rails is clearly caught in a ghetto. It’s strange and suffers from strange documentation. One example of something well-known only to Rails people are the DB Migration steps:
- 1. backup your db
- 2. Install your update / new instance / whatever
- 3. issue “rake db:migrate”
It wasn’t known to me. Apparently it wasn’t known to most of the Internet. How did I find the magical command “db:migrate”? I found it with the same steps I used to find almost all things about Typo: I crawled through blogs and groups and everything else. I have never found a single site that had concise documentation. Everything is simply people blogging about how a particular problem was solved. I have never found any upgrade guides. This search also found me another goodie: purge your sessions table before the 5.0.3 startup.
I think that the entire Rails documentation process is based on hype. Either you pay attention to the hype, or you’re doomed. The way to understand it is to use it. The way to use it is either bloody or all-consuming. The hype is how the word is spread. Once I knew how to use the secret db:migrate, I found TONS about it.
Typo is the child of Rails. I couldn’t find an upgrade guide, but I did find an upgrade guy. David, the Nihilist, Gibbons. He is my Typo/Rails upgrade guy. He has worked with Rails and for a while was the best sysadmin that PlanetArgon ever had. David has helped me with more simple problems than I can count.
The last problem which I had was errant notifiers in Typo. I tried (and failed) to post comments. I tried to see what was failing. I turned on debug mode. Nothing. Not a damn thing. I went into settings attempted to disable notification. It didn’t work, but I didn’t notice. Still no debug messages.
Well, at length David did a little SQL magic.
update users set notify_via_jabber='f'; update users set notify_via_email='f';
Wow. Well, his history with Typo gave him something that I didn’t have: a mistrust for the admin interface. I don’t blame the Typo people for this crap, but I do blame the lack of docs for everything else. I guess it’s time to get out of the ghetto.
Evidence of What's Wrong with Java 1
I was literally looking for a “change-log” type document describing the differences between Java 1.4, 1.5 and 1.6. This was what I found.