Cheap Laptops Bad for Vista, Good for Linux

Microsoft, Linux, Open Source No Comments »

A few weeks ago, eWeek ran an article by Steven J. Vaughan-Nichols entitled “Cheap Laptops Bad for Vista, Good for Linux“. In the article, he talks about the number of cheap laptops that people are buying up that aren’t capable of running Vista — but are quite capable of running Linux just fine.

Working in IT at an .edu, this is something I’m all too familiar with. I wish our Help Desk had kept count of how many students had come to them for assistance with their cheap laptops running Vista. I remember just a year or two ago and we were aghast at people who were running XP on laptops with only 256MB of RAM. Now it’s Vista laptops with just 512MB of RAM that we’re seeing.

Last Friday, someone poked their head into my office to let me know that a man and woman I knew wanted to talk to me. When I went out to talk to them a few moments later, it was the same thing I’ve heard countless times before. They had a laptop running Vista and were having issues. Besides the usual “it’s slow” routine, they said it had become completely unusable after the latest round of Windows Updates (the neverending “reboot, BSOD, reboot, BSOD” cycle). The laptop had came with Vista and they suffered through it up until this point. I knew what was coming and I tried to avoid it, but I finally gave in. I told them I’d blow it away and install XP for ‘em.

I learned a long time ago never to accept payment from friends because when their laptops screw up again, they’ll expect you to fix it again — for free, of course. Since this was late in the afternoon on a Friday and I had plans for the evening, I gave ‘em the “I’ll do it, but I can’t promise when I’ll have it done” spell. That was fine with them; the laptop was useless anyways.

When I finally got around to working on it, I watched it boot up and was surprised — I don’t know why — to see it was a 1.7GHz Pentium Mobile sporting a whopping 512MB of RAM. Who in their right mind would try to run Vista on that!? Anyways, long story short, I blew away Vista, reinstalled XP, got it back to ‘em and they’re happy as hell — the laptop is running faster than it ever has.

Now, back to the eWeek article… Vaughan-Nichols goes on to talk about how any modern Linux distribution (such as Fedora) will run great on these laptops, and he’s right. Every since I started using Linux over 10 years ago, it’s been possible to run it on hardware that Windows would choke on. I get better performance from my much slower Linux machines than I do from my better equipped XP machines, and I’m much more demanding of the Linux machines.

I’d love to convince these people to use Linux instead of Windows, but I just can’t. To do that would be to volunteer myself to be their first line of “tech support” and I just don’t have the time for that. These people aren’t interested in tinkering with their PCs, they just want ‘em to work.

Ironically, that’s one of the reasons I’ve never been a big fan of “Linux on the desktop”. All that tinkering is great for a while, but it gets old pretty quick. I used to love to constantly tweak my Linux machines, always downloading, compiling, and rebooting into the latest kernel just moments after it was released. Once I started having real work to do, however, I cut that out. Now, like most consumers, I just want my computers to work so that I can get my work done.

That’s one of the reasons I just ordered a MacBook

Xen: 30 paravirt guests on a DL365

Virtualization, Linux, Open Source No Comments »
[root@jlgaddis-xen ~]# xm list
Name                                      ID Mem(MiB) VCPUs State   Time(s)
Domain-0                                   0      440     4 r-----   1834.7
xen_01                                     1      255     1 -b----    502.3
xen_02                                     2      255     1 -b----    512.3
xen_03                                     3      255     1 -b----    508.5
xen_04                                     4      255     1 -b----    508.2
xen_05                                     5      255     1 -b----    511.7
xen_06                                     6      255     1 -b----    513.6
xen_07                                     7      255     1 -b----    503.7
xen_08                                     8      255     1 -b----    508.9
xen_09                                     9      255     1 -b----    511.2
xen_10                                    10      255     1 -b----    507.7
xen_11                                    53      255     1 -b----     29.7
xen_12                                    54      255     1 -b----     32.0
xen_13                                    55      255     1 -b----     31.3
xen_14                                    56      255     1 -b----     37.9
xen_15                                    57      255     1 -b----     26.8
xen_16                                    60      255     1 -b----     46.5
xen_17                                    59      255     1 -b----     46.2
xen_18                                    63      255     1 -b----     38.0
xen_19                                    65      255     1 -b----     34.8
xen_20                                    84      255     1 -b----     19.2
xen_21                                    85      255     1 -b----     20.0
xen_22                                    71      255     1 -b----     38.6
xen_23                                    70      255     1 -b----     37.4
xen_24                                    74      255     1 -b----     41.6
xen_25                                    73      255     1 -b----     41.3
xen_26                                    75      255     1 -b----     43.3
xen_27                                    76      255     1 -b----     43.2
xen_28                                    86      255     1 -b----     19.4
xen_29                                    87      255     1 -b----     20.2
xen_30                                    83      255     1 -b----     26.0

My New Home Router: Buffalo WHR-G125 running DD-WRT

Personal, Linux, Open Source 3 Comments »

Over the 12+ years that I’ve been on the Internet, I’ve used a number of different devices to provide routing between my home computer networks and the Internet: from 486 PCs to Cisco routers to Linksys wireless routers. For the last year or so, I’ve elected to keep things simple and have just been using a WRT54G. I’ve had a few of them in the past as well, and the current version I have (v6.0) has different firmware than the previous versions, which doesn’t make it easy to get “third-party” firmware running on it.

A number of folks that I talked to, as well as some of the students in my Linux Security class have been talking lately about DD-WRT. DD-WRT is third-party firmware (Linux, of course) that runs on a number of these “home routers”. The DD-WRT Wiki mentions that the Buffalo WHR-G125 is “the cheapest 100% compatible wireless router“, so a couple of days ago I picked one up at Best Buy for $50.

I brought it home, started a download of their firmware designed specifically for the WHR-G125, and unboxed it. In short, I had DD-WRT running on it in just about 10 minutes. It has now replaced the WRT54G as my home router.

