Friday, December 4, 2009

Empathy and Lernid on Ubuntu

After reading a couple interesting articles on Jono Bacon's website I commented on an update post on a new project called Lernid.  But I think I merged 2 topics together in my mind and I don't think I should be commenting about one or the other article.


One topic is my new fascination with Empathy which was included in the newest release from Ubuntu.  Now with Empathy, I'm able to easily use audio and video chatting through an easy interface.  I have previously given up on chat because of a couple problems especially when using Ubuntu as my main OS.  First problem has been getting a protocol that people can agree on.  I started loving Yahoo Messenger until I found friends who were not on that system.  I believe Empathy  and Pidgin can solve this problem by allowing multiple protocols to be installed.  Now if I want to talk to friends on Yahoo I'm the one inconvenienced into getting an extra chat account.


-----------------


and started to think about something different from




When you are creating this great interface for IRC, could you also look into supporting other ways to participate in classrooms? I am stuck behind a corporate firewall that only allows ports 80 and 443 outbound from workstations.


At first I thought Lernid would be a whole different protocol but it looks more like it is an IRC layer.


Maybe there would be a way to have Lernid be capable of also using a XMPP to IRC bridge to give other users alternative connection methods.



If anyone gets a chance take a look at these protocol comparisons:

http://about.psyc.eu/Comparison

Apparently XMPP is notoriously bad for large room type discussions but another protocol called PSYC is a possible replacement but that solution would need Ubuntu to host the classrooms on their servers.

Here is a wishlist bug that is looking for a

If anyone gets a chance take a look at these protocol comparisons:
http://about.psyc.eu/Comparison
Apparently XMPP is notoriously bad for large room type discussions but another protocol called PSYC is a possible replacement but that solution would need Ubuntu to host the classrooms on their servers.

I would like to try to see if there is an IRC to PSYC bridge that I might be able to set up.

Tuesday, November 10, 2009

Citrix + Macintosh + EPIC

In order to get a Citrix client to work on any workstation at our hospital, we need to have a workstation name identified for printing and possibly security reasons.  When using Windows to connect to citrix, the workstation name is sent to the citrix server and all is happy but on Macintosh, you need to edit:

\user\<username>\library\preferences\citrix ica client\Config and add a line after the [WFClient] section like this:
[WFClient]
ClientName=COMPUTERNAME

 

Wednesday, October 28, 2009

Starting to use Find

I wanted to install gnash and adobe flash plugins side-by-side and thought it would be pretty easy using update-alternatives.  I have tried using update-alternatives before when trying to run the 64bit flash beta plugin side-by-side with the normal flash plugin.

This all works as long as you don't have a stray symlink to libgnashplugin.so

I slightly modified the below command to: find / -name libgnashplugin.so -type l -exec ls -l {} \;

Output is nice except for the "Permission Denied" notifications.

Richy’s Random Ramblings » Techy: Find All Symlinks (Symbolic Links) on a Linux System
I’ve just needed to try and find all symbolic links (symlinks) on a RedHat Enterprise Linux server so I can replicate the setup of the server (for some reason, the config files and other settings are in “non-standard” places and are symlinked from the original location).

To find all the sym links, just run this simple Linux command line option:
find / -type l -exec ls -l {} \;

(and, if you would prefer all the symlinks to be stored in a file – as there will be a very large number of them – use the command find / -type l -exec ls -l {} \; > /home/admin/symlinks.txt).

I hope this helps somebody else who has to work with undocumented strangely configured Linux machines.


Friday, October 9, 2009

Joining Ubuntu to Windows Active Directory Domain

Over the years, I have joined Ubuntu to a Microsoft Domain in a couple different ways.  The first method I had tried was quite manual and described on Ubuntu's Community Documentation website.  The last 2-3 times, I have joined Ubuntu computers, I started using a new automated method provided by Likewise Open.

