Thursday, December 11, 2014

Loading Debian Jessie onto the Lenovo ThinkServer RD330

This server has a firmware that will not let you disable the LSI software raid controller (boo!). I set the disk up within the software raid setup. Debian Wheezy didn’t detect the software array for me (using boot option dmraid=true). Debian Jessie detected it (again, using dmraid=true). It fails to write grub to the fake raid though. I used a usb disk for the install. You have to boot in EFI mode for the following to work.

The install is normal until you get to the bootloader. I chose not to install grub, opting for efi stub instead. Here is what I did:


  • run the installer, but choose not to install a bootloader, reboot back into the installer (again, EFI mode), and select the recovery option (booting with the dmraid=true option)
  • figure out what the root partition is on the disk, and mount it. chroot into it. mount the efi system partition to /boot/efi/
  • create the file ‘/etc/kernel/postinst.d/zz-update-efistub’, and add: 
#!/bin/sh 
cp -u /vmlinuz /initrd.img /boot/efi/EFI/debian

into it.


  • make it executable (chmod +x /etc/kernel/postinst.d/zz-update-efistub)
  • aptitude install efibootmgr
  • efibootmgr -c -g -L "Debian (EFI stub)" -l '\EFI\debian\vmlinuz' -u "root=/dev/sda2 ro quiet rootfstype=ext4 add_efi_memmap initrd=\\EFI\\debian\\initrd.img" -d /dev/sdb
    • I used a usb flash disk as the installer, and it was detected as /dev/sda. Our fake raid was detected as /dev/sdb, hence the need for specifying the device to use.

.

Monday, April 9, 2012

usb tethering with the samsung aviator w/ debian linux

My latest phone, the Samsung Aviator, is the first 4G LTE phone on the U.S. Cellular network. Here in Maine, LTE is up and running and very speedy. I pay for tethering on my account because there is no other available broadband in my area.

Tethering works just fine when I turn my phone into a wifi access point. It also works in MS Windows (basically my pc is a glorified gaming console) in usb tether. However, when I booted into my Debian Linux install, usb tethering just didn't work. The solution was to manually set the mtu to 1000. I haven't tried messing around with it, and I'm sure other values may alter its performance, but this is what I had to do to get it to work reliably.

I used wicd's scripts option to manually set the mtu before it brings the interface up. It seems to work fine.

Wednesday, March 9, 2011

thinkpad x120e w/ debian linux (sid)

I purchased a new lenovo thinkpad x120e recently. It arrived 3-7-2011. Be sure to back your MS Windows install up (if you really want it), using clonezilla or some other means, becuase it does not come with recovery discs. The build of this machine seems very solid. In short, its awesome. Small, powerful, low power (~15watts @ idle + lcd at its brightest), and linux friendly. I used debian sid, which has proper support for the GPU via fglrx. However, I did run into some issues.

first, the bad:
  • I have no display when resuming from suspend to ram...I probably need to force unload fglrx before suspending...
  • the wireless didn't work out of the box. It can be downloaded and compiled from realtek's site, but there will also be kernel support for it in 2.6.38. I will probably compile the kernel after it gets out of rc status.
the good:
  • fglrx from debian sid's non-free repository works, if you follow debian's wiki instructions on how to install it.
  • Two finger scrolling works great.
  • The realtek ethernet controller works great (i believe this requires firmware, so I installed it with the 'firmware-realtek' package)
  • cpu frequency scaling works 'out of the box', just make sure to load powernow-k8 kernel module. I used powernowd, which, by default, increases the frequency when I need it. The e-350 has three pstates, 800, 1280, and 1600mhz.
  • The card reader seemed to work, although xfce seemed to be confused about the card's format. I mounted it manually with no issues.
  • The webcam works. I installed cheese, and the default resolution was 1280x720 with a really low framerate. I set it to 640x480, and it looks great.
  • The audio card works. Its an ATI HDA. The hdmi audio out also shows up in the mixer, but I have yet to test this on my TV.

Tuesday, January 11, 2011

using usb tethering for android on mac os x

my cellular provider is U.S. Cellular. my phone is a samsung mesmerize. this works on mac os x 10.5.8, i can only assume it works on 10.6 as well. only do this if you pay for the dial up service.


step one: enable wifi tethering on your android:
go to settings>wireless & networks and check 'dial up networking'.

your phone should show up as '/dev/cu.usbmodemsomenumber'. i think this number is autogenerated depending on how many times you plug it into your mac whilst in dial up networking mode, because the first time i tried to tether over usb, it assigned it the number 411. its now 621. anyway, that doesn't really matter...what matters is that it has a /dev/ entry and that the user can actually access it.

step two: set the modem up under os x:
the password is your phone number.


step three: configure the modem type:
by default, the modem type will be apple v.32, which is a fail. set it to generic. the rest of the settings just make sense. i didn't play around with them, but it worked for me.



remember to uncheck the dial up networking box when done.

Thursday, February 18, 2010

Tethering a BlackBerry with a Linux based system via bluetooth

I tether my BlackBerry Pearl 8130 to my apple ibook g4, which runs Debian Linux, using bluetooth. My provider is U.S. Cellular. The following should work using any modern debian based distro and perhaps using a perhaps any phone that supports dial up networking via bluetooth (not just a blackberry).

You will need a bluetooth adapter that is recognized by the kernel of your distro, a working bluetooth stack, and a tethering plan from your provider. also, very recommended are the tools sdptool and hcitool, both of which are provided by the bluez-utils package in Debian (and probably Ubuntu), and also pppconfig - more on this one a little later.

First things first, you need the hardware address of your phones bluetooth adapter, which can be found running hcitool scan. It will look something like:

user@linux:~$ hcitool scan
Scanning ...
00:24:7A:7A:48:F7 phone


The second vital piece of info you need is the channel your phone uses for its dial up connection. This is achieved using the sdptool command:

user@linux:~$ sdptool browse 00:24:7A:7A:48:F7 | less

Piping through less makes it easier to read. Using the down/up key, look for part labled "Service Name: Dialup Networking", underneath this it will tell you what channel it uses. The next step is to modify the rfcomm.conf file, which is located in /etc/bluetooth/rfcomm.conf. Mine looks like:

rfcomm0 {
bind yes;
device 00:24:7A:7A:48:F7;
channel 3;
}



You can actually get the gnome network manager to manage your dialup connections as well as wifi or ethernet. to do this, use the pppconfig tool to enter your dialout number and username. Configured, mine looks like:

One oddity is that it doesn't show my device, which for me is /dev/rfcomm0. At this point, you should be able to dial out, using the pppd command:

user@linux:~$ sudo pppd call 3G_Wireless

To use the GUI to dial out, I let the gnome network manager manage dialout/hang up this device. This is done by adding something like:

iface ppp0 inet ppp
provider 3G_Wireless

into your /etc/network/interfaces, where 3G_Wireless is the name of the connection you created in the pppconfig utility.