One cool thing is that DD-WRT supports WDS. I’m considering getting another one to put on the roof (or as high as I can get it) and seeing if I can pick up the signal from work (we just deployed a new wireless network there within the last two months). I’m only about 0.4 miles away (the way the bird flies) so it’s possible, but the amount of vegetation in the way might be an issue. I’d also probably need to locate an external antenna on the front side of the building (which faces this way) to get the best reception. If I could do that, I’d have a permanent link to work, which has a much faster link to the Internet than my 10/1 Mbit/s cable modem provides. =)

Aggregating and Analyzing Logs from Multiple Web Servers

Linux, Open Source 4 Comments »

Over a year ago, we replaced our single web server running IIS5 on Windows 2000 with a pair of HP DL140’s running Apache on RHEL4. These two machines serve up our main web site as well as a number of low-traffic sites, to the world. When the Marketing folks, who handle the web sites, asked if we could generate statistics on the various web sites, I knew it wouldn’t be as simple as if we just had one server. awstats, my log analyzer of choice, works best when it has a single logfile to import. How then, could I aggregate the logfiles from two (or more) servers into a single logfile in chronological order?

For security reasons, I prefer to keep awstats on a separate server and configure Apache (and the firewalls) so that it’s only available from a few subnets. We already had an existing instance of awstats installed on another server from our II5/Win2K web server days, so I decided the easiest method would be to simply update it, reconfigure it, and make it available once again. The aggregated logfile and statistics, therefore, would need to be on a third server where awstats was at. Hmm…

I could have, fairly easily, used a combination of shell scripts and user accounts with SSH keys properly set up in order to transfer the log files to the third system. I’m kinda lazy, though (in the “good sysadmins are lazy” way). Being a huge open source zealot (in a predominantly Microsoft environment, nonetheless), I already have a database server running MySQL supporting some internal (and public) applications. Likewise, I have lots of existing Perl code that I’ve already written to work with MySQL data in a variety of ways. I decided that MySQL would be the solution and Perl would be the glue to hold it all together.

My Apache logs use the default logging format, with two exceptions: the first field of each entry is the virtual hostname, and the referer and user agent are included in the same file (”combined”). My “LogFormat” directive, in httpd.conf, looks like this:

LogFormat "%V %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
A bit farther down in our httpd.conf file, we use the following directive so that we end up with a single logfile with all the data we want, written to logs/accesslog:
CustomLog logs/accesslog combined
For the sake of both performance and simplicity, a single logfile is used. Many times you’ll see web servers that use a separate log file per virtual host, which is a performance hit to the server. (Note that I’ve never done any benchmarking to see how much of a performance hit, however.) The methods that follow can easily be adapted to support multiple log files.

If we’re going to be storing our log data in MySQL, we’re going to need a database. In my case, I’ve created a database (”wwwlogs”) that holds a single table (”logs”). The table looks like this:

mysql> DESCRIBE logs;
+-----------+--------------+------+-----+---------------------+----------------+
| Field     | Type         | Null | Key | Default             | Extra          |
+-----------+--------------+------+-----+---------------------+----------------+
| id        | bigint(20)   |      | PRI | NULL                | autoincrement |
| vhost     | varchar(255) |      |     |                     |                |
| clientip  | varchar(16)  |      |     | 0.0.0.0             |                |
| date      | datetime     |      |     | 1970-01-01 00:00:00 |                |
| request   | text         |      |     |                     |                |
| status    | smallint(6)  |      |     | 0                   |                |
| bytes     | int(11)      |      |     | 0                   |                |
| referer   | text         |      |     |                     |                |
| useragent | text         |      |     |                     |                |
+———–+————–+——+—–+———————+—————-+
9 rows in set (0.00 sec)
There’s a few fields in the Apache logfile that we don’t care about, so they’re not even imported into the database which saves us from having to ignore them later. The fields in the table map to the logfile as follows:
  • id : a primary key field generated by the database server (which we don’t directly use)
  • vhost : the virtual host (e.g. “www.domain.com”)
  • clientip : ip address of the client making the request
  • date : the date and time of the request
  • request : the actual resource (url) requested by the client
  • status : the status code returned by the server
  • bytes : the number of bytes returned by the server
  • referer : the referer provided by the client
  • useragent : the user-agent string provided by the client
Our daily logrotate scripts run (by default) at 04:02AM. After log rotation, the previous day’s logfile is at /var/log/httpd/access
log.1. This is the logfile that we want to import into our MySQL database. On each webserver, we have a crontab configured to invoke httpd-logs-to-sql.pl at 04:30AM daily. httpd-logs-to-sql.pl is the Perl script which reads in the logfile and imports it into MySQL. This script only takes a few seconds. On the server where awstats exists, we have two other cronjobs set up. The first, set to run at 04:45AM daily, invokes export-wwwlogs.pl, which is a Perl script that pulls the previous day’s data out of the MySQL database and writes it back out into Apache-style CLF logfiles (one per virtual host) in chronological order (needed to keep awstats from choking). The last cronjob, which runs at 05:00AM daily, invokes a number of instances of awstats (again, one per virtual host) to actually generate statistics for the previous day.

Shortly after 05:00AM, our Marketing group can navigate to the awstats site and view the statistics from the previous day.

When asked if I could provide statistics from our web sites, I was told that money was available if we needed to purchase a commercial product to provide this information. Once again, however, open source saves the day. This entire setup cost my company nothing, except for the couple of hours I spent setting the whole thing up. Could we have purchased and used a commercial product and gained even more insight into our web site? Absolutely. Since our web folks aren’t (yet) looking for that information, however, there was no need.

Once I clean up the code a bit (removing database credentials and such), I’ll post the scripts I wrote and some more details on the crontab entries. To be quite honest, this probably won’t be a huge priority for me so if you’re interested in getting a copy of the code, please post a comment encouraging me to do so. =)