I found some likewise-open documentation for the older version of Ubuntu 8.04.  Since the process is automated, the documentation hasn't changed much.  However, one of the features of the manual process was allowing users to connect to the samba server on my Ubuntu machine.  I had to piece together how to get this to also work.  Maybe there will be a modification to likewise-open5 eventually that will include some automation with this.

=== to be continued ===

http://likewise.com/resources/user_documentation/Likewise-Samba-Guide-5.pdf
1. Create a directory named ‘idmap’ under /usr/lib/samba, if
necessary (/usr/lib64/samba for 64-bit servers). Create a
symbolic link from /usr/lib/samba/idmap/lwicompat_v2.so to
point to /opt/likewise/lib/lwicompat_v2.so. Repeat for
lwicompat_v3 and lwicompat_v4.
# cd /usr/lib/samba
# mkdir idmap
# cd idmap
# ln -s /opt/likewise/lib/lwicompat_v2.so /usr/lib/samba/idmap/lwicompat_v2.so
# ln -s /opt/likewise/lib/lwicompat_v3.so /usr/lib/samba/idmap/lwicompat_v3.so
# ln -s /opt/likewise/lib/lwicompat_v4.so /usr/lib/samba/idmap/lwicompat_v4.so
On a 64-bit server, the path is slightly different:
# cd /usr/lib64/samba
# mkdir idmap
# cd idmap
# ln –s /opt/likewise/lib64/lwicompat_v2.so /usr/lib64/samba/idmap/lwicompat_v2.so
# ln –s /opt/likewise/lib64/lwicompat_v3.so /usr/lib64/samba/idmap/lwicompat_v3.so
# ln –s /opt/likewise/lib64/lwicompat_v4.so /usr/lib64/samba/idmap/lwicompat_v4.so

2. Confirm the version of Samba that you have installed and edit the
Samba configuration file accordingly.
# smbd –V
Version 3.0.26a-1478
Now that you know the version number, edit the Samba
configuration file /etc/samba/smb.conf to set the following
parameters to the listed values. If the parameters are not included
in the smb.conf file, add a new line for them in the [global]
section. Here are the compatability plugins to use by Samba
version:
lwicompat_v2 for Samba 3.0.0 - 3.0.22
6
Copyright © 2009 Likewise Software. All rights reserved. 3.16.2009.

Product Documentation
Likewise 5: Samba 3 Integration Guide
lwicompat_v3 for Samba 3.0.23 - 3.0.24
lwicompat_v4 for Samba 3.0.25 and later 3.0 releases.
Here is how to edit your smb.conf file for lwicompat_v2 or
lwicompat_v3:
security = ads
workgroup = <enter NETBIOS name from /opt/likewise/bin/lw-get-
status>
realm           = <enter realm from /etc/krb5.conf>
# idmap backend = lwicompat_v2
idmap backend = lwicompat_v3
idmap uid = 50-9999999999
idmap gid = 50-9999999999
The configuration for Samba 3.0.25 and later 3.0 releases is
different. Here is how to edit your smb.conf file for lwicompat_v4
for Samba version 3.0.25 and later 3.0 releases:
security = ads
workgroup = <enter NETBIOS name from /opt/likewise/bin/lw-get-
status>
realm           = <enter realm from /etc/krb5.conf>
idmap domains = ALL
idmap config ALL:backend = lwicompat_v4
idmap config ALL:default = yes
idmap config ALL:readonly = yes
3. Print out the machine account information by running the following
command as root to retrieve the machine account password from
the Likewise authentication system and provide it to the Samba
server’s authentication system:
/opt/likewise/bin/lw-dump-machine-acct <dns domain>
DomainSID                                     = S-1-5-21-aaaa-bbbbb-ccccc-ddddd
DomainName                                    = AD
Domain DNS Name                               = AD.PLAINJOE.ORG
HostName                                      = srv3
Machine Account Name                          = srv3$
Machine Account Password = EncryptedStringPassword
4. Set the domain SID in Samba's database by using the Samba net
command:
net setdomainsid S-1-5-21-aaaa-bbbbb-ccccc-ddddd
7
Copyright © 2009 Likewise Software. All rights reserved. 3.16.2009.

