Archive for the 'Technology' Category

Use a VPN to selectively cloak your IP address to access Pandora, Netflix, and the like

There are certain situations on the internet when you need to pretend to be someone you’re not. For instance, if you want to listen to Pandora. If Pandora detects that your IP address is not originating from the U.S., you will politely be told that licensing agreements prevent them from making their internet radio station available to you. Same with Netflix, Google voice, Hulu, parts of Youtube, just to name a few. To access these services from outside the U.S. all you need is a U.S. based VPN. The easiest way to get a U.S. based IP address is to subscribe to a U.S. based VPN service (like HideMyAss‘ Pro VPN) and route all your computer’s network traffic through a VPN tunnel as long as you need it. This wasn’t flexible enough for me. I wanted to go the extra mile and build my own VPN service, and set up a centralized network routing on my DSL router (a Fritz!Box 7390). That way, all traffic from my internal home network (be it from an Apple TV, iPhone, iPad, a Mac, or even a Windows PC) that I want to originate from an foreign IP address will automatically use the VPN, and all other traffic will use my usual WAN IP address from my DSL service provider. Read more »

Show routing table in Mac OS X

Here’s a quick one. The route command won’t show you the full routing table in Mac OS X. You have to use the netstat command:

netstat -rn

This will print the numeric view. If you prefer host names, omit the n parameter:

netstat -r

Adobe Digital Enterprise Platform (ADEP 10) installation woes

If you’re trying to setup Adobe’s Digital Enterprise Platform (ADEP 10) and the ADEP configuration manager reports any of the following errors while bootstrapping, then I might have the solution for you.

com.adobe.pof.schema.ObjectTypeNotFoundException: Object Type: dsc.sc_property_editor not found

com.adobe.pof.schema.ObjectTypeNotFoundException: Object Type: dsc.sc_service_configuration not found

It took me days of experimenting until I figured this out by sheer luck. If you select UDP based cluster caching in the configuration manager, the document service component will use the specified UDP port while bootstrapping the core configuration. If another cluster is communicating over the same multicast port, bootstrapping the core component will fail with obscure error messages.

The official documentation says:

Note: The value for <port number> can be any available port between 1025 and 65535. The multicast port must be unique to the Document Services cluster (that is, the port must not be used by any other cluster on the same network, any attempt to use the same port by any other cluster on the same network would result in bootstrap failure). It is recommended that you configure the same <port number>
on all nodes in the Document Services cluster, as in this example: -Dadobe.cache.multicast-port=33456

I missed this section (as real programmers don’t read manuals :) and assumed that it is okay to use the same UDP cluster cache port number for different clusters in the same network. Obviously that’s not the case. I’m now using different port numbers for every ADEP cluster and haven’t seen a bootstrapping problem ever since.

If the configuration manager reports this error (Oracle WebLogic only):

weblogic.management.NoAccessRuntimeException: Access not allowed for subject: principals=[], on Resource AdobeService
Operation: set , Target: EnableSSL

Try to hit the initialize button again. I was able to get rid of the error this way. A more proper way would be to adjust the JMX security policies in WebLogic’s security realm configuration in the JMX Policy Editor. The affected properties are “Attributes: Permission to Write” and “Unregister instances of this
MBean using MBean server”, both need to have its role set to Anonymous. The exact steps are detailed in the ADEP installation instructions using WebLogic (see “Creating JMX policies for database initialization”). Make sure you remove those properties after the installation went through. Looks like a security hole to me if you leave them in.

Windows 7: Setup was unable to create a new system partition

Gosh, Windows 7 was giving me a really hard time when I tried to install it on a OCZ RevoDrive 3 PCI-Express SSD drive. Every installation attempt was greeted with this error message:

“Setup was unable to create a new system partition or locate an existing system partition”

Strangely, the drive was working perfectly as a non-boot drive under an existing Windows 7 installation and also visible as a SCSI drive in the BIOS drive list. Here are the steps which finally worked for me:

  1. Extract the RevoDrive 3 drivers on a FAT32-formatted USB flash drive
  2. Disconnect any disk drives (except the DVD drive) by unplugging the SATA cables
  3. Disconnect any USB devices (except for keyboard and mouse obviously)
  4. Boot Windows using the Windows 7 installation DVD
  5. When prompted for the target installation drive, choose “Load driver” (your list of available drives should be empty)
  6. Plug in the USB flash drive containing the drivers (don’t plug it in earlier!)
  7. Let Windows 7 load the driver from the flash drive
  8. Unplug the USB flash drive
  9. Choose the RevoDrive 3 as the installation drive and continue the Windows 7 installation
  10. Once Windows 7 is installed, reconnect all your SATA and USB devices

This PCIe SSD is ridiculously fast! Being a Mac person this drive even makes me like Windows a tiny bit more ;-) Unfortunately, there are no drivers available for OS X Lion and according to OCZ there never will be. This super fast SSD would be such a wonderful addition to any Mac Pro or Hackintosh setup.