One last note: like just about everything else, there are a number of different means one could use to come up with the same end result. I chose this path as it was the easiest for me. I’d be interested in hearing from others that have been approached with a similar problem but came up with a different solution (and, perhaps more importantly, how they came to that solution).

Ohio LinuxFest 2007

Events, Linux, Open Source 2 Comments »

Bradley Kuhn, John “maddog” Hall, and Max Spevack are just a few of the speakers that will be on-hand to talk about Linux, open source, and Free Software. We have a full day of exciting, community oriented presentations for everyone who’s interested in learning more about Linux and open source.

Of course, all work and no play makes for dull geeks. Drew Curtis, of FARK, and the Linux Link Tech Show will host a conference kick-off/FARK party on Friday, September 28th (6pm till whenever) at Barley’s Brewing Company, just across the street from the Convention Center. And, of course, after a long conference, we can unwind at the legendary linuxfest afterparty in the Hyatt Regency Union Room, sponsored by Google with entertainment by NOTACON. We’ll have food and drinks from 8 p.m. until midnight.

Please help us spread the word to as many people as possible. Let them know that the Ohio Linuxfest is taking place on Saturday, September 29th, at the Greater Columbus Convention Center in Columbus, Ohio. The deadline for registration is September 21, so be sure to sign up for the LinuxFest today! Registration is free, and the sign-up on the web site takes just a few minutes!

See you in Columbus!

VMware ESX Server Runs on Linux

Virtualization, Linux, Open Source 4 Comments »

I just read The VMware House of Cards and started to post a comment, but decided the amount of stuff I was going to include facilitated its own post.

Basically, the article is an argument of whether or not VMware ESX server requires Linux in order to run (go read it!).

Ironically, I was just at a seminar yesterday where one of the VMware guys did a presentation. A ways into it, one of the audience was asking about what OS ESX installs onto and the VMware guy was having to explain about how you install it to bare metal. The audience guy didn’t quite understand and kept pressing the issue. The VMware guy absolutely refused to come out and say that ESX is based on Linux.

But, there is this…

