Raspberry Pi First Boot

I finally got a little time to unbox and connect my Raspberry Pi that had been sitting in the package for several days.  It arrived the same day as my daughter so, needless to say, she took precedence.  She "helped" daddy get it set up which meant I really didn't get any further than getting the flash card setup and the keyboard an monitor working.  The keyboard I chose months ago before I had even placed an order was a Logitech k400 Wireless Touch Keyboard.  It uses a tiny wireless USB transmitter and combines a keyboard and trackpad in a fairly small package.  It worked immediately with no configuration necessary.  I'm pretty happy with it and it's perfect for the Raspi. I put the Debian Squeeze on my MicroCenter Class 10 SD card.  In spite of many dire warnings about Class 10 cards in the raspi forums, it worked just fine.

My monitor required a little bit more effort.  The monitor is an older Samsung SyncMaster 225sw using an HMDI USB to DVI cable from monoprice.com.  When if first booted up I would see the display flash on the screen for a second and then go blank for 3 or 4 more seconds.  This kept repeating with the display blinking on and off.  After a little research I found that I had to create a config.txt in the boot partition on my flash card and add the single line "config_hdmi_boost=4" to get it working.

That's just as far as my daughter was willing to let me go before she demanded to be the center of attention once again.  Next, up I need to see if I can get my wifi adapter going and then I can really start seeing what I can do with this little guy.

Citrix Receiver 5.5.2 and the 3rd Gen iPad

If you have a new 3rd gen iPad and use Citrix then don't upgrade your Citrix Receiver to the 5.5.2 release that came out yesterday.  It seems to try to support the native retina display resolution but it's also still pixel doubling everything so you end up with a giant desktop that you have to pan around to view. According to a thread on the Citrix forums an update has already been submitted to Apple.  If you've already upgraded and are looking for a work around there seems to be some sort of bizarre beta version of 5.5.4 hiding in the app store which works..  You can have both versions installed at the same time.

Flash Memory Speed Tests

I did some more speed tests on various SD cards and USB flash drives I had lying around.  These aren't extensive benchmarks, I don't really have the patience (or interest) to devote much more effort to this than I already have.  These were just quick "hdparm - t" tests and then I dumped the output to a text file.  I did each test 3 times and took the average. [table id=2 /]

Overall the Microcenter products did better than I would have expected.  I was surprised how poorly my Sandisk ExtremePro UHS-1 SD card did but I suspect that is more an issue of compatibility of the newer standards with the EeePC card reader than the actual card.  I was also surprised to see that, in general, USB flash drives outperform SD cards.  If the Raspberry Pi results are similar then I think it will definitely pay to put the swap space and any other disk intensive things on a USB flash drive rather than the SD card.

raspbmc.com is live

Raspbmc is a custom linux distro for use with XBMC on the Raspberry Pi that I've mentioned before but the website wasn't live at the time.  Here are the highlights from their site:

  • Custom Linux distribution with minimalised kernel.
  • Auto-updating
  • UI installers for Windows, Linux and Mac OS X to allow installation onto a removable device
  • PVR / AirTunes / AirPlay / Spotify integration
  • Same stability and support as the Crystalbuntu Linux distribution
  • Expansive capabilities allowing the installation of a desktop and web browser
  • AFP, NFS and SMB file sharing
  • Configuration utility allowing installation of custom nightlies, audio configuration, update management,
  • Server mode – allows MySQL database hosting and Thumbnail sharing for XBMC multiseat systems.
  • 1080p decoding
  • Free!

Micro Center Class 10 SD cards

I was at Micro Center today and decided to pick up a couple SD cards to use for my Raspberry Pi (when and if I ever manage to get one).  They've always carried house brand/bulk USB flash drives and SD cards for pretty cheap.  I've bought a bunch of the them over the years and, while they work fine, they always seemed pretty slow.  I was thinking I would get a name-brand high speed SD card for the RPi but then I noticed they carry an "Extreme Speed" house model so I decided to check one out.

kevin@minteee ~ $ sudo hdparm -t /dev/sda
/dev/sda:
Timing buffered disk reads: 88 MB in 3.00 seconds = 29.31 MB/sec
kevin@minteee ~ $ sudo hdparm -t /dev/sdb
/dev/sdb:
Timing buffered disk reads: 46 MB in 3.11 seconds = 14.78 MB/sec

/dev/sda is the internal SSD on my EeePC 701 and /dev/sdb is the 8GB Micro Center card I bought.  It seems to be about half the speed of the SSD on reads which seems like it's pretty good.  I don't really have anything to compare it to at the moment though.

Reset Terminal Services Session Remotely

I had to log onto a Windows server today to run a script and was hit with the common "The terminal server has exceeded the maximum number of allowed connections." error.  No big deal, I'll just connect to the console session with "mstsc /console", right?  Apparently not.  It seems that the /console switch is gone and connecting to Session 0 remotely is no longer allowed.  There is now a /admin switch but that seems to only allow you to reconnect to an existing session that you initiated and in my case I needed to kick a different user off the box in order to connect. The solution was a few simple terminal services command line tools.  The QUERY command lets you view the active sessions on the server and RESET SESSION will let you boot off the offending user.

C:\>query session /server:SERVER01
No session exists for *

If you get this message it's likely because your account doesn't have the necessary rights on "server01". You can use "net use" to open a session on the remote server with different credentials.

C:\>net use /user:dom\adminaccount \\SERVER01\c$
Enter the password for 'dom\adminaccount' to connect to 'SERVER01':

Update: I've had issues using "net use" to open a session with different credentials.  A more reliable solution is to start a new command shell as an administrative account as shown below.

C:\>runas /user:dom\adminaccount cmd
Enter the password for dom\adminaccount:
Attempting to start cmd as user "dom\adminaccount" ...

After you enter your password you should be told the command completed successfully. Then you can issue the query command again.

C:\>query session /server:SERVER01
SESSIONNAME	USERNAME	ID	STATE	TYPE	DEVICE
console				0	Conn	wdcon
rdp-tcp				65536	Listen	rdpwd
rdp-tcp#113	user01		2	Active	rdpwd
		server01	4	Disc	rdpwd
		adminaccount	6	Disc	rdpwd

In this case I'm going to kill the connection for "user01" which is session 2.

C:\>reset session 2 /server:SERVER01

And now I'm good to go and can remote into my server to run my script.