Coming Soon, Software Freedom Day 2010

Its that time again to celebrate the freedom of software. On September 18th, 2010 the world will be celebrating Software Freedom Day. If you are interested in hosting an event in your local area, go to the wiki & sign up your team (Registration link). If you register your team before the August 1st 2010, you are guaranteed to receive team supplies like T-shirts, Linux Distro CDs to handout & much more.

If you don’t have the time to put on your own SFD event, look at the Map or the Teams Wiki page to join an existing team in your area. But if all of that doesn’t work, the easiest way to help spread the word is to add a SFD banner to your site. You can get them here: http://wiki.softwarefreedomday.org/Artwork#Banners

- Ken

The Good, the Bad & the Ugly of Linux Audio

Most of use Linux users know that Linux audio can be an adventure in dark voodoo magic or an absolute no brainer. Much of it depends on your hardware and the slight variations of that hardware.

If you ever wanted to know way too much about the current state of affairs of the Linux audio stack, then read the following article on TuxRadar called How it works: Linux audio explained.

[pause while you read the article]

The article explains all the different implementations and ways a developer or a user can access audio on a Linux system. But it doesn’t give an indication of where the Linux audio stack should go or what is coming in the future.  Lots of unanswered questions for me.

After reading this write up, I feel that ALSA should incorporate the top features of all the different audio pieces to create a one-stop shop for Linux audio compatibility at the hardware, API & interaction level. Sometimes the wheel doesn’t need to be reinvented.

- Ken

Some good online Sci-fi

Last night I was trying to test out Youtube’s HTML5 video playback implementation using Chomium. I end up getting hooked into watching a 10 part sci-fi series. Each episode was about 5 to 7 minute long so it didn’t feel like I was stuck watching a show that I couldn’t easily stop and get back to. The show was a down right awesome sci-fi flick. Its felt like it was a mix of the galactic wars from the Firefly series, Starship Troopers & Aliens (the second one). The show is called Trenches.

Trenches Banner

The Good:

1) The show was awesome!

2) I found an interesting new features from Youtube. If you are watching an episodic series, Youtube offers a “Autoplay” button. That lil feature made it very easy to watch all 10 episodes all at once without having to 1 setup a playlist or 2 navigate back to the main Trenches landing page to choose the next episode in the series.

The Bad:

1) The video quality was just okay at 480p. Watching it full screen on my laptop with a 1680×1050 resolution made it very pixelated. Plus, I believe all the shows were still encoded in Flash. I’ll have to actually go back an look.

2) If I was logged into my Youtube account I was served ads for watching the videos. I think its pretty weird that I didn’t get any ads through the first 5 episodes I watched without being logged in & then once I logged in I was given an ad. Rather crappy way of handling people with an account. You would think it would be the other way around.

That’s it. Go be a freedom hater for about an hour and enjoy a really cool sci-fi.

Moving LVM partitions to a new system

A few months ago I lost my main workstation that also doubled as my backup server, my web development server, the white noise generator and over all everything machine for my home network.

On that system I run Arch Linux, like do for all of my systems except for my daughters which runs Edubuntu 8.04. I had all of my internal hard drives setup on LVM2 (Logical Volume Manager) partitions. When that system went down I was a shocked. To this day my beloved system still isn’t up and working correctly. So, in the mean time I was able to gather some old PC parts I had sitting in boxes and build out my “official” storage solution.

My storage solution is built up using a dual Pentium III 700 Mhz system with 256MB of RAM, a 4 port SATA PCI card, four 1 Terabyte hard drive & a 20Gig system drive. Over all it is a clunker besides the 4TB of hard drive space. But you are hear to read about my storage system & to know how to re-access your stranded LVM2 partitions.

Step 1: Move the functional hard drive(s) into a system that can read the LVM mappings (This means you have all the proper kernel modules installed & corresponding LVM software). Now if you have multiple drives that make up your LVM mappings, then you need to be able to have all drives accessible in one system. For me I only had one large drive mapped out to different volumes. I was able to add my drive to my storage server by using an external USB case.