[jlgaddis@bl-vmware1 jlgaddis]$ cat /etc/vmware-release VMware ESX Server 3 (Dali)
…and this…
[jlgaddis@bl-vmware1 jlgaddis]$ cat /etc/redhat-release Red Hat Enterprise Linux ES release 3 (Taroon)
…and, of course, this…
[jlgaddis@bl-vmware1 jlgaddis]$ cat /var/log/dmesg Linux version 2.4.21-37.0.2.ELvmnix (mts@pa-build51.eng.vmware.com) (gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-34)) #1 Tue Jan 2 21:02:22 PST 2007[VMnix version 37675] BIOS-provided physical RAM map: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved) BIOS-e820: 0000000000100000 - 00000000cfe50000 (usable) BIOS-e820: 00000000cfe50000 - 00000000cfe58000 (ACPI data) BIOS-e820: 00000000cfe58000 - 00000000d0000000 (reserved) BIOS-e820: 00000000fec00000 - 00000000fed00000 (reserved) BIOS-e820: 00000000fee00000 - 00000000fee10000 (reserved) BIOS-e820: 00000000ffc00000 - 0000000100000000 (reserved) BIOS-e820: 0000000100000000 - 000000012ffff000 (usable) user-defined physical RAM map: user: 0000000000000000 - 000000000009f400 (usable) user: 000000000009f400 - 00000000000a0000 (reserved) user: 00000000000f0000 - 0000000000100000 (reserved) user: 0000000000100000 - 0000000011000000 (usable) E820: reported memory end 11000000 VMNIX: linux MA=[0×0,0×11000000) VMNIX: vmkernel MPN=[0×11000,0xcfe4f] VMNIX: vmkernel MPN=[0×100000,0×12fffe] vmk: 0000000000000000 - 000000000009f400 (usable) vmk: 000000000009f400 - 00000000000a0000 (reserved) vmk: 00000000000f0000 - 0000000000100000 (reserved) vmk: 0000000000100000 - 00000000cfe50000 (usable) vmk: 00000000cfe50000 - 00000000cfe58000 (ACPI data) vmk: 00000000cfe58000 - 00000000d0000000 (reserved) vmk: 00000000fec00000 - 00000000fed00000 (reserved) vmk: 00000000fee00000 - 00000000fee10000 (reserved) vmk: 00000000ffc00000 - 0000000100000000 (reserved) vmk: 0000000100000000 - 000000012ffff000 (usable) 0MB HIGHMEM available. 272MB LOWMEM available. found SMP MP-table at 000f4f80 hm, page 000f4000 reserved twice. hm, page 000f5000 reserved twice. hm, page 000fd000 reserved twice. hm, page 000fe000 reserved twice. NX (Execute Disable) protection: active On node 0 totalpages: 69632 zone(0): 2048 pages. zone(1): 67584 pages. zone(2): 0 pages. VMNIX: Scanning [0×0, 0×400) c0000000 VMNIX: Scanning [0×9fc00, 0xa0000) c009fc00 VMNIX: Scanning [0xf0000, 0×100000) c00f0000 VMNIX: Found MPS at c00f4f80 len=0×1 spec=0×4 feature=[0×0 0×0] VMNIX: MPC at 0xfdbdc VMNIX: MPC length is 604 VMNIX: MPC mapped at fc6fdbdc VMNIX: MPC spec=0×4 count=0×40 lapic=0xfee00000 HP VMNIX: Scanning for ACPI table [0×0, 0×400) c0000000 VMNIX: Scanning for ACPI table [0xe0000, 0×100000) c00e0000 VMNIX: Found ACPI RSDP at c00f4f00 sig=RSD PTR rev=2 oem=[HP ] VMNIX: RSDT is at cfe50000 VMNIX: RSDT length is 60 VMNIX: RSDT mapped at fc6fd000 VMNIX: There are 6 Description Tables VMNIX: ACPI DT header at 0xcfe50080 VMNIX: DT signature [FACP], length 116 VMNIX: DT mapped at fc6fd080 VMNIX: saved VMNIX: ACPI DT header at 0xcfe50140 VMNIX: DT signature [SPCR], length 80 VMNIX: DT mapped at fc6fd140 VMNIX: unused DT, skipped VMNIX: ACPI DT header at 0xcfe501c0 VMNIX: DT signature [MCFG], length 60 VMNIX: DT mapped at fc6fd1c0 VMNIX: unused DT, skipped VMNIX: ACPI DT header at 0xcfe50200 VMNIX: DT signature [HPET], length 56 VMNIX: DT mapped at fc6fd200 VMNIX: saved VMNIX: ACPI DT header at 0xcfe50240 VMNIX: DT signature [SPMI], length 64 VMNIX: DT mapped at fc6fd240 VMNIX: unused DT, skipped VMNIX: ACPI DT header at 0xcfe50280 VMNIX: DT signature [APIC], length 222 VMNIX: DT mapped at fc6fd280 VMNIX: saved Intel MultiProcessor Specification v1.4 Virtual Wire compatibility mode. OEM ID: HP Product ID: PROLIANT APIC at: 0xFEE00000 APICsettype: PIV or K8 VMNIX: BSP APIC ID from MPS: 0×0 Processor #0 Pentium 4(tm) APIC version 20 Bootup CPU Processor #1 Pentium 4(tm) APIC version 20 Processor #2 Pentium 4(tm) APIC version 20 Processor #3 Pentium 4(tm) APIC version 20 Bus #0 is PCI Bus #1 is PCI Bus #2 is PCI Bus #4 is PCI Bus #8 is PCI Bus #9 is PCI Bus #10 is PCI Bus #11 is PCI Bus #12 is PCI Bus #13 is PCI Bus #16 is PCI Bus #19 is PCI Bus #21 is PCI Bus #241 is ISA I/O APIC #8 Version 17 at 0xFEC00000. I/O APIC #9 Version 17 at 0xFEC01000. Int: type 0, pol 3, trig 3, bus 0, IRQ 0c, APIC ID 9, APIC INT 0b Int: type 0, pol 3, trig 3, bus 0, IRQ 10, APIC ID 9, APIC INT 09 Int: type 0, pol 3, trig 3, bus 0, IRQ 11, APIC ID 9, APIC INT 0a Int: type 0, pol 3, trig 3, bus 0, IRQ 1c, APIC ID 8, APIC INT 05 Int: type 0, pol 3, trig 3, bus 8, IRQ 3c, APIC ID 9, APIC INT 00 Int: type 0, pol 3, trig 3, bus 8, IRQ 40, APIC ID 9, APIC INT 04 Int: type 0, pol 3, trig 3, bus 8, IRQ 44, APIC ID 9, APIC INT 03 Int: type 0, pol 3, trig 3, bus 8, IRQ 48, APIC ID 9, APIC INT 0c Int: type 0, pol 3, trig 3, bus 8, IRQ 4c, APIC ID 9, APIC INT 01 Int: type 0, pol 3, trig 3, bus 16, IRQ 00, APIC ID 9, APIC INT 04 Int: type 0, pol 3, trig 3, bus 16, IRQ 01, APIC ID 9, APIC INT 00 Int: type 0, pol 3, trig 3, bus 16, IRQ 02, APIC ID 9, APIC INT 01 Int: type 0, pol 3, trig 3, bus 16, IRQ 03, APIC ID 9, APIC INT 0c Int: type 0, pol 3, trig 3, bus 10, IRQ 00, APIC ID 9, APIC INT 03 Int: type 0, pol 3, trig 3, bus 10, IRQ 01, APIC ID 9, APIC INT 04 Int: type 0, pol 3, trig 3, bus 10, IRQ 02, APIC ID 9, APIC INT 00 Int: type 0, pol 3, trig 3, bus 10, IRQ 03, APIC ID 9, APIC INT 01 Int: type 0, pol 3, trig 3, bus 12, IRQ 00, APIC ID 9, APIC INT 0c Int: type 0, pol 3, trig 3, bus 12, IRQ 01, APIC ID 9, APIC INT 03 Int: type 0, pol 3, trig 3, bus 12, IRQ 02, APIC ID 9, APIC INT 04 Int: type 0, pol 3, trig 3, bus 12, IRQ 03, APIC ID 9, APIC INT 00 Int: type 0, pol 3, trig 3, bus 13, IRQ 00, APIC ID 9, APIC INT 01 Int: type 0, pol 3, trig 3, bus 13, IRQ 01, APIC ID 9, APIC INT 0c Int: type 0, pol 3, trig 3, bus 13, IRQ 02, APIC ID 9, APIC INT 03 Int: type 0, pol 3, trig 3, bus 13, IRQ 03, APIC ID 9, APIC INT 04 Int: type 0, pol 3, trig 3, bus 19, IRQ 00, APIC ID 9, APIC INT 00 Int: type 0, pol 3, trig 3, bus 19, IRQ 01, APIC ID 9, APIC INT 01 Int: type 0, pol 3, trig 3, bus 19, IRQ 02, APIC ID 9, APIC INT 0c Int: type 0, pol 3, trig 3, bus 19, IRQ 03, APIC ID 9, APIC INT 03 Int: type 0, pol 1, trig 1, bus 241, IRQ 00, APIC ID 8, APIC INT 02 Int: type 0, pol 1, trig 1, bus 241, IRQ 01, APIC ID 8, APIC INT 01 Int: type 0, pol 1, trig 1, bus 241, IRQ 03, APIC ID 8, APIC INT 03 Int: type 0, pol 1, trig 1, bus 241, IRQ 04, APIC ID 8, APIC INT 04 Int: type 0, pol 1, trig 1, bus 241, IRQ 06, APIC ID 8, APIC INT 06 Int: type 0, pol 1, trig 1, bus 241, IRQ 07, APIC ID 8, APIC INT 07 Int: type 0, pol 1, trig 1, bus 241, IRQ 08, APIC ID 8, APIC INT 08 Int: type 0, pol 3, trig 3, bus 241, IRQ 09, APIC ID 8, APIC INT 09 Int: type 0, pol 1, trig 1, bus 241, IRQ 0c, APIC ID 8, APIC INT 0c Int: type 0, pol 1, trig 1, bus 241, IRQ 0d, APIC ID 8, APIC INT 0d Int: type 0, pol 1, trig 1, bus 241, IRQ 0e, APIC ID 8, APIC INT 0e Int: type 0, pol 1, trig 1, bus 241, IRQ 0f, APIC ID 8, APIC INT 0f Int: type 3, pol 1, trig 1, bus 241, IRQ 00, APIC ID 8, APIC INT 00 Lint: type 3, pol 1, trig 1, bus 241, IRQ 00, APIC ID ff, APIC LINT 00 Lint: type 1, pol 1, trig 1, bus 241, IRQ 00, APIC ID ff, APIC LINT 01 Processors: 4 xAPIC support is present Enabling APIC mode: Physical. Using 2 I/O APICs DMI 2.3 present. 60 structures occupying 1528 bytes. DMI table at 0×000EE000. BIOS Vendor: HP BIOS Version: A10 BIOS Release: 12/02/2006 System Vendor: HP Product Name: ProLiant DL365 G1 Version: Serial Number: USE708N435 UUID 3431313337375553453730384e343335 Kernel command line: ro root=UUID=04fddb43-6d58-437e-b327-c39ba715b9b3 mem=272M cpci=10:;12:;14:4;16:; Initializing CPU#0 Detected 1800.120 MHz processor. Console: colour VGA+ 80×25 Calibrating delay loop… 3591.37 BogoMIPS Page-cache hash table entries: 131072 (order: 7, 512 KB) Page-pin hash table entries: 32768 (order: 5, 128 KB) Dentry cache hash table entries: 65536 (order: 7, 512 KB) Inode cache hash table entries: 32768 (order: 6, 256 KB) Buffer cache hash table entries: 32768 (order: 5, 128 KB) Memory: 259604k/278528k available (1649k kernel code, 16424k reserved, 1207k data, 376k init, 0k highmem) zapping low mappings. Mount cache hash table entries: 512 (order: 0, 4096 bytes) CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line) CPU: L2 Cache: 1024K (64 bytes/line) Intel machine check architecture supported. Intel machine check reporting enabled on CPU#0. CPU: After generic, caps: 078bfbff ebd3fbff 00000000 00000000 CPU: Common caps: 078bfbff ebd3fbff 00000000 00000000 CPU: AMD Dual-Core AMD Opteron(tm) Processor 2210 stepping 02 Enabling fast FPU save and restore… done. Enabling unmasked SIMD FPU exception support… done. Checking ‘hlt’ instruction… OK. POSIX conformance testing by UNIFIX enabled ExtINT on CPU#0 ESR value before enabling vector: 00000000 ESR value after enabling vector: 00000000 ENABLING IO-APIC IRQs Setting 8 in the physidpresentmap Setting 9 in the physidpresentmap init IO_APIC IRQs IO-APIC (apicid-pin) 8-0, 8-10, 8-11, 9-2, 9-5, 9-6, 9-7, 9-8, 9-13, 9-14, 9-15 not connected. ..TIMER: vector=0×31 pin1=2 pin2=0 number of MP IRQ sources: 42. number of IO-APIC #8 registers: 16. number of IO-APIC #9 registers: 16. testing the IO APIC…………………..

