Saturday, June 19, 2010

Preparing for O'rielly Velocity conf. 2010

This Tuesday (the 22nd) I'll be going to the Velocity conference in California. Some of the events look really interesting

Here are a few of the ones that strike me as interesting for the first day:

(taken from the O'rielly Velocity website)

Metrics 101: What to Measure on Your Website

Web Performance

Sean Power (Watching Websites)

This session will help you build a complete web monitoring strategy. We'll cover the many different metrics you can collect, from latency and uptime to usability and navigation - and show you how to tie them to the goals of your web business. Read more.

Scalable Internet Architectures

Internet traffic spikes aren't what they used to be. It is now evident that even the smallest sites can suffer the attention of the global audience. This presentation dives into techniques to avoid collapse under dire circumstances. Looking at some real traffic spikes, we'll pinpoint what part of the architecture is crumbling under the load; then, walk though stop-gaps and

Cassandra Workshop

This workshop will cover Cassandra design, deployment, and operations in both a theoretical best case target for those building their own facilities as well as an evaluation of how it can be deployed on various public cloud platforms. Read more.

I'll post a summary and thoughts after I attend.

Wednesday, June 16, 2010

New Kernel 2.6.33.5-124 is more eee laptop friendly!

Recently Fedora released kernel 2.6.33.5-124, I noticed immediately that on my Asus eee 1001P the power consumption got much better, extending my battery life ~15-20%. Looking through the changelog I saw some extra support for chipset's, but I'm not sure if this is what did it.
Here is a small example of power top.
Settings during this test:
Screen- 30%
KDE desktop (no "compiz" type effects)
Firefox open with 3-4 tabs (Flash is disabled with "flashblock")
Thunderbird (with davmail)
Skype
Empathy
Wireless network with medium reception (Bluetooth disabled)

After running for an hour, here is a screen shot of my "powertop" read out:

Friday, June 4, 2010

Asus eee 1001P and Linux Fedora 13

I wanted to share with everyone some my Fedora 13 installation experience.
It seems that everyone is installing the netbook version of Ubuntu but I have been a long time user of the Redhat type Linux. For a good number of years I used Mandriva (known then as "Mandrake") and was really pleased but since Fedora 10 there has been a gradual improvement. Fedora seems to have the latest and greatest out there and the system is well tailored together. Fedora 13 definitely creates a new step up and I'm rather pleased.
The first day I received my Asus 1001P I started off with preparing it for a dual boot OS. I am not anti Windows, I think at times it could be useful and I believe it still may have a certain edge with battery life over Linux. In addition- the starter edition loads up FAST and seems to be pretty snappy, so I recommend keeping it around.


Preparing for dual-boot
I used under Windows a program called "Easus", the home edition is free for private use and seems to only limit you on creating new partitions (which I did from Windows or Linux itself). I recommend the following:
  • Shrink Windows to 40GB partition.
  • Boot in to Linux rescue and create an extended volume.
  • Create a 40GB Linux partition (Could be less, in reality I'm using maybe 6GB-10GB).
  • Create a 512MB partition (for SWAP). 
Go back in to Windows, load up Easus- grow the "data" volume to Maximum, should be around 140GB.
Use Easus to format the 140GB "data" partition to Fat32 (This is used as a shared partition between the two OS's). This strategy will allow you to format Linux and re-install without affecting the data partition and also allow you to to a restore operation at boot time to restore your Windows partition from the hidden partition on disk and not lose data.

You are now ready to install Fedora 13.
Installation process should be pretty streight forward. I installed from a USBkey image (8GB) containing the entire DVD image. I did this "livecd-iso-to-disk" utility on the ISO image of Fedora (livecd-iso-to-disk --reset-mbr).










In the section for partition installation method I chose custom and made sure to select the partition I reserved for Linux (format as well) and the small 512MB partition for SWAP.

In the boot menu section I renamed "other" to "Windows 7" (which came with my laptop) in order to make it clear.
I chose to "choose now" on the package install section and made sure to install both gnome and KDE desktops. I am a big fan of KDE, especially with the recent improvements and find KDE 4.4 to be nothing like earlier versions as far as stability and resources.Once the installation is complete, pretty much everything should be working from networking down to the video camera. However, there are a number of adjustments required:

Fix for skype:
If you installed a 64bit OS (which is what I did) you will need to install several packages of 32 bit before you do a full yum update, I learned that later on some strange dependencies happen due to the 64bit version being newer the the 32bit and failing to install 32bit versions. I actually re-installed at this point due to understanding that.
Run the following commands:

yum install libXv.i686*
yum install libXScrnSaver.i686*
yum install qt.i686
yum install qt-x11*.i686
Now install the Fedora 10+ RPM available from Skype (2.1 beta).

Run update!
There are quite a number of GUI little bugs that got fixed after running a full update. It will take most likely a couple hours to complete since when I did it we were talking about 500MB of updates.
To make this process faster run:
yum install yum-plugin-fastestmirror
yum update

Screen brightness control:
As reported by other people with eeepc's, the brightness does kind of act random when using the fn-brightup/brightdown. The fix for this is to apply to your kernel parameters under grub.conf the following line:
"acpi_osi=Linux acpi_backlight=vendor"
Reboot and you should have normal controls.

Sound card:
The sound card works out of the box but does have a couple bugs:
1. When plugging in headphones the sound continues to work on both the external speakers and headset. This seems to be due to the jack sense not being recognized. I found that this entry did the trick:
edit the file /etc/modprobe.d/dist-alsa.conf with your favorite editor and make sure it has this:
install snd-pcm /sbin/modprobe --ignore-install snd-pcm && /sbin/modprobe snd-seq
options snd-hda-intel model=auto position_fix=1
(Basically I added "position_fix=1").
Once again, reboot or reload the modules if you know how and it should be solved.
2. Microphone under skype not working.
This one was a little bit of a chalance since skype on a 64bit platform to begin with was a chalange. It did work OK with hearing audio and video conferencing even, just the microphone didn't pick up. The KDE mixer was not much help since it only showed 1 channel for capture, 1 channel for output and no special controls. I installed padevchooser:
yum install pavucontrol.
I then ran in and balanced my controls as follows:
input devices tab:
40% left
80% right.
This seemed to me optimal after lots of trial and error for skype. Still lots of background noise but it will be good enough to have some medium quality conversation.

Battery performance maximizing:
While the eeepc_laptop module does load, I did find some adjustments required to be more efficient on battery life. I am now able to get close to 8 hours of battery from my 6 cell 48W battery with the following parameters:
Wireless Internet on, 40% screen brightness, Browsing and typing/chatting with quite a few applications running. (skype, Empathy, Thunderbird, Firefox, Openoffice).
Some adjustments to the kernel params:
Start with adding these to your kernel params under /etc/grub.conf:
elevator=deadline
This will utilize power management functionality with the eeepc_laptop module (which should be loaded).
I also added the following parameters to my /etc/rc.local based on recommandeation from "powertop":
modprobe deadline-iosched
echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
echo min_power > /sys/class/scsi_host/host0/link_power_management_policy
It could be I should have added the module under /etc/modules.d but I guess I was testing first.

Some extra control:
I installed an app called "Kill switch manager" for the KDE desktop (you can find it on google). It seems to be rather "Beta" but does offer the ability to graphically turn on/off your bluetooth or wireless.

Next, edit your services, there are many that can be disabled. I will tell you the only ones I have on, you can research and choose more if you feel you need it but for the most part I don't think you will:
NetworkManager
acpid
atd
auditd
bluetooth (assuming you have a 1001P with bluetooth version, there is one without too. Find out)
cpuspeed
crond
cups
gpm
haldaemon
iptables
irqbalance
messagebus
ntpd
portreserve
rsyslog
sshd
udev-post
wine
This should make your laptop a lean, efficient but powerful machine.

Touchpad:
I'm guessing that thanks to the synaptics driver, the mouse pad works pretty well. I was disapointed that for me, at least, the two finger scroll option under the KDE System Settings->Keyboard & Mouse->Touchpad didn't work. Also the tap to click didn't seem to have any effect. I did a lot of playing around trying to manually add it to the X11 configuration but to no evail. The scrolling works out of the box by sliding your finger along the right side of the touchpad.
One thing I was able to at least correct is the pointer going crazy if you accedently touch it with two fingers.
My /usr/share/X11/xorg.conf.d/50-synaptics.conf looks like this:
Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
EndSection
# Quirks for special touchpads
# Some devices have the buttons as part of the lower edge of the touchpad.
# Pressing a button moves the cursor, causing cursor jumps and erroneous
# clicks.
# Use the synaptics area property to work around this.
Section "InputClass"
# Identifier "touchpad button overlap"
Identifier "tap-by-default"
MatchIsTouchpad "on"
# MatchTag "touchpad_button_overlap"
MatchTag "tap-by-default"
Option "AreaBottomEdge" "4000"
Option "SHMConfig" "on"
Option "ClickFinger2" "right"
Option "TapButton1" "1"
Option "RBCornerButton" "3"
EndSection

Update 06/12/2010
I have solved the tap-to-click problem I was having in KDE, I simply removed from my ~homedir/.kde/share/config/kcmtouchpadrc, there must have been legacy settings there conflicting, the KDE re-creates it next login with correct settings.

Some KDE adjustments: I recommend avoiding too many plasma type widgets, some of them are quite heavy on CPU.
I also resized my task bar on the bottom to be a little smaller and chose a "Oxygen netbook" theme which seemed a little more optimized. Aside of a few large configuration menu's from firefox plugins, I have not encountered too many applications which had problems with the screen size. 

Here is a small example of my desktop:

Thursday, June 3, 2010

My first post


A little introduction is in order. My name is David and I'm a Senior Linux Production Engineer at Answers.com (Answers Corp.)

It's been on my mind to start a blog for a long time now.
The reason for that being, I want to contribute back some knowledge and experience I gained in the Linux world over the course of time.
I've been a Linux system Engineer for 12 years now and worked with Linux since 1996. Forums and blogs have proven to be one of the largest resource for learning and trouble shooting and solving problems from others who shared their solution on the net.

I have found that participating in various Linux forum's is hard for me because it requires a lot of monitoring until a question I can answer (and has not yet been answered first) appears. Therefore, I hope that a blog where I write up my experiences will be searchable and allow others to benefit from what I've learned.

So here is to the new post!