Step 2: Once that the drive(s) is physically accessible in new system, you need to know what are the Physical Volume(s) (PV), Volume Groups (VG) & Logical Volume(s) (LV). To obtain this information run the following commands with root privileges & take note of the VG & LV names.

Step 2a: Show the list of available physical volumes by running su -c ‘pvdisplay’ .

[testuser ~]$ su -c 'pvdisplay'
--- Physical volume ---
 PV Name               /dev/sdf3
 VG Name               VolGroup00
 PV Size               150.56 GiB / not usable 2.66 MiB
 Allocatable           yes
 PE Size               4.00 MiB
 Total PE              38542
 Free PE               14222
 Allocated PE          24320
 PV UUID               YSFO73-x3IY-wNTg-CUND-e3wT-7Whb-yLk4iO

 ...

Step 2b: Show the list of available volume groups by running su -c ‘vgdisplay’ .

[testuser ~]$ su -c 'vgdisplay'
  --- Volume group ---
  VG Name               VolGroup00
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  25
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               150.55 GiB
  PE Size               4.00 MiB
  Total PE              38542
  Alloc PE / Size       24320 / 95.00 GiB
  Free  PE / Size       14222 / 55.55 GiB
  VG UUID               oGX7wj-BLCd-6M8Q-3hPc-8wVN-r7jR-3Z6dgU

  ...

Step 2c: Show the list of available logical volume by running su -c ‘lvdisplay’ .

[testuser ~]$ su -c 'lvdisplay'
  --- Logical volume ---
  LV Name                /dev/VolGroup00/Root
  VG Name                VolGroup00
  LV UUID                lnKn4G-BH0d-tn38-KJuz-o1ci-afVD-ncm5Zn
  LV Write Access        read/write
  LV Status              available
  # open                 0
  LV Size                15.00 GiB
  Current LE             3840
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:2

  --- Logical volume ---
  LV Name                /dev/VolGroup00/Home
  VG Name                VolGroup00
  LV UUID                l7oeK7-YKNV-KS2c-fXvO-hXpe-hIQP-LsqFxR
  LV Write Access        read/write
  LV Status              available
  # open                 0
  LV Size                80.00 GiB
  Current LE             20480
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:3

  ...

Step 3: Now that you have the volume group name you need to make the volume(s) accessible on the new system. That is done by exporting (aka removing) the historical volume mappings, importing the volume group into the new system & activating the volume group.

Step 3a: Export the volume group with su -c ‘vgexport <replace with volume group>’

[testuser ~]$ vgexport VolGroup00
 Volume group "VolGroup00" is now exported

Step 3b: Importing the Volume Group using pvscan & then su -c ‘vgimport <replace with volume group’

[testuser ~]$ su -c 'pvscan'
 PV /dev/sdf3    is in exported VG VolGroup00 [150.55 GiB / 55.55 GiB free]
 PV /dev/md0    VG RaidArray    lvm2 [2.73 TiB / 1.17 TiB free]
 Total: 2 [897.09 GiB] / in use: 2 [897.09 GiB] / in no VG: 0 [0   ]

[testuser ~]$ su -c 'vgimport VolGroup00'
  Volume group "VolGroup00" successfully imported

Step 3c: Activating the Volume Group by using su -c ‘vgchange -ay ‘

[testuser ~]$ su -c 'vgchange -ay VolGroup00'
  2 logical volume(s) in volume group "VolGroup00" now active

Now that you have imported & activated the volume group,  you should be able to list the available logical volume drive mappings under /dev/mapper/.

ls -l /dev/mapper/

Step 4: The next step is to mount the logical volumes to check the integrity of the data. I would also suggest doing an file system check (fsck) of the partitions on logical volume before mounting them.

That it. You are ready to resume using your LVM partitions on your new system.

- Ken

LVM resource used for this post:

WordPress . recovery software