IO APIC #8…… …. register #00: 08000000 ……. : physical APIC id: 08 ……. : Delivery Type: 0 ……. : LTS : 0 …. register #01: 000F0011 ……. : max redirection entries: 000F ……. : PRQ implemented: 0 ……. : IO APIC version: 0011 …. register #02: 08000000 ……. : arbitration: 08 …. IRQ redirection table: NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect: 00 000 00 1 0 0 0 0 0 0 00 01 000 00 0 0 0 0 0 0 0 39 02 000 00 0 0 0 0 0 0 0 31 03 000 00 0 0 0 0 0 0 0 41 04 000 00 0 0 0 0 0 0 0 49 05 000 00 1 1 0 1 0 0 0 51 06 000 00 0 0 0 0 0 0 0 59 07 000 00 0 0 0 0 0 0 0 61 08 000 00 0 0 0 0 0 0 0 69 09 000 00 1 1 0 1 0 0 0 71 0a 000 00 1 0 0 0 0 0 0 00 0b 000 00 1 0 0 0 0 0 0 00 0c 000 00 0 0 0 0 0 0 0 79 0d 000 00 0 0 0 0 0 0 0 81 0e 000 00 0 0 0 0 0 0 0 89 0f 000 00 0 0 0 0 0 0 0 91