USB Bluetooth dongle for your OS X 10.7 Lion Hackintosh

Want to use Bluetooth on your OS X 10.7 Lion Hackintosh? I went through several super-low-cost USB Bluetooth dongles until I found one that still works after waking the Hack from sleep, which seems to be a common problem for some Bluetooth dongles. I’m only using Bluetooth for my Magic Trackpad though but so far, this dongle works a treat. I got mine from eBay for $1.88 including free shipping (no kiddin’!) from this seller. The item is shipping from China, delivery may take 2 weeks. Read more »

Lowering Radeon 6870 fan noise in OS X Lion

While in Windows 7 the Radeon 6870′s GPU fan is almost inaudible under idle conditions, the fan is clearly audible in OS X Lion. In OS X the GPU fan is permanently changing its speed which creates quite some bothersome noise. If you can’t live with that noise, here’s a tip for the not-so-faint-of-heart about how to modify the fan control curve of your Radeon graphics card. This involves flashing your graphics card’s BIOS using an optimized temperature/fan-speed map. Ain’t that cool? :-) Read more »

Best graphics card for an OS X 10.7 Lion Hackintosh

If you’re about to build a new OS X 10.7 Hackintosh or to replace the graphics card in your current Hackintosh rig, you may want to consider the AMD Radeon HD 6870. Power-wise it’s a mid-range graphics card which comes with an affordable price tag. The big advantage of the Radeon 6870 is that it fully supports Quartz Extreme and Core Image (QE/CI) in OS X Lion out of the box, no additional kernel extension like ATY_y.kext needed. All you have to do is to set graphics enabler to YES in Chameleon’s com.apple.Boot.plist. If you don’t need a high-performance gamer graphics card, this is the one to go for!

AMD Radeon HD 6870 Series:
  Chipset Model:	AMD Radeon HD 6870 Series
  Type:	GPU
  Bus:	PCIe
  PCIe Lane Width:	x16
  VRAM (Total):	1024 MB
  Vendor:	ATI (0x1002)
  Device ID:	0x6738
  Revision ID:	0x0000

About OS X Lion NAS Time Machine compatibility, Netatalk & GPL violations

While many NAS-vendors like QNAP updated their products to ensure compatibility with AFP-shares in OS X Lion 10.7, things look different when it comes to Time Machine support. Most NAS-vendors still use an older version of Netatalk which supports AFP-shares in Lion (at least when using the DHX2 authentication module) but not the new Time Machine features introduced in AFP 3.3 like “Replay Cache”.

In order to ensure compatibility with OS X Lion’s Time Machine, NAS-vendors will have to use the latest Netatalk v2.2. Users trying to connect to a NAS-based Time Machine volume using an older Netatalk version are greeted with this error message:

The network backup disk does not support the required AFP features

Now, here’s the catch: the current Netatalk maintainer NetAFP.com decided to make this important release closed source, only releasing it to customers who are paying for commercial support (looks like you’re lucky if you own a Netgear or Drobo NAS!). With this move the maintainer deliberately grossly violates the GPL license which Netatalk is based upon in order to blackmail NAS-vendors into paying for commercial support. Make sure to check out Matthew Keller’s insightful response to NetAFP’s new closed source strategy. While both sides have their points I agree with Matthew that violating the GPL in order to earn money doesn’t sound like a solid business model.

Since NAS-vendors who advertise Time Machine compatibility in their products are in a locked-in situation, they only have two choices:

  1. Fork the last available Netatalk version and continue the development on their own (or better: form an alliance between NAS-vendors to advance development of Netatalk)
  2. Pay the current maintainer for commercial support and in turn get access to GPL-based software

I just hope things get sorted out quickly so we can all continue to use Time Machine backups using our Linux-based NAS’ with OS X Lion.

ASUS P6T Hackintosh & i7 970 6-core Gulftown CPU

Today, I updated the i7 920 Nehalem quad core processor in my ASUS P6T based Hackintosh to an even more spiffy 970 6-core Gulftown CPU.  Since the i7 970 was retired and discontinued (EOL) recently, prices for the leftover stock have fallen sharply so I decided to get a new one as long as they’re still available. If you own an ASUS P6T make sure you use at least Bios rev. 1303 or the mainboard won’t recognize the 970.

Upon booting OS X I noticed that P-state P0 a.k.a “Turbo Mode” wasn’t working anymore with the new hexacore CPU on the mainboard. In order to get Turbo Mode back, I needed to edit Chameleon’s com.apple.Boot.plist. Here’s what I added:

	<key>GeneratePStates</key>
	<string>Yes</string>
	<key>GenerateCStates</key>
	<string>Yes</string>