Product Documentation
Likewise 5: Samba 3 Integration Guide
5. Store the machine account password by using the net command.
You can copy the encrypted machine account password from the
output of the /opt/likewise/bin/lw-dump-machine-acct
<dns domain>  that you executed in a previous step.
Important: Your machine account password expires, according
to your default AD domain policy, after 40 days. Therefore, you
must repeat these steps every time your machine account
password expires. However, you can set up a cron job to
automate this operation, but doing so is beyond the scope of this
document.
net changesecretpw -f
Enter password: <EncryptedStringPassword>

Thursday, September 10, 2009

Why Do Employers Pay for Healthcare in the United States?

Throughout the debate about American Healthcare Reform I haven't understood the reason why American's currently enjoy having our employers pay for our healthcare.

When asking friends and co-workers, the most common reason seems to be because employers want healthier and more productive workers but this reasoning seems idealogical and not rational.  It doens't explain why the majority of employees. This reasoning only makes sense for the executive team of irreplaceable leaders in an organization.  Others have mentioned that employers get tax breaks.

http://www.alternet.org/healthwellness/79036/guess_who_foots_america%27s_health_care_bill_not_employers./
Health insurance in the United States - Wikipedia, the free encyclopedia
Employer-sponsored health insurance

Employer-sponsored health insurance is paid for by businesses on behalf of their employees as part of an employee benefit package. Most private health coverage in the US is employment based. According to the Centers for Medicare and Medicaid Services, nearly 100% of large firms offer health insurance to their employees.[17] The employer typically makes a substantial contribution towards the cost of coverage.[18] In 2008 the average employee contribution was 16% of the cost of single coverage and 27% of the cost of family coverage. These percentages have been stable since 1999.[19] Health benefits provided by employers are also tax favored. Employee contributions can be made on a pre-tax basis if the employer offers the benefits through a section 125 cafeteria plan.

Costs for employer-paid health insurance are rising rapidly: since 2001, premiums for family coverage have increased 78%, while wages have risen 19% and inflation has risen 17%, according to a 2007 study by the Kaiser Family Foundation.[20] Employer costs have risen significantly per hour worked, and vary significantly. In particular, average employer costs for health benefits vary by firm size and occupation. The cost per hour of health benefits is generally higher for workers in higher-wage occupations, but represent a smaller percentage of payroll.[21] The percentage of total compensation devoted to health benefits has been rising since the 1960s.[22] Average premiums, including both the employer and employee portions, were $4,704 for single coverage and $12,680 for family coverage in 2008.[19][23]

However, in a 2007 analysis, the Employee Benefit Research Institute concluded that the availability of employment-based health benefits for active workers in the US is stable. The "take-up rate," or percentage of eligible workers participating in employer-sponsored plans, is falling. The percentage of workers actually covered has fallen somewhat, but not sharply. EBRI interviewed employers for the study, and found that others might follow if a major employer discontinued health benefits. Public policy changes could also result in a reduction in employer support for employment-based health benefits.[24]

Although much more likely to offer retiree health benefits than small firms, the percentage of large firms offering these benefits fell from 66% in 1988 to 34% in 2002.[25]

Monday, August 24, 2009

Joining Ubuntu to Windows Active Directory Domain

Over the years, I have joined Ubuntu to a Microsoft Domain in a couple different ways.  The first method I had tried was quite manual and described on Ubuntu's Community Documentation website.  The last 2-3 times, I have joined Ubuntu computers, I started using a new automated method provided by Likewise Open.

I found some likewise-open documentation for the older version of Ubuntu 8.04.  Since the process is automated, the documentation hasn't changed much.  However, one of the features of the manual process was allowing users to connect to the samba server on my Ubuntu machine.  I had to piece together how to get this to also work.  Maybe there will be a modification to likewise-open5 eventually that will include some automation with this.

=== to be continued ===



GPS.BIN Notes

GpsPasSion Forums - [TIP] Raw logging on nuvi 2xx/5xx/7xx/1xxx
File format of gps.bin is very simple, no problem with conversion to gpx. It goes like this:

Header 48 bytes:
4B string - text "BEGN"
4B int - GPS week number, starting at 22.8.1999
4B int - second of a week
4B float - heading in radians
8B double - longitude in radians
8B double - latitude in radians
12B ??
4B int - 0 or number of records

record 28 bytes:
4B string - text "$$"
4B int - timestamp in miliseconds
8B double - latitude in radians
8B double - longitude in radians
4B float - heading in radians


Monday, May 18, 2009

Wednesday, May 6, 2009

Ubuntu Jaunty Jackalope 9.04 with ATI X1300

I usually upgrade early to Ubuntu's newest beta or release candidate.  I figure this is my way to contribute by sending in bug fixes.  Unfortunately, I wasn't able to contribute to what happened to ATI.

When I originally upgraded to Jaunty, my ATI Radeon X1300 card was working better than ever using the RADEONHD driver instead of FGLRX.  I was getting wiggly windows with AIGLX on both montiors.  Previously, I had to choose between multiple monitors and wiggly windows :(  One week before Jaunty's launch I got a bad kernel upgrade that took out my entire system.  A good old kernel panic like it couldn't find the lvm root.

Taking out my system didn't bother me because I was running in a test environment and I didn't know what caused the problem.  (I also run lvm2 which is not standard)  I attempted to fix the problem by running the live CD and chrooting to the mounted hard drives but I kept getting a bash error.
mount /dev/mapper/main-root /mnt
mount /dev/mapper/main-home /mnt/home
mount /dev/mapper/main-libvirt /mnt/var/lib/libvirt
mount -o bind /proc /mnt/proc
mount -o bind /dev/ mnt/dev
chroot /mnt /bin/bash
  --error can't find bash even when I ran chroot /mnt /bin/bash although chroot /mnt bash sort of worked.
After a couple of weeks of creating a new ext4 root /dev/mapper/main-root2 and migrating my entire configuration over
dpkg --get-selections --root /mnt > ~/selection.backup
and later
dpkg --set-selections < ~/selection.backup
I decided to not copy my /etc configurations because I wasn't sure if my configuration was what was creating the kernel panic.

This story is getting very long.  Okay that is the history of the problem and here is the way that I "fixed" the ATI card.  (I had tried using ATI's fglrx but I had even more problems and I was pretty certain the radeonhd driver is finally ready for true 3D.

Here is my current /etc/X11/xorg.conf after looking at the example at http://www.x.org/wiki/radeonhd
Section "Monitor"
    Identifier    "Dell0"
    Option        "RightOf"    "Dell1"
EndSection

Section "Monitor"
    Identifier    "Dell1"
EndSection

Section "Screen"
    Identifier    "Default Screen"
    Device        "Configured Video Device"
    DefaultDepth    24
    SubSection "Display"
        Depth    24
        Virtual    2560 1024
    EndSubSection
EndSection

Section "Device"
    Identifier    "Configured Video Device"
    Driver        "radeonhd"
    Option        "UseFBDev"        "true"
    Option        "RROutputOrder"        "Dell0"
    Option        "DRI"
EndSection
The xorg.conf file is probably not any more helpful than Ubuntu's default.  However after I use the Display system preference to indicate that I don't want to mirror my monitors.  After logging out and in again, I can only drag windows to no more than 60% of the right window (I'll try to show a screenshot of what that looks like later)

The fix was to run this command after logging in:
xrandr --output VGA_1 --right-of PANEL
I'm not sure exactly why it works and it might need to be modified to reflect my new display names as seen in my xorg.conf file.

Thursday, April 9, 2009

Free High Quality Fonts

Now I need a list that shows what free (as in beer not freedom) fonts will work with Ubuntu.

30 high-quality free fonts for professional designs

Designers need high quality fonts or typefaces. This round up post brings what you need! A very useful post ;)

read more | digg story

Thursday, February 5, 2009

How to Check RAM and SMBIOS information in Ubuntu

I wanted to see what RAM slots I had available to increase my RAM.  Instead of opening the box or relying on http://crucial.com to tell me I found this Linux command.

sudo dmidecode -t 17


The command is DMI decode and the first line in the man page says "tool for dumping a computer’s DMI (some say SMBIOS) table contents in a human-readable format."  Run dmidecode | pager to see BIOS information.

Wednesday, February 4, 2009

Ubuntu QuickCam Express

lsusb:
Bus 001 Device 004: ID 046d:0840 Logitech, Inc. QuickCam Express

Bug #196811 - Comment #32
Sebastian Keller wrote on 2008-10-08: (permalink)

I built the driver this way:

1. install "build-essential" and make sure you have the current linux-headers package installed.
2. get the qc-usb source used by ubuntu from http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-intrepid.git;a=snapshot;h=af08ea6e38e756093ada807ed79ca409afd7c174;sf=tgz and extract it on the desktop
3. get the original qc-usb source from http://downloads.sourceforge.net/qce-ga/qc-usb-0.6.6.tar.gz?modtime=1162648367&big_mirror=0 and extract only "Makefile" and copy this Makefile over the one from the ubuntu version
4. get http://launchpadlibrarian.net/17739608/quickcam_parent.patch and store it on your desktop
5. get http://launchpadlibrarian.net/17601962/quickcam_type.patch and store it on your desktop
6. open terminal and "cd ~/Desktop/ubuntu-intrepid/"
7. patch -p3 < ../quickcam_parent.patch
8. patch -p3 < ../quickcam_type.patch
9. make quickcam.ko
10. sudo cp quickcam.ko /lib/modules/$(uname -r)/kernel/ubuntu/qc-usb/
11. make sure the old version of the module is not loaded by checking "lsmod | grep quickcam" and then plug in your camera
12. start cheese

The problem you had about something being undefined is because of a change in the kernel, that the qc-usb source in the ubuntu tree got adapted to, but the one on sf.net not.

Release Renew IP Addresses

Here is a nice little script to get all workstations that were leasing from 1 DHCP server to release and renew addresses to a 2nd Microsoft DHCP server.

psexec.exe -cd -n 2 @ipaddresses.txt release.bat

The -c copies the bat file to the workstation.  The -d doesn't wait for each line to finish (without it, your connection will get lost after the first line, ipconfig /release).  The -n 2 changes the timeout behavior to assume that all workstations will respond within 2 seconds.

release.bat has only 2 lines:
ipconfig /release
ipconfig /renew

The ipaddresses.txt file has a list of all IP addresses from the original DHCP scope.  If it finds a workstation on the 'old' ip range, then it will force the workstation to give up the address and ask for a new one.

Monday, January 26, 2009

Install GPL CDRFE with XP Permissions

In order to get cdrecord.exe to work with normal user rights, you need to install and use a free (not GPL) ASPI driver from Adaptec instead of using the XP built-in SPTI driver which needs adminitrative rights.

When you unpack the Adaptec driver, install it using the command line ("install.bat x86" for Windows 95-2000 and "install.bat xp32" for XP)

Then when you start cdrfe.exe, change the settings to use the ASPI driver located under the second tab from the left.  The default is to use "Auto" which may work.

===========

I wasn't able to get cdrecord.exe to work with ASPI but I found the group policy that can tweak SPTI permissions to allow local users to run cdrecord.exe.

FAQ - ImgBurn Support Forum

1. Log in as an Administrator
2. Click 'Start' -> 'Run'
3. Type 'secpol.msc' and hit OK
4. Expand 'Local Policies'
5. Click 'Security Options'
6. Change 'Devices: Restrict CD-ROM access to locally logged-on user only' from 'Disabled' to 'Enabled'
7. Close the 'Local Security Settings' window
8. Log on as your restricted user and try again.

Friday, January 23, 2009

OpenDNS Setup with Bind9 and local domains

I wanted to set up my Ubuntu system to use OpenDNS for all external queries, yet lookup up all local queries on our internal domain controllers. After finding the right reference it was really easy.

I just installed bind9 and changed 2 configuration files:

/etc/bind/named.conf.local:

//
// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";

zone "localdomain1.org" {
type forward;
forward only;
forwarders {
10.22.2.18;
10.22.2.25;
};
};


zone "localdomain2.org" {
type forward;
forward only;
forwarders {
10.22.2.18;
10.22.2.25;
};
};


/etc/bind/named.conf.options:

options {
directory "/var/cache/bind";

// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113

// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.

forwarders {
208.67.222.222;
208.67.220.220;
};

auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};


Now whenever I make an internal query, I will use the local domain controllers and if I make an external query, I will use OpenDNS.

I had to change my /etc/dhcp3/dhclient.conf and uncommented this line:
prepend domain-name-servers 127.0.0.1;

Here is my reference that helped me work out this solution.

Frequently Asked Questions about BIND 9
Q: I want to forward all DNS queries from my caching nameserver to another server. But there are some domains which have to be served locally, via rbldnsd. How do I achieve this ?

A:
options {
    forward only;
    forwarders { ;
    };
};

zone "sbl-xbl.spamhaus.org" {
    type forward;
    forward only;
    forwarders { port 530;
    };
};

zone "list.dsbl.org" {
    type forward;
    forward only;
    forwarders { port 530;
    };
};

Tuesday, January 20, 2009

Install GPL CDRFE with XP Permissions

In order to get cdrecord.exe to work with normal user rights, you need to install and use a free (not GPL) ASPI driver from Adaptec instead of using the XP built-in SPTI driver which needs adminitrative rights.

When you unpack the Adaptec driver, install it using the command line ("install.bat x86" for Windows 95-2000 and "install.bat xp32" for XP)

Then when you start cdrfe.exe, change the settings to use the ASPI driver located under the second tab from the left.  The default is to use "Auto" which may work.

Thursday, January 15, 2009

Linux Advocate Doesn't Slam Reporter and Starts a Dialogue

Ubuntu on the Brain
The viewer who contacted me also said this: “It really is a revolution, and it is a community effort…Linux is all about what people want to do, and that is find your own way to do things. People always complain about getting stepped on by big companies (MS, Internet Providers, Cellular Providers etc) but most don’t want to change how they do things for their own good.”

He’s right, you know. People hate change. Now, I don’t think the story we did was wrong. It really wasn’t about Ubunto; how it works, etc. It was about a woman who ordered something, realized she made a mistake, asked Dell to fix it and they told her Ubuntu would be fine but when she got it, she realized it wasn’t for her. While Ubuntu probably would’ve been OK for her, she didn’t really want to learn how to use a new operating system. She wanted a computer to take college classes. It’s a pure consumer driven story. It was not an attack on Ubuntuat all. But it does show that change can be difficult…especially when people are unaware of products, services, new technological advances, etc.

I will say this: because of my e-mails with this viewer, I’m looking more and more at Ubuntu and might join this little revolution.


The story of the day: Linux fanatic doesn't rant and rave and chooses to start a dialog and teach someone else about why they value Linux/ Ubuntu.

I want to thank rgiordan for finding the quiet voice that was able to help.

Tuesday, January 6, 2009

Show Hidden Microsft Windows Devices

We had some problems with invisible old configured NICS on servers that were set up with teaming.  Our first NIC configuration was created with static IP addresses and then later we teamed up 2 NICs and had some intermittent ping problems.  It seems that the old non-existent NIC was interfering with the teamed NIC and would send the ping responses through the non-existent NIC and fail our tests.

Here is a cool little bat file:

set DEVMGR_SHOW_NONPRESENT_DEVICES=1
start devmgmt.msc

Monday, January 5, 2009

LDAP Search Againt Microsoft Active Directory

ldapsearch -LLL -x -b "dc=domainname,dc=org" -H ldap://bass.hfanet.org -W -D "jeff.rasmussen@domainname.org" -LLL "(samAccountName=rasmussenj)"