IO APIC #9…… …. register #00: 09000000 ……. : physical APIC id: 09 ……. : Delivery Type: 0 ……. : LTS : 0 …. register #01: 000F0011 ……. : max redirection entries: 000F ……. : PRQ implemented: 0 ……. : IO APIC version: 0011 …. register #02: 09000000 ……. : arbitration: 09 …. IRQ redirection table: NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect: 00 000 00 1 1 0 1 0 0 0 99 01 000 00 1 1 0 1 0 0 0 A1 02 000 00 1 0 0 0 0 0 0 00 03 000 00 1 1 0 1 0 0 0 A9 04 000 00 1 1 0 1 0 0 0 B1 05 000 00 1 0 0 0 0 0 0 00 06 000 00 1 0 0 0 0 0 0 00 07 000 00 1 0 0 0 0 0 0 00 08 000 00 1 0 0 0 0 0 0 00 09 000 00 1 1 0 1 0 0 0 B9 0a 000 00 1 1 0 1 0 0 0 C1 0b 000 00 1 1 0 1 0 0 0 C9 0c 000 00 1 1 0 1 0 0 0 D1 0d 000 00 1 0 0 0 0 0 0 00 0e 000 00 1 0 0 0 0 0 0 00 0f 000 00 1 0 0 0 0 0 0 00 IRQ to pin mappings: IRQ0 -> 0:2 IRQ1 -> 0:1 IRQ3 -> 0:3 IRQ4 -> 0:4 IRQ6 -> 0:6 IRQ7 -> 0:7 IRQ8 -> 0:8 IRQ9 -> 0:9 IRQ12 -> 0:12 IRQ13 -> 0:13 IRQ14 -> 0:14 IRQ15 -> 0:15 IRQ16 -> 0:5 IRQ17 -> 1:0 IRQ18 -> 1:1 IRQ19 -> 1:3 IRQ20 -> 1:4 IRQ21 -> 1:9 IRQ22 -> 1:10 IRQ23 -> 1:11 IRQ24 -> 1:12 ……………………………… done. Process timing init…done. mtrr: v1.40 (20010327) Richard Gooch (rgooch@atnf.csiro.au) mtrr: detected mtrr type: Intel PCI: PCI BIOS revision 3.00 entry at 0xf0072, last bus=21 PCI: Using configuration type 1 PCI: Probing PCI hardware PCI: Ignoring BAR0-3 of IDE controller 00:06.1 PCI: Discovered peer bus 08 PCI->APIC IRQ transform: (B0,I3,P0) -> 23 PCI->APIC IRQ transform: (B0,I4,P0) -> 21 PCI->APIC IRQ transform: (B0,I4,P1) -> 22 PCI->APIC IRQ transform: (B0,I4,P1) -> 22 PCI->APIC IRQ transform: (B0,I4,P0) -> 21 PCI->APIC IRQ transform: (B0,I7,P0) -> 16 PCI->APIC IRQ transform: (B0,I7,P0) -> 16 PCI->APIC IRQ transform: (B0,I7,P0) -> 16 PCI->APIC IRQ transform: (B8,I15,P0) -> 17 PCI->APIC IRQ transform: (B8,I16,P0) -> 20 PCI->APIC IRQ transform: (B8,I17,P0) -> 19 PCI->APIC IRQ transform: (B8,I18,P0) -> 24 PCI->APIC IRQ transform: (B8,I19,P0) -> 18 PCI->APIC IRQ transform: (B16,I0,P0) -> 20 PCI->APIC IRQ transform: (B10,I0,P0) -> 19 PCI->APIC IRQ transform: (B12,I0,P0) -> 24 PCI BIOS passed nonexistent PCI bus 14! PCI: using PPB(B13,I0,P0) to get irq 18 PCI->APIC IRQ transform: (B14,I8,P0) -> 18 VMNIX: vmnixPCIInfo=10:;12:;14:4;16:; VMNIX is hiding PCI device (B16,I0,P0) VMNIX is hiding PCI device (B10,I0,P0) VMNIX is hiding PCI device (B12,I0,P0) VMNIX is hiding PCI device (B14,I8,P0) Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket IA-32 Microcode Update Driver: v1.13 tigran@veritas.com Starting kswapd aiosetup: numphyspages = 17408 aiosetup: sizeof(struct page) = 60 Journalled Block Device driver loaded pty: 256 Unix98 ptys configured Serial driver version 5.05c (2001-07-08) with MANYPORTS MULTIPORT SHAREIRQ SERIALPCI enabled ttyS0 at 0×03f8 (irq = 4) is a 16550A ttyS1 at 0×02f8 (irq = 3) is a 16550A Floppy drive(s): fd0 is 1.44M floppy0: no floppy controllers found RAMDISK driver initialized: 256 RAM disks of 64000K size 1024 blocksize Uniform Multi-Platform E-IDE driver Revision: 7.00beta4-2.4 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx hda: HL-DT-ST GCR-8240N, ATAPI CD/DVD-ROM drive ide0 at 0×1f0-0×1f7,0×3f6 on irq 14 hda: attached ide-cdrom driver. hda: ATAPI 24X CD-ROM drive, 128kB Cache Uniform CD-ROM driver Revision: 3.12 SCSI subsystem driver Revision: 1.00 kmod: failed to exec /sbin/modprobe -s -k scsihostadapter, errno = 2 kmod: failed to exec /sbin/modprobe -s -k scsihostadapter, errno = 2 Initializing Cryptographic API NET4: Linux TCP/IP 1.0 for NET4.0 IP: routing cache hash table of 2048 buckets, 16Kbytes TCP: Hash tables configured (established 32768 bind 65536) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. RAMDISK: Compressed image found at block 0 Freeing initrd memory: 6153k freed VFS: Mounted root (ext2 filesystem). Mod: 698: vmnix module initmodule=0xd180f828 STACKTOPLA=0xfd402ff0 Mod: 3216: hb timer on. Mod: 3283: Started hb thread. IRQ: 291: COS is using IOAPIC Mod: 2305: Setting 0xfce00000 to read-only Mod: 2305: Setting 0xfd000000 to read-only Mod: 2305: Setting 0xfd200000 to read-only VMNIX: BSP APIC ID: 0×0 IRQ: 950: irq 0 is used IRQ: 954: irq 0 is enabled IRQ: 950: irq 1 is used IRQ: 954: irq 1 is enabled IRQ: 950: irq 2 is used IRQ: 954: irq 2 is enabled IRQ: 950: irq 14 is used IRQ: 954: irq 14 is enabled IRQ: 1134: Usurping irq 0 (from IO-APIC-edge to vmnix-edge) IRQ: 1134: Usurping irq 1 (from IO-APIC-edge to vmnix-edge) IRQ: 1134: Usurping irq 2 (from XT-PIC to vmnix-edge) IRQ: 1134: Usurping irq 3 (from IO-APIC-edge to vmnix-edge) IRQ: 1134: Usurping irq 4 (from IO-APIC-edge to vmnix-edge) IRQ: 1134: Usurping irq 6 (from IO-APIC-edge to vmnix-edge) IRQ: 1134: Usurping irq 7 (from IO-APIC-edge to vmnix-edge) IRQ: 1134: Usurping irq 8 (from IO-APIC-edge to vmnix-edge) IRQ: 1134: Usurping irq 9 (from IO-APIC-level to vmnix-level) IRQ: 1134: Usurping irq 12 (from IO-APIC-edge to vmnix-edge) IRQ: 1134: Usurping irq 13 (from IO-APIC-edge to vmnix-edge) IRQ: 1134: Usurping irq 14 (from IO-APIC-edge to vmnix-edge) IRQ: 1134: Usurping irq 15 (from IO-APIC-edge to vmnix-edge) IRQ: 1134: Usurping irq 16 (from IO-APIC-level to vmnix-level) IRQ: 1134: Usurping irq 17 (from IO-APIC-level to vmnix-level) IRQ: 1134: Usurping irq 18 (from IO-APIC-level to vmnix-level) IRQ: 1134: Usurping irq 19 (from IO-APIC-level to vmnix-level) IRQ: 1134: Usurping irq 20 (from IO-APIC-level to vmnix-level) IRQ: 1134: Usurping irq 21 (from IO-APIC-level to vmnix-level) IRQ: 1134: Usurping irq 22 (from IO-APIC-level to vmnix-level) IRQ: 1134: Usurping irq 23 (from IO-APIC-level to vmnix-level) IRQ: 1134: Usurping irq 24 (from IO-APIC-level to vmnix-level) VGA: 297: VGA start b8000 end c0000 mapped start c00b8000 char height 16 VGA: 397: VGA: 425: 0 Console: switching to colour VMNIX-VGA 80×25 Partition check: cciss/c0d0: p1 p2 p3 p4 < p5 p6 p7 > scsi0 : qla2300 scsi: unknown type 12 Vendor: COMPAQ Model: MSA1000 Rev: 5.10 Type: Unknown ANSI SCSI revision: 04 Vendor: COMPAQ Model: MSA1000 VOLUME Rev: 5.10 Type: Direct-Access ANSI SCSI revision: 04 resizedmapool: unknown device type 12 VMWARE SCSI Id: Supported VPD pages for sda : 0×0 0×80 0×83 0xc0 0xb0 0xc1 VMWARE SCSI Id: Device id info for sda: 0×1 0×3 0×0 0×10 0×60 0×5 0×8 0xb3 0×0 0×93 0xac 0xe0 0xaf 0xa2 0×8f 0×6b 0xf6 0×7f 0×0 0xd 0×1 0×0 0×0 0×4 0×0 0×0 0×0 0×0 0×2 0×3 0×0 0×20 0×36 0×30 0×30 0×35 0×30 0×38 0×42 0×33 0×30 0×30 0×39 0×33 0×41 0×43 0×45 0×30 0×41 0×46 0×41 0×32 0×38 0×46 0×36 0×42 0×46 0×36 0×37 0×46 0×30 0×30 0×30 0×44 0×2 0×0 0×0 0×8 0×30 0×30 0×30 0×30 0×30 0×30 0×30 0×30 VMWARE SCSI Id: Id for sda 0×60 0×05 0×08 0xb3 0×00 0×93 0xac 0xe0 0xaf 0xa2 0×8f 0×6b 0xf6 0×7f 0×00 0×0d 0×4d 0×53 0×41 0×31 0×30 0×30 VMWARE: Unique Device attached as scsi disk sda at scsi0, channel 0, id 0, lun 3 Attached scsi disk sda at scsi0, channel 0, id 0, lun 3 resizedma_pool: unknown device type 12 SCSI device sda: 614402047 512-byte hdwr sectors (300000 MB) sda: unknown partition table kjournald starting. Commit interval 5 seconds EXT3-fs: mounted filesystem with ordered data mode. Freeing unused kernel memory: 376k freed usb.c: registered new driver usbdevfs usb.c: registered new driver hub usb-uhci.c: $Revision: 1.275 $ time 21:03:42 Jan 2 2007 usb-uhci.c: High bandwidth mode enabled usb-uhci.c: USB UHCI at I/O 0×1800, IRQ 22 usb-uhci.c: Detected 8 ports usb.c: new USB bus registered, assigned bus number 1 hub.c: USB hub found hub.c: 8 ports detected usb-uhci.c: v1.275:USB Universal Host Controller Interface driver usb-ohci.c: USB OHCI at membase 0xd20b6000, IRQ 16 usb-ohci.c: usb-00:07.0, PCI device 1166:0223 (ServerWorks) usb.c: new USB bus registered, assigned bus number 2 hub.c: USB hub found hub.c: 2 ports detected usb-ohci.c: USB OHCI at membase 0xd20b8000, IRQ 16 usb-ohci.c: usb-00:07.1, PCI device 1166:0223 (ServerWorks) usb.c: new USB bus registered, assigned bus number 3 hub.c: USB hub found hub.c: 2 ports detected ehci-hcd 00:07.2: PCI device 1166:0223 (ServerWorks) ehci-hcd 00:07.2: irq 16, pci mem d20c1000 usb.c: new USB bus registered, assigned bus number 4 PCI: 00:07.2 PCI cache line size set incorrectly (64 bytes) by BIOS/FW. PCI: 00:07.2 PCI cache line size corrected to 128. ehci-hcd 00:07.2: USB 2.0 enabled, EHCI 1.00, driver 2003-Jan-22 hub.c: USB hub found hub.c: 4 ports detected usb.c: registered new driver hiddev usb.c: registered new driver hid hid-core.c: v1.8.1 Andreas Gal, Vojtech Pavlik vojtech@suse.cz hid-core.c: USB HID support drivers mice: PS/2 mouse device common for all mice hub.c: new USB device 00:04.4-1, assigned address 2 input0: USB HID v1.01 Keyboard [HP Virtual Keyboard] on usb1:2.0 input1: USB HID v1.01 Mouse [HP Virtual Keyboard] on usb1:2.1 EXT3 FS 2.4-0.9.19, 19 August 2002 on cciss0(104,2), internal journal Adding Swap: 554856k swap-space (priority -1) hub.c: new USB device 00:04.4-2, assigned address 3 hub.c: USB hub found hub.c: 7 ports detected kjournald starting. Commit interval 5 seconds EXT3 FS 2.4-0.9.19, 19 August 2002 on cciss0(104,1), internal journal EXT3-fs: mounted filesystem with ordered data mode. hub.c: new USB device 00:07.1-1, assigned address 2 kjournald starting. Commit interval 5 seconds EXT3 FS 2.4-0.9.19, 19 August 2002 on cciss0(104,6), internal journal EXT3-fs: mounted filesystem with ordered data mode. hub.c: USB hub found hub.c: 4 ports detected

I dunno, what do you guys think? Does that look like Linux to you? It sure does to me!

SCO Loses To Novell!

Funny, Linux, Open Source No Comments »

w00t!

For the reasons stated above, the court concludes that Novell is the owner of the UNIX and UnixWare copyrights. Therefore, SCO’s First Claim for Relief for slander of title and Third Claim for specific performance are dismissed, as are the copyright ownership portinos of SCO’s Fifth Claim for Relief for unfair competition and Second Claim for Relief for breach of implied covenant of good faith and fair dealing. The court denies SCO’s cross-motion for summary judgment on its own slander of title, breach of contract, and unfair competition claims, and on Novell’s slander of title claim. Accordingly, Novell’s slander of title claim is still at issue.

The court also concludes that, to the extent that SCO has a copyright to enforce, SCO can simultaneously pursue both a copyright infringement claim and a breach of contract claim based on the non-compete restrictions in the license back of the Licensed Technology under APA and the TLA. The court further concludes that there has not been a change of control that released the non-compete restrictions of the license, and the non-compete restrictions of the license are not void under California law. Accordingly, Novell’s motion for summary judgment on SCO’s non-compete claim in its Second Claim for breach of contract and Fifth Claim for unfair competition is granted to the extent that SCO’s claims require ownership of the UNIX and UnixWare copyrights, and denied in all other regards.