With these settings Chameleon automatically takes care of the C-states and P-states for the CPU. Very cool, that saved me a lot of time messing around with the DSDT! You need at least a recent Chameleon version like RC5 though, the last official release from 2009 won’t support those properties.

Here’s the Geekbench score of the updated rig:

 

Stunning OS X Lion boot times on an ASUS P6T Hackintosh

Mac OS X Lion boot performance has been optimized and shows off some ridiculous boot times if booting from an SSD. Here’s a video of an ASUS P6T based Hackintosh booting OS X Lion.

Inspired by MacRumors post about the new 27-inch BTO iMac being the fastest Mac ever, here’s the same with an ASUS P6T based Hackintosh, obviously it uses an SSD too just like the iMac shown in the video. The ASUS P6T rig is 2 years old and uses a Lynnfield Core i7 CPU (4 cores), so no fancy Sandy Bridge there.

Both videos were taken with an iPhone and no modifications were made, it’s straight from the iPhone’s camera.

Pretty sick, isn’t it?

Tips & tricks using XPC for Mac OS X 10.7 Lion developer preview 2

The latest XPC EFI boot loader version 0.83.02 allows you to install Mac OS X 10.7 Lion dev preview 2 without having to change or copy a single file on the OS X install volume. Apart from configuring XPC it all works out of the box which simplifies installing OS X Lion a whole lot. XPC now fully supports the new disk-image based installation process that was first introduced in Lion dev preview 1 and is able to boot from mounted .dmg volume images. I just gave it a try and it worked flawlessly on my Hackintosh rig! Read more »

Black screen in crashed iPad video player app

For unknown reasons, the iOS video player app found on all iPads locks itself up in rare situations. Opening the video app results in a black screen, all you can do is jump back to the home screen using the home button. Both, restarting the iPad or re-syncing it on iTunes won’t help.

Now before you restore your iPad, there are two quick things you could try first:

  1. If you know the title of a movie on your iPad, use the search function to look it up and start it by tapping it
  2. …or open the iPod app and select a video podcast or iPad video and play it

The video app should be working again from now on. If it doesn’t then I’m afraid, you probably have to do a full restore of your iPad.

IP-address binding woes in Ubuntu Server 10.04 LTS

If you’re on an Ubuntu Server with multiple IP addresses and you want to bind networking software like sshd or Squid to a dediated network interface (unlike 0.0.0.0) you
might eventually end up with error messages like:

error: Bind to port 22 on 123.234.456.789 failed: Cannot assign requested address.

Which is bad, since you may lock yourself out of the server.

The same may also happen to Squid:

commBind: Cannot bind socket FD 19 to 123.234.456.789:3128: (99) Cannot assign requested address

Both, Squid and sshd, have in common, that they’re upstart-ed from /etc/init. What happens in 10.04 is that ssh or squid are started too early, at least if you configured multiple network interfaces on the server.
And another weird thing is that for every network interface in /etc/network/interfaces the scripts in /etc/network/if-up.d/* are being re-executed when the network is brought up at boot time.
That’s pretty lame if you ask me because if the server has 10 network interfaces, sshd is being started and stopped 10 times during boot.

Anyway, the trick is to tell upstart not to start certain processes until the last network interface on a server is up.
In my case, the last network interface is venet0:8 so the start command in /etc/init/ssh.conf and/or /etc/init/squid.conf has to be modified to:

start on filesystem and net-device-up IFACE=venet0:8

This also prevents the useless restarting of sshd when the network is being started. And again, this only happens if the server has multiple IP addresses and you’re not using the standard bind-’em-all address 0.0.0.0 for processes that are started from /etc/init.

How to use a different bind IP address in TorrentFlux

TorrentFlux is a web-based PHP front-end for the BitTorrent client BitTornado. It’s a great software to download torrents on Linux servers that have no desktop manager installed.

BitTornado uses the server’s default IP address for it’s peer-to-peer connections by default. If your server has multiple IP addresses, you may want to assign a different IP address for the torrent traffic. All you have to do is to specify a bind parameter in the TorrentFlux settings. On Debian-based servers however, downloading stops instantly if the bind parameter is specified. After doing some debugging I found out that is has to do with how the parameters are passed from TorrentFlux to BitTornado. A small modification to the index.php file will fix this problem. Here’s how to do it. Read more »

ASUS P6T & Mac OS X Lion 10.7 developer preview 2

Using the XPC method loosely described in this post I tried to install the new Mac OS X 10.7 11A419 build aka developer preview 2 on my ASUS P6T Hackintosh. Once the prepared USB thumb drive OS X 10.7 installer booted to the command line using the -s kernel argument in XPC, I tried to kextload FakeSMC.kext as usual. But after typing exit to continue the boot process, the system always hangs with the last message being

Kext com.apple.driver.DiskImages.FileBackingStore might not load – kextd is currently unavailable

The boot process can’t be completed successfully if a kext is being loaded from the console, no matter what kext it is. Read more »

Next Page »