31 entries tagged with 'apple'
So, like Matt, I too did some repair work on a laptop. In my case, however, I had to replace the keyboard on a 2008 MacBook (it lost a battle with a bottle of water). Just like Matt, I used the completely awesome instructions from iFixIt. Their teardown instructions, besides being highly detailed, leave lots of whitespace next to each step. This space is perfect for affixing a piece of double-sided tape, to which you can stick all the tiny screws as you remove them. I forget where I learned this little trick--I wish I had learned it much earlier in life.
While I've used iFixIt for parts in the past, like Matt, I was able to find my replacement keyboard cheaper elsewhere. $160 for a used keyboard was a bit much to stomach. I ended up taking a chance on eBay and found one for $30. I figured at that price, I could afford the risk.
After completing the repair, the only thing I have to say is have good eyesight and patience. If you're no stranger to taking things apart and fixing them, the MacBook is well engineered for disassembly. However, the screws are tiny and numerous.
This weekend, my iPhone gets to make a voyage to the Apple mothership. For the last several months, the clicker on the original iPhone headphones hasn't been working. I thought the headphones just conked out (I listen to them near 8 hours a day at work). However, after testing Laura's headphones, it looks like the contacts inside the jack are wonky. Audio works fine--I just don't get any of the extra song navigation or microphone functionality.
Yay for one-year warranties, old Razr's and GSM SIM cards!
Update:
The voyage has been avoided. I went to the local Apple Store and had the Genius Bar take a look at it (fully planning on them sending it in for warranty). However, he used this tool like a doctor's otoscope to look inside the jack. After about ten minutes of fishing about with a long pointy instrument of some sort, he pulled out a compacted ball of pocket lint. So, it appears that lint collected in the jack and caused just enough misalignment so that the connection point for the clicker/microphone didn't line up.
I am a music junkie. More specifically, a new music junkie. On my iPhone, I have the following apps for streaming music:
For the most part, I use Pandora and Last.fm the most. The playlist generation is rather good and lets me switch between genres quickly depending on my current mood. I also like having the album art and other song information displayed. However, after a few months, I got to where I wasn't hearing anything new. So, I checked out some apps for streaming radio stations. I tried Tuner first. While the app boasts "Thousands of streams!", I only found about 5 that I actually liked. But the music was new and varied quite a bit. Life was good.
Next, I tried WunderRadio. This was an unexpected application from the guys at Weather Underground. I had been waiting for them to put out a weather application, since I find their forecasts to nearly always be the best. To this day, however, they have chosen not to. Instead, they developed a music streaming application--initially to stream NOAA weather broadcasts and local radio stations. However, they hooked up with another website which indexes music streams; so now there are far more music channels than anything else. For a while I was disappointed by the application. The channel selection wasn't huge and I didn't really care to listen to annoying DJs on local radio stations anyways. However, they've kept updating the application (unlike Tuner, which has stagnated) and it's quite robust now.
Now here's the interesting part. The AOL Music application was a launch application for the App Store. They have a really good selection of streams and bearable advertising. However, the streaming quality is terrible. I'm guessing 64Kbps. So, I dumped them for other applications which could do 96 or 128 (my 3G connection can handle them). However, recently, WunderRadio added the AOL streams to their directory--in 128Kbps! So, I can stream AOL's content better than their own application.
In AOL's defense, they do stream at a higher bitrate (most of the time) when you're on WiFi. However, I wish they provide the option to allow higher quality streams when you're on 3G.
I was in the middle of syncing my iPhone 3G when someone called. I answered (I had the earphones in because I was expecting the call). To my vast surprise, iTunes just paused the synchronization (it was in the middle of copying over some podcasts). When the call ended, it simply picked up where it left off and finished up.
Could you ever imagine a Microsoft product actually thinking of that use case and handling it gracefully?
Last year, I got Laura a CenOmax F7024B Digital Photo frame and a 2GB SD card. Since then, she's had occasional problems with photos not displaying. For some reason, some photos would just be skipped over--and a black screen shown in its place. Smells of image corruption, right?
To make a long, frustrating story short, the photo frame does not like it when non-image files are present on the card. Seems simple to remedy, correct? For the majority of people who run Windows, I suspect this is true. However, for those of us who run OS X, it's not as simple. The reason being that OS X places hidden files on removable filesystems. What are these files for?
And for removable filesystems which are formatted is MS-DOS (FAT16 or FAT32) format (this includes almost all USB keys and most likely whatever memory cards you are using), it is common to see filenames which begin with
._
, which, I believe, contain file-specific metadata which would normally be built into an HFS+ filesystem.
To verify this problem, I opened Terminal.app and listed the contents of the memory card (whose volume name on the desktop was PHOTO FRAME)
$ ls -alh /Volumes/PHOTO\ FRAME/ | head
total 296128
drwxrwxrwx 1 dthill staff 16K Nov 22 14:27 ./
drwxrwxrwt@ 6 root admin 204B Nov 22 14:27 ../
drwxrwxrwx 1 dthill staff 32K Nov 22 14:27 .Spotlight-V100/
drwxrwxrwx@ 1 dthill staff 32K Nov 22 14:27 .Trashes/
-rwxrwxrwx 1 dthill staff 4.0K Nov 22 14:27 ._.Trashes*
drwxrwxrwx 1 dthill staff 32K Nov 22 14:27 .fseventsd/
-rwxrwxrwx 1 dthill staff 872K Jul 12 11:28 IMG_0002.JPG*
-rwxrwxrwx 1 dthill staff 808K Jul 12 11:28 IMG_0003.JPG*
-rwxrwxrwx 1 dthill staff 726K Jul 12 11:28 IMG_0004.JPG*
As you can see, three hidden directories and one hidden file are present:
.Spotlight-V100/ - Spotlight index.Trashes/ - Trash folder.fseventsd/ - file modification queue used by Spotlight to monitor changes._Trashes - Trash folder metadata?These files cannot be seen in the Finder. If they are deleted, the Finder will recreate them the next time the volume is inserted! So what do we do?
Write some AppleScript.
Below is a script (specifically meant to be used as an Automator action) which will delete these hidden files and eject the volume. The workflow I had in mind was the following:
The applescript is below. Note, I don't do much Applescript programming, so this may not be particularly robust. In particular, if you modify the toRemove list, and put something stupid in there like
/
, then it will merrily delete your whole hard drive.
on run {input, parameters}
-- Set this variable to the volume name of the memory card or whatever
set photoVolume to "PHOTO FRAME" as string
-- This is the list of file masks to remove.
set toRemove to {".Spotlight*", ".Trashes", ".fseventsd", ".DS_Store", "._*"}
-- Nothing below here needs to be modified
-- Verify the that the volume exists before continuing.
try
tell application "Finder" to set theDisk to disk photoVolume
on error
display dialog "The volume \"" & photoVolume & "\" was not found." buttons {"Close"} default button 1 with icon 1
return 0
end try
-- forcefully remove Spotlight, HFS metadata, and Trash files
-- from the disk. We use shell commands because normal applescript
-- commands will just move them to the Trash folder.
set d to "\"/Volumes/" & photoVolume & "/\"" as string
-- build the command to remove all of the files
set cmd to "/usr/bin/find " & d as string
repeat with i from 1 to count of toRemove
set cmd to cmd & " "
if not (i is equal to 1) then
set cmd to cmd & "-o "
end if
set cmd to cmd & "-name \"" & item i of toRemove & "\" -print0"
end repeat
set cmd to cmd & " | /usr/bin/xargs -0 -n 20 /bin/rm -Rfv"
-- perform the command
try
do shell script cmd
on error errMsg
display dialog "Error removing metadata files:" & return & return & errMsg buttons {"Close"}
return 0
end try
-- unmount the volume
set succeeded to false
repeat while (not succeeded)
try
tell application "Finder" to eject theDisk
on error
set succeeded to true
end try
if not succeeded then
delay 2
end if
end repeat
return input
end run
To use this script, perform the following steps:
photoVolume to match the volume name of the card / photo frame. THIS IS THE MOST IMPORTANT STEP TO GET RIGHT.There's a minor privacy bug in the iPhone which allows SMS messages to be seen when the phone is locked with a passcode under some circumstances. Unfortunately, the little locomotive in my head derailed at the first sentence of the discoverer's blog post:
My twelve year old son brought to my attention a security bug he discovered on his iPhone...
Apparently, the entire world has the wrong idea about America's current economic hullabaloo. It's obvious that everything is fine because f%&king twelve year-olds are running around with iPhones.
As per usual, I was listening to my audiobook1 on the way to work, when I started getting some weird noises through my speakers. As it is not uncommon for my audiobooks to have some static or other problems obtained during their ripping, I've just had to tolerate the fact that it happens on occasion (almost always during the best parts, it rather seems). After a few seconds, it looked like it wasn't going to stop, so I changed the stereo's source away from the CD, intending to let the stereo restart the CD (this has been known to help a scratched CD). However, the noise continued as I switching between FM.
What the heck?
So, I removed the iPhone from the little pocket which is immediately above the stereo (separated from the radio by only thin plastic), and the noise ceased--and I had four waiting emails. So, I can only infer that the 3G (possibly the data frequencies) caused some interference on the speaker wires which were nearby. Weirdly enough, however, nothing happened when the phone rang a few minutes earlier; I think everyone has had a case where a GSM phone has put some minor interference on a nearby speaker.
1 Great Expectations, if you wish to know
So my Learning Cocoa book finally arrived. As I'm thumbing through it, I notice that some of the Xcode screenshots don't match what I'm using (version 3.0). Sure enough, I learn that you can get Xcode 3.1 as part of the iPhone Developer Program. It uses software that isn't generally available yet--how's that for a book being up to date?
In an effort to get some of the Zelda games off my queue so I can begin playing Twilight Princess (a Christmas gift from my lovely wife), I set about hooking up my newish Macbook to the TV.
Doesn't quite make sense? Some backstory....
About a year and a half ago, I started playing Zelda III: A Link to the Past on my Powerbook G4 using the Snes9x emulator. With my wife acting as navigator, a walk-through and item list, and the handy-dandy freeze/thaw snapshotting, we crawled our way past the penultimate dungeon, Turtle Rock. Then, life, jobs, houses got in the way, and I hadn't had a chance to get back. Back in October, after selling our G4 Powerbooks and buying Macbooks, I found the urge and bit of time to finally finish it off. Alas, the Macbook has a Mini-DVI connection, and doesn't come with the video adaptor to hook it up to the TV. Thwarted, I opted instead to download Ocarina of Time to our new Wii instead.
So, I have been told that I must at least finish Zelda III before I can start Twilight Princess. Last night, with the handy-dandy Mini-DVI to Video adapter Laura gave me for Christmas, I commenced hooking up the Macbook (running Leopard) to the TV. However, every time I tried to put Snes9x in full-screen mode, it would flash to a dark screen and lock up the laptop. I tried every combination of full-screen, stretching, OpenGL render modes--no luck.
On a whim, I turned off display mirroring; this makes the TV an extension of your desktop (merely running at different resolution). I moved the Snes9x window to the TV, put it in full-screen mode, and it worked! However, by this time, it was way past bedtime, and I was too tired to play. C'est la vie.
So, I thought I'd toss this info up here for the Googlebot, in case anyone else were to experience the same trouble.
On the topic of email archival strategies, I have experimented with a few methods over my many years on the internet. These systems have ranged from the byzantine to the apathetic. In the beginning, I used separate folders for significant persons with manual culling of insignificant emails. Then, I graduated to automated sorting into said folders based on baroque rules implemented by my email client du jour. After a few years and several MBs (back when 500MB hard drives were a luxury), I realized that I had never once revisited any of these archives--so I deleted them.
From then on, my strategy could be roughly described as maintaining a rolling average. I tried to keep around 4 or 5 months of important email, as prior experience indicated these were good bounds. However, as of late, I've become somewhat overzealous in culling email. I've decided to move to the new, Steve Jobs Approved ™ storage method:
Save 'em all and let Spotlight sort 'em out.
Lately, Spotlight has exhibited an uncanny ability to dredge up emails which I knew I saved somewhere, but couldn't locate. So, I'm going to turn my mind over to the machine. Screw hierarchical organization. I've got a $3,000 dollar (albeit somewhat dated) hunk of processing power in a sexy aluminum frame. It's time to use it.
A few weeks after the introduction of the powermac gateway , I ran into some odd behavior with iTunes and our Airport with Airtunes. After approximately 45 minutes, playback would stop. The first few times, I didn't think much of it--borked mp3, my laptop going to sleep, gremlins, or possibly solar flares. One time, however, it occurred just as I walked past my laptop. iTunes still indicated it was playing, but time was not advancing. After a few seconds, the Play button changed to indicate that it had stopped. I pressed Play, and playback began again at the beginning of the track. Odd.
To make a long, uninteresting debugging story short, if:
then try increasing your DHCP lease time or configuring your Airtunes to use a static IP address. After configuring the Airtunes to a static IP, I no longer suffered any dropouts. I suspect that the DHCP renewal was causing some sort of WPA renegotiation or interrupting the session just long enough to cause some sort of timeout.
In case you've been playing with Tiger Server as a home gateway and run into problems with VPN, here's a possible fix. First, my current topology:
Internet <--> Cable <--> (en1) PowerMac (en0) <--> WAP <--> Laptops
Modem OSX Server
By all accounts, this a standard gateway/router/firewall configuration. My PowerMac has two ethernet interfaces: en1 is connected to the cable modem and en0 (the built-in port) is connected to the Linksys WAP54G. How can an ethernet port be connected directly to an access point? Apple uses auto-sensing ethernet ports --no crossover cable required. I don't have an ethernet hub or switch since all of our devices are wireless. If I need more than 54Mbs, I can just put any of our machines into firewire target mode, which is faster than 100BaseT anyways.
If you've been following the progress (here , here , and here ) of this gateway, you'll stop and ask why I'm using the access point instead of the wireless card I painstakingly acquired. I naively assumed since wireless cards support ad-hoc networks (officially called IIBS--independent basic service set), they could perform all the functions of a WAP. Unfortunately, I was unaware of the basic service part. While I was able to create an ad-hoc network from the server and establish NAT between it and the cable modem, I could only use WEP encryption. This was unacceptable, hence the begrudging reintroduction of the Linksys WAP54G.
Next up, the Gateway Assistant. For all practical purposes, it's a good wizard. I've set up many gateways and it sets up almost everything that is required (firewall, NAT, DHCP, local DNS, VPN). I will warn you of one particular issue which involves the Linksys WAP54G. Upon pressing the itsy-bitsy factory reset button, the WAP configures itself to a static IP address of 192.168.1.245 with a netmask of 255.255.255.0. This would be fine, except that Gateway Assistant configures your private LAN as 192.168.2.0/255.255.255.0. The WAP is now on a different subnet, so any attempts to access the HTTP interface to configure it will fail. My solution was to change the local, private LAN subnet. This required modifying DHCP, firewall, DNS, and en0 interface (via System Preferences -> Network) to 192.168.1.0/255.255.255.0. After restarting all the services, the WAP was accessible via a browser on the PowerMac.
Of course, another solution would be to make sure the WAP obtains its IP via DHCP. However, if the WAP ever required a reset to factory defaults, the same situation would arise.
Configuring VPN was a sinch. In Server Admin, verify that VPN is using a separate range of IP addresses than is being allocated by DHCP and that the address range is still within your subnet (in my case, 192.168.1.0/24). The VPN server does not use the DHCP server to assign addresses and DNS servers to clients, so make sure the DNS servers are correct as well. They should be the same as what's being passed out by DHCP to your private LAN clients. As any VPN clients I will have will also be running OSX, I chose LLTP over IPSEC. For the firewall, make certain that the LLTP VPN ports are open on the ANY address group (I believe it corresponds to UDP 1701 and 500). This allows traffic from the outside world (en1) into the gateway.
If you are like me, you sit there for a few minutes with your mouth agape after the Internet Connect application successfully connects and authenticates to your LAN1. Then reality sets back in when it becomes obvious that none of your traffic is actually going anywhere. First thing to do is verify that the VPN has been set up properly on your client. A quick check is view your routing tables. Open up Terminal and issue a netstat -r. You should see something similar to this:
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default modemhostname UGSc 85 14 ppp0
modemhostname 192.168.2.1 UGHS 87 18895 en0
modemhostname is the hostname or IP address of your external address. This routing table is basically saying "by default, route all traffic to the VPN server over this here ppp0 tunnel that I've opened." You should also execute cat /etc/resolv.conf and make sure that the nameservers specified there are the same as the ones specified in the VPN configuration.
If all of this checks out, which it probably will, then you most likely have the same problem I did. First, go to Server Admin -> Firewall -> Logging and turn on logging for blocked packets. Return to the log file viewer, generate some traffic on your client machine, and refresh the log. You will most likely see some entries similar to the following:
May 29 11:46:45 alia ipfw: 65534 Deny UDP 192.168.1.246:49205 192.168.1.1:53 in via ppp0
May 29 11:46:45 alia ipfw: 65534 Deny UDP 192.168.1.246:49206 192.168.1.1:53 in via ppp0
In english, this means "I, alia the gateway, have blocked UDP packets from VPN client 192.168.1.246 destined for the DNS server located at 192.168.1.1 which came in over the ppp0 vpn tunnel." Now we have to ask ourselves why were these packets blocked? Well, the default firewall rules implemented by the Gateway Assistant implement a "default-deny" policy; any packets that aren't explicitly allowed, are blocked. A quick test to verify that our firewall is causing the problems is to temporarily open up all ports, restart the firewall services, and watch as our VPN traffic flows unimpeded. If it doesn't, well, you have other problems which are outside the scope of this entry :)
After taking a look at the rules which are in effect, you will most likely see a line similar to this:
12312 allow ip from 192.168.1.0/24 to any via en0 keep-state
This is the rule which allows traffic originating from within our LAN, destined for any address, to be allowed out. keep-state tells the firewall to temporarily open up a hole in the firewall to allow the reply to come back--but only if it originates from the original destination. (read here for some more info on stateful packet filtering). Anyways, the issue here is that the firewall is being very specific, which is good for firewalls, but currently bad for us. It is being specific in the fact that its only allowing out traffic that originated from within our LAN, on interface en0, which is our private LAN interface. The problem arises from the fact that our VPN traffic is originating on the ppp0 interface--not en0. So, we need to add rule that allows this traffic.
Unfortunately, I could not find a way to get make the advanced rule editor generate what I needed. So, I dropped to the commandline on the server and issued this:
> sudo bash
root# ipfw add 50000 allow ip from 192.168.1.0/24 to any via ppp0 keep-state
This inserts the rule we need before the default deny rules. There are some caveats to this approach, however:
If anyone knows any solutions to either of these, please leave a comment and let me know. Otherwise, for the casual user, I hope this entry solves some of the problems you might be having in setting up Tiger Server as a gateway.
1 A neighbor's open wireless access point is great for testing VPN since you can connect to your external interface from the "outside world"
I came across an interesting problem this weekend. It began when I could no longer see Rendezvous/Bonjour services advertised on my network. Then I noticed that my battery level indicator wasn't updating properly. It would only recognize the AC adapter connection and other status changes if I made some change to it such as switching between Percentage and Time Only views. Furthermore, when coming out of sleep mode, airport would no longer automatically reconnect to our wireless network. Connections to my Airport Express were taking a few more seconds than usual and eventually, I could not connect to it at all.
Quite the medley.
Worst of all, the emergence of these problems coincided with the introduction of WPA on our wireless access point and the new
gateway/firewall/file server/ubermac running 10.4 Server. I had fought with Server the previous weekend and lost, downgrading to 10.4 client just to have something working until I could find time to play again. So I spent most of this special Memorial Day futzing, glazing over tcpdump, and wondering just what in the hell was actually occurring.
I then realized Laura's laptop was working fine.
Loading up Console.app, I discovered these interesting lines:
console.log
May 30 15:05:29 localhost loginwindow[65]: Login Window Started Security Agent
May 30 15:05:33 localhost kernel[0]: PB5_1_PlatformMonitor::setAggressiveness - newLevel 1
May 30 15:05:33 localhost kernel[0]: PB5_1_PlatformMonitor::adjustPlatformState - entered, cps 1, cts 0, ccs 0
May 30 15:05:33 localhost kernel[0]: IOPMon::actionPower1 - sending CPU aggressiveness 3
May 30 15:05:33 leto configd[31]: setting hostname to "leto.local"
May 30 15:05:35 leto kernel[0]: AirPort: Link UP: "thill" - 000c41d7ef1e - chan 6
May 30 15:05:38 leto kernel[0]: AirPort: Link DOWN (AP deAuth 15)
May 30 15:05:39 leto kernel[0]: AirPort: Link DOWN (Client disAssoc 15)
May 30 15:05:39 leto kernel[0]: AirPort: Link UP: "thill" - 000c41d7ef1e - chan 6
May 30 15:05:43 leto kernel[0]: AirPort: Link DOWN (AP deAuth 15)
May 30 15:05:44 leto kernel[0]: AirPort: Link DOWN (Client disAssoc 15)
May 30 15:05:44 leto kernel[0]: AirPort: Link UP: "thill" - 000c41d7ef1e - chan 6
May 30 15:05:48 leto kernel[0]: PB5_1_PlatformMonitor::registerConSensor - type 3, csi 2, subsi 5
May 30 15:05:48 leto kernel[0]: AirPort: Link DOWN (AP deAuth 15)
May 30 15:05:50 leto kernel[0]: AirPort: Link DOWN (Client disAssoc 15)
May 30 15:06:45 leto kernel[0]: AirPort: Link UP: "thill" - 000c41d7ef1e - chan 6
May 30 15:06:45 leto configd[31]: AppleTalk startup
May 30 15:06:47 leto crashdump[166]: configd crashed
May 30 15:06:47 leto mDNSResponder: Couldn't read user-specified Computer Name; using default �Macintosh-000A959D1DF4� instead
May 30 15:06:47 leto mDNSResponder: Couldn't read user-specified local hostname; using default �Macintosh-000A959D1DF4.local� instead
May 30 15:06:48 leto launchd: Server 0 in bootstrap 1103 uid 0: "/usr/sbin/lookupd"[47]: exited abnormally: Hangup
May 30 15:06:48 leto crashdump[166]: crash report written to: /Library/Logs/CrashReporter/configd.crash.log
May 30 15:06:48 leto lookupd[170]: lookupd (version 365) starting - Mon May 30 15:06:48 2005
May 30 15:06:49 leto kernel[0]: SIOCPROTOATTACH_IN6: en0 error=17
May 30 15:06:49 leto configd[167]: LINKLOCAL: inet6_attach_interface(en0) failed, File exists (17)
May 30 15:06:49 leto kernel[0]: SIOCPROTOATTACH_IN6: en1 error=17
May 30 15:06:49 leto configd[167]: LINKLOCAL: inet6_attach_interface(en1) failed, File exists (17)
May 30 15:06:49 leto kernel[0]: SIOCPROTOATTACH_IN6: fw0 error=17
May 30 15:06:49 leto configd[167]: LINKLOCAL: inet6_attach_interface(fw0) failed, File exists (17)
May 30 15:06:49 leto kernel[0]: PB5_1_PlatformMonitor::setAggressiveness - newLevel 1
May 30 15:06:49 leto configd[167]: AppleTalk startup
May 30 15:06:49 leto configd[167]: AppleTalk already running, restarting
May 30 15:06:49 leto configd[167]: AppleTalk shutdown
May 30 15:06:49 leto configd[167]: AppleTalk shutdown complete
May 30 15:06:49 leto configd[167]: AppleTalk startup
May 30 15:06:54 leto configd[167]: executing /System/Library/SystemConfiguration/Kicker.bundle/Contents/Resources/enable-network
May 30 15:06:54 leto configd[167]: posting notification com.apple.system.config.network_change
May 30 15:06:54 leto lookupd[179]: lookupd (version 365) starting - Mon May 30 15:06:54 2005
May 30 15:06:55 leto ntpdate[191]: getnetnum: "time.apple.com" invalid host number, line ignored
May 30 15:06:55 leto ntpdate[191]: no servers can be used, exiting
May 30 15:06:55 leto configd[167]: AppleTalk startup complete
May 30 15:06:57 leto configd[167]: target=enable-network: disabled
May 30 15:06:57 leto ntpd_initres[199]: couldn't resolve `time.apple.com', giving up on it
May 30 15:07:00 leto kernel[0]: in_delmulti - ignorning invalid inm (0x656e00c0)
May 30 15:07:00 leto launchd: Server 154f in bootstrap 1103 uid 0: "/usr/sbin/lookupd"[179]: exited abnormally: Hangup
May 30 15:07:00 leto configd[167]: posting notification com.apple.system.config.network_change
May 30 15:07:00 leto lookupd[230]: lookupd (version 365) starting - Mon May 30 15:07:00 2005
May 30 15:07:00 leto configd[167]: setting hostname to "leto.localdomain"
This looks like quite a mess, but here's what (I believe) was happening. The line to pay attention to is:
May 30 15:06:47 leto mDNSResponder: Couldn't read user-specified Computer Name;
using default �Macintosh-000A959D1DF4� instead
followed by the crashing of configd. mDNSResponder is the daemon responsible for handling Rendezvous/Bonjour traffic--sounds like it's having trouble determining my hostname. In addition, if one reads the man page, one learns:
The configd daemon is responsible for many configuration aspects of the
local system. configd maintains data reflecting the desired and current
state of the system, provides notifications to applications when this
data changes, and hosts a number of configuration agents in the form of
loadable bundles.
Ah hah! My errant battery meter, inability to reconnect to my wireless network are all tied to this mis/non-handling of system events by configd. It looks as if one of the preference files which sets my hostname has been corrupted and is causing configd to crash. Later, mDNSResponsder doesn't like what it reads, and sets a default hostname. configd is resurected by launchd and now has a valid hostname, even if it's a bit weird. Twilight zone effects ensue.
I decided to apply the age-old remedy passed down by the OS X veterans of yore: blow away preference files and caches. Particularly:
/Library/Preferences/SystemConfiguration/*
/Library/Caches/*
Also, everything related to SystemUIServer, networking, systempreferences, and the window manager in:
/Library/Preferences
~/Library/Preferences/ByHost
~/Library/Preferences
Why the shotgun approach? One, I did not feel like opening each .plist and attempting to decipher its relevance. Two, blowing away SystemUIServer and window manager preferences is a documented fix for many OS X ails. You lose some preferences, but OS X regenerates the .plist's and all is well. After rebooting and reconfiguring via System Preferences.app, everything worked as expected.
I am still not certain what actually caused this problem. As I was screwing around with DHCP and DNS on the server, I worked briefly using a private domain of "local". While I thought I was overlapping nicely with Rendezvous/Bonjour, it can actually cause problems. Amidst all this mucking about, perhaps a small corruption was introduced into one of the host settings that changing the Computer Name via System Preferences -> Sharing was unable to fix.
The only thing that matters is that it is currently fixed and hopefully Google will index this page well enough so others can avoid the same hassle.
When I decided to purchase a used Sawtooth PowerMac G4, I knew that I needed to add a PCI 802.11g (54Mbs) wireless card in order to make it the access point for our wireless network (all of our devices are G-capable). Being as the PowerMacs can accept quite a bit of 3rd party hardware, I didn't think it would be a big deal to find a card on the cheap and slap it in. Needless to say, it isn't quite that simple. While the PowerMac G4 (and possibly G3) lines go a long way towards working with standard hardware, it is still necessary to do a bit of research before throwing cards around.
Now the Apple-savvy would helpfully point out that the G4 PowerMacs had built in Airport slots. What is an Airport slot? In the 802.11b case, it is a PCMCIA socket on the motherboard. Yes, the same bus used in laptop expansion cards. Now if you're like me, you've just asked yourself of someone nearby why in the earth would you want to graft a PCMCIA bus onto motherboard used in a desktop machine? Well, I posed this question to esigler. He figures Apple chose this route in order to standardize their Airport implementation across all product lines. If you think, it makes sense, as they can use the PCMCIA interface in all of their laptops and desktops; consequently, only one Airport card has to be produced.
So, the Sawtooth PowerMac G4 has an Airport slot and Airport cards are available-a-plenty on eBay. While the prices aren't stellar (~$60), it's a good, guaranteed solution.
But not for me.
My network is all 802.11g. I don't need an Airport card for the Sawtooth, I need an Airport Extreme card. Unfortunately, Airport Extreme cards aren't PCMCIA--they are CompactPCI. PCMCIA doesn't have enough bandwidth to support the (possible) 54Mbps throughput of an 802.11g card. Therefore, I cannot use an Airport Extreme card in a Sawtooth--I must use a normal, PCI wireless card, none of which are produced by Apple.
To get a wireless card working with OS X, choosing the proper chipset will go a long way towards easing any headaches. In particular, Apple's Airport and Airport Extreme cards are based on the Broadcom chipset. If one selects a Broadcom-based PCI card, it is almost certain that Apple's Airport drivers and software will work flawlessly. Other chipsets will work as well, but 3rd-party drivers are often required--some of them for a fee.
So which cards are Broadcom-based? Sometimes, it's tough to tell. This list is a great place to start. It lists tons of cards and the required drivers to make them work under OS X. I ended up choosing a Buffalo WLI2-PCI-G54. It's an established brand that seems to make pretty decent products. You can get them for about $40 new from Newegg.com and $35 from Amazon. I got mine from a seller on eBay for $18. After installing it, it works perfectly with OS X 10.4 on the Sawtooth G4--no extra configuration needed.
Hopefully this entry will help those of you outfitting older Macs with 802.11g cards and save you the days I spent researching and prevent any headaches you might incur by accidently choosing a non-Broadcom chipset.
As an update to my Mini-Mac-As-Mega-Server scheme , I'd like to spell out why this did not turn out to be such a stellar idea. To recap, I had a few goals in mind:
While the Mini solution does #2 and #3 quite well, it utterly fails at #1. In order to connect the laser printer, scanner, cable modem, iPod, external firewire drives, the addition of a powered USB/Firewire hub was required. In other words, I was strapping back on everything Apple took out when they designed the Mini. The configuration, even though it eliminated a wireless access point, router, and switch, resulted in no net change in number of cables, devices, and power cords. Plus, I was looking at this expenditure:
| Cost | Item |
| 568 | 1.25ghz Mac Mini + Airport + Bluetooth + Student Discount |
| 7 | PS/2 -> USB adapter for utilizing old keyboard and mouse |
| 26 | powered USB/FW hub |
| 147 | Dual Firewire hard drive enclosure |
| 748 | Total |
That's quite a bit of money to replace an existing system with something slightly more elegant--if you can call a Mini-turned-Hydra such. It was really just working out to be an excuse to get a Mini. Later, I hit upon the idea of using an old G4 PowerMac.
What?
You heard correctly--an older, 400-500mhz PowerMac G4. Why consider such a thing?
In fact, I was able to snag a 400mhz Sawtooth G4 off eBay. It was for sale by the original owner (with original box!) and it came with the original keyboard and puck mouse1, 896MB RAM, an external CDRW and Zip drive. I snagged the whole lot for $248. I don't have any use for the external devices, but it was a good price for a machine with this much RAM (at least relative to the last few similar machines that sold).
| Cost | Item |
| 248 | Used 400mhz Powermac G4 896MB RAM + Original keyboard/mouse |
| 35 | New PCI wireless NIC |
| 69 | OSX 10.4 Tiger |
| 352 | Total |
I'm a bit nervous about this transaction, as this is only the second time I've purchased anything off eBay; the first item was a keyboard. So with luck, my next entry won't chronicle an eBay bilking experience.
1 The merit of this is debatable of course. This machine isn't going to be used interactively much--I'm more concerned with the input devices taking up less space.
2 Cheerfully pointed out by esigler.
Okay, I'm in total Apple Fan Boy ModeTM, so bear with me. I have this current "situation". I'm a music whore. This makes me a disk-space whore. Obviously, I do not have enough disk space on my Powerbook's measly 60GB drive for everything. However, my antiquated 700mhz Athlon has a 120GB drive; this has been my file server. So, my current music management scheme looks thus:
This, while giving me centralized storage for my music, also makes my life a bit more difficult, as I have to have the server mounted anytime I wish to play/add/modify music. Also, iTunes likes to confuse itself should I try to use it without the server mounted. For a few months now, my plan to ease this situation as been:
This is a slightly more elegant solution and would be pretty adequate except for the following two concerns, which I haven't clued you in on yet.
I'm no stranger to turning unix boxes into gateways--I rather enjoy it in some weird, sado-masochistic way. However, I'm getting a bit old and crochety, and I'm looking for something a bit simpler, more elegant (starting to sound a lot like the post that started this whole Mac thing, isn't it?). The date is fast approaching where I need to add diskspace to the file server, so something will eventually have to be done. After coming across an external firewire drive ad, it hit me:
This gives us all the following benefits:
So, now that esigler and Don have simultaneously slapped their forheads and uttered the requisite "Oiy", I'd like to point out the obvious reasons why this is not entirely Insanely Great.
So, tell me what you think. As a hint, I'm looking for something more constructive than "You're nuts."
I am very frightened all of a sudden.
Last night I remembered why prohibited myself from keeping any sort of liquid near any of my computers.
Today, I reinstated that ban.
Fear not, Lapzilla is unharmed, though left slightly shaken and rather nervous. A gale of hellish proportions blew through HSV last night (and, incidently, again this evening) and succeeded in knocking out the power. As it was late, I just unplugged the important devices, set my cell phone alarm, and prepared to go to bed. I had been roaming about the house using a Bic aim-n-flame for occasional illumination (at a later date, we'll discuss the sensibility of doing this). Ready for sleep, I placed the Bic onto my computer table--next to my laptop--right overtop a glass of water--which promptly overturned.
As Steve Jobs must look over all His children, I was able snatch up the laptop before it met a watery demise, which left me the task of finding the lighter, lighting one of my candles, and cleaning up the mess.
That is my public gpg key id for subkeys.pgp.net. I remember a few years ago, I got wind of PGP, or Pretty Good Privacy. This was way back in the day, when Phil Zimmerman was just getting the ball rolling. I remember spending a could of hours reading this HUGE PDF introduction to public key cryptography. I downloaded a version, generated some keys, encrypted some stuff, and then promptly discovered I was the only person around using it.
Fast forward to now. On a whim, I look up this nifty plugin, GPGMail, for Mail.app on my powerbook. Hmmm. Looks really cool. Makes it really easy to encrypt, decrypt, sign email. But then I realized I need an installation of GPG. GPGMail is just a front end. So, I grab this pretty little MacGPG. But that just installs the commandline tools. Lo' and behold, there is GPGKeys (on the same page) that's a nifty little front-end to the gpg tools. Makes it a snap to submit your key to the keyserver.
So, if you're using gpg, you can fetch my key from the keyserver with using 0x9C696F2A for its ID. Or, you can grab the ascii-armoured key on my bio page.
There is now no excuse for not having encrypted email. It's just too easy. Naughty emails, here I come.
UPDATE
If you have problems with GPGMail hanging when you send an encrypted message, makes sure the recipient's public key has been signed. This can be done from GPGKeys, from the Key -> Sign Local menu.
If you use an RSS reader, you can subscribe to a feed of all future entries tagged 'apple'.
anime apple audiobook biographical cats chicago christmas cocoa coding college colophon computing food gadgets games home internet just watched links literature mario married metroid missouri music now listening now reading pictures poetry project reading shoes social travel typography vehicle wii wine winter zelda