[ Read more… ]

Fedora 7 firstboot crashes

Linux, Open Source No Comments »

A few days ago, I decided to install Fedora 7 on a Dell Dimension 4600 that I had sitting around doing nothing. The installation files are on a network server and PXE booting is set up to allow me to start a Fedora 7 installation without the need for installation disks.

I fired up the installation, went through the prompts, set everything how I wanted it and fired it off. I came back 15 minutes or so later, clicked the “Reboot” button and let the box start up. I wasn’t paying attention to it while it restarted, but when I looked back at the screen I noticed I was staring at the gdm login screen — but I shouldn’t have been. After the initial installation completed and the system restarted I should have been looking at firstboot.

Having ran into issues with firstboot before, I knew that there should be a logfile at /tmp/firstboot-crash.log, and there was:

[root@jefferson ~]# cat /tmp/firstboot-crash.log Traceback (most recent call last): File “/usr/sbin/firstboot”, line 111, in firstbootWindow(fb) File “/usr/share/firstboot/firstbootWindow.py”, line 150, in init self.loadModules() File “/usr/share/firstboot/firstbootWindow.py”, line 426, in loadModules loaded = imputil.imp.load_module(module, found[0], found[1], found[2]) File “/usr/share/firstboot/modules/timezone.py”, line 32, in import scdMainWindow File “/usr/share/system-config-date/scdMainWindow.py”, line 23, in import gtk.glade ImportError: No module named glade [root@jefferson ~]#

That’s weird, the pygtk stuff should have been installed during the installation. I rebooted the box, fired up the installation again, and left all settings at their defaults and let anaconda do its thing. Once it was done, the system restarted and I ran into the exact same problem.

This time I decided to figure out exactly what was wrong. I decided to verify all the installed files. “rpm –verify –all” returned, among other things, “Unsatisfied dependencies for system-config-securitylevel-1.7.0-1.fc7.i386: pygtk2-libglade”. Okay, there we go. After figuring that out, it was a simple matter of running “yum install pygtk2-libglade”, letting it install from the Internet and rebooting. Upon reboot, firstboot started up like it should have and then the system was fine.

I still don’t know what caused it, as the installation “media” is obviously good. The files on the network server have been verified and have worked for numerous other installations and the problem only showed up on this particular Dell PC. Oh well, problem solved!

Red Hat Linux Gets Top Government Security Rating

Security, Linux, Open Source No Comments »

Red Hat Linux has received a new level of security certification that should make the software more appealing to some government agencies.

Last week IBM Corp. was able to achieve EAL4 Augmented with ALC_FLR.3 certification for Red Hat Enterprise Linux, putting it on a par with Sun Microsystems Inc.’s Trusted Solaris operating system, said Dan Frye, vice president of open systems with IBM.

“This is the highest level of security function that anybody has,” Frye said. “We have delivered LSPP functionality in Red Hat Enterprise Linux 5 and we have certified that at the EAL4 level of assurance.”

[ Read more… ]

Linus: “damn fed up with the FSF”

Funny, Linux, Open Source No Comments »

In a posting to linux-kernel yesterday, Linus says:

I’m damn fed up with the FSF being the “protector of freedoms”, and also feeling that they can define what those freedoms mean.
I feel the exact same way, and have for quite a while. That’s the primary reason I am no longer a paying member of the Free Software Foundation. And I wasn’t just someone who sat back and threw ‘em a few bucks every now and again. I was an associate member for a number of years and also volunteered to work their booths at various events (up to as far as five hours away) on my own time and at my own expense. I don’t write much code that’s released publicly, but I don’t foresee a time when I’ll be releasing anything under GPLv3.

GPLv2 FTW!

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Login


Copyright © 2007 Jeremy L. Gaddis.
34 monkeys, 1.902 seconds.