Linux Mint 13: Enabling the SD Card Reader on the Toshiba Satellite P870

I start­ed using SD cards recent­ly and had a heck of a time using it on my lap­top at first. I tried using my 32 GB SDHC card in the USB adapter, to no avail, then I found the SD slot and it still did not work either. It turned out that the dri­ver was not load­ing by default. This is a com­mon prob­lem in Lin­ux, as the devices that are less com­mon­ly used are not going to always “just work”. You have to often get the dri­ver your­self and install it.

Get­ting it work­ing was not triv­ial, I had to fig­ure out which dri­ver to get, which took some guess­work. It turns out that this lap­top uses a Real­tek RTS5229 for its SD card inter­face. I found this infor­ma­tion with lsp­ci. Con­tin­ue read­ing “Lin­ux Mint 13: Enabling the SD Card Read­er on the Toshi­ba Satel­lite P870”

The Possibility of a Friendica-Based Service

An idea came to mind the oth­er day. I was pon­der­ing small ven­tures I could pos­si­bly spin up, to make a few dol­lars and in the process pro­vide some­thing of val­ue for low cost. The pos­si­bil­i­ty of start­ing a Frien­di­ca-based ser­vice, where­in a user can start their own SSL-secured self-con­tained Frien­di­ca node, via a web-based ser­vice front-end, came to mind.

The goal of this ser­vice would be to pro­vide an inex­pen­sive and easy way, for non-tech­ni­cal indi­vid­u­als to start their own per­son­al Frien­di­ca nodes, com­plete with their own sub­do­main (pos­si­bly their own domain, as a lat­er, more advanced fea­ture) and com­plete SSL protection.

As I talk to peo­ple who are not famil­iar with Frien­di­ca, I notice a recur­ring theme, that they find it inter­est­ing; but get­ting some­thing start­ed is pos­si­bly too con­fus­ing or too tech­ni­cal for them.  I want to offer some­thing that elim­i­nates many of the hur­dles new users would face; things they typ­i­cal­ly don’t want to deal with, while pro­vid­ing them an envi­ron­ment that they can be com­fort­able inter­act­ing in and ful­ly sup­port­ed. Con­tin­ue read­ing “The Pos­si­bil­i­ty of a Frien­di­ca-Based Service”

Using Friendica as a Content Aggregator

Frien­di­ca is a pow­er­ful tool, not only for social net­work­ing; but also for a vari­ety of oth­er pur­pos­es. The usage I would like to dis­cuss today is con­tent aggregation.

There are many ways to aggre­gate con­tent on the web; but Frien­di­ca has some­thing that none of the oth­ers have. Frien­di­ca not only allows you to aggre­gate con­tent; but it also allows you to inte­grate that con­tent with social net­work­ing con­tent from a vari­ety of sources. Gen­er­al­ly aggre­ga­tors only aggre­gate RSS feeds; but Frien­di­ca has been cus­tomized to han­dle a vari­ety of dif­fer­ent kinds of con­tent, not just RSS feeds.

This means you can look at all of the lat­est posts from your favorite web­sites, via their RSS feeds, while also see­ing the lat­est from your social net­works (Frien­di­ca, Twit­ter, Iden­ti­ca, Youtube, Face­book, etc). This is a valu­able tool for effi­cient­ly keep­ing up with the flow of infor­ma­tion from web­sites you fol­low and social net­works that you are part of.

The process of inte­grat­ing the con­tent from web­sites you want to fol­low, is sim­i­lar to how you might add a con­tact to your social net­work. In fact, on Frien­di­ca, the posts from web­sites you fol­low, appear in the same way as post from your social networks.
Con­tin­ue read­ing “Using Frien­di­ca as a Con­tent Aggregator”

Toshiba P870: Installing Linux Mint

I have recent­ly start­ed using a Toshi­ba P870 lap­top and decid­ed to install Lin­ux Mint 13 Maya (Cin­na­mon Edi­tion) on it, due to its ease of use and over­all secu­ri­ty soundness.

Being as the Toshi­ba P870 is a rel­a­tive­ly new lap­top, with some com­po­nents’ dri­vers not hav­ing been includ­ed in the instal­la­tion files of Mint, it has been a lit­tle tricky. I’m shar­ing this, for those who want to install mint on the P870 or sim­i­lar lap­tops.  This should save you a cou­ple hours of search­ing.  It will get you the dri­vers you need and get you up and running.

We’re going to dis­cuss howto:

  • Down­load, Burn and Run the Lin­ux Mint Installer
  • Install the miss­ing net­work dri­vers, both WIFI and Eth­er­net, so you can con­nect to the internet
  • Fix the inter­nal sound prob­lem that caus­es the inter­nal speak­ers not to pro­duce any sound
  • Update: Installing the SD Card dri­ver — since this arti­cle was orig­i­nal­ly writ­ten, I also fig­ured out that the SD card dri­ver needs to be installed as well.

With these basics out of the way, you can then use your Toshi­ba P870 lap­top for just about any­thing you want. Con­tin­ue read­ing “Toshi­ba P870: Installing Lin­ux Mint”

Appending to a Remote File via SSH

Most LINUX users know how to copy and over­write a file from one serv­er to anoth­er; but it can also be use­ful to direct­ly append to a file, with­out hav­ing to login to the remote serv­er and make the changes man­u­al­ly. This does not appear to be pos­si­ble with the com­mon­ly used SCP util­i­ty; how­ev­er, there is a way to do this with SSH. Its actu­al­ly quite sim­ple. Con­tin­ue read­ing “Append­ing to a Remote File via SSH”

Tunneling Through a Remote Firewall Using SSH Commands

If you’re deal­ing with sys­tems behind a fire­wall it’s almost inevitable that you will need to tun­nel into those sys­tems from time to time.  For­tu­nate­ly, there are some quick & easy com­mands to accom­plish this.  In this exam­ple, we are going to use a Mac OSX or lin­ux-based sys­tem, to gain access to a web server’s port 80 on a fire-walled server.

Let’s say the domain of the remote serv­er is, the fire-walled serv­er has an IP address of and the fire­walled serv­er has a web serv­er at port 80.  We need to choose an unused port on our own sys­tem, in this case we’ll use 2020.

So our side of the tun­nel is going to be http://localhost:2020/ and the oth­er side of the tun­nel will be

ssh -L 2020:'s password:

So, now port 80 on the fire-walled serv­er will be acces­si­ble by sim­ply point­ing your web brows­er to http://localhost:2020/.  To ter­mi­nate the tun­nel, sim­ply exit the shell.

Fixing Performance Problems on Your JBoss Web Apps By Diagnosing Blocked Thread Issues

I was once per­plexed by a bizarre per­for­mance issue, I encoun­tered at seem­ing­ly ran­dom inter­vals, in an appli­ca­tion I help to main­tain. The appli­ca­tion kept freez­ing up, with­out any log mes­sages to use for diag­no­sis. This was very frus­trat­ing, because it meant the appli­ca­tion serv­er typ­i­cal­ly had to be restart­ed man­u­al­ly to restore service.

After a bit of research, I learned of thread block­ing, as a poten­tial per­for­mance issue. Being as I was fair­ly cer­tain that the data­base was func­tion­ing with­in accept­able para­me­ters and the serv­er had ample CPU and mem­o­ry to han­dle the load. I sought to deter­mine if thread block­ing was an issue.

I start­ed by sim­ply run­ning a twid­dle com­mand to dump the threads, when­ev­er this per­for­mance prob­lem was report­ed. This showed that the BLOCKED threads were indeed the cause. Con­tin­ue read­ing “Fix­ing Per­for­mance Prob­lems on Your JBoss Web Apps By Diag­nos­ing Blocked Thread Issues”

10 Principles to Consider When Evolving Your Web Application’s Front End

It’s very easy, espe­cial­ly for an “evolv­ing” web appli­ca­tion, to end up with a user inter­face that is bug­gy and dif­fi­cult to main­tain, par­tic­u­lar­ly if you are incre­men­tal­ly mak­ing changes to an out­dat­ed app, with­out a full redesign. This is a chal­lenge that I’ve faced on many occa­sions, as I have often worked on appli­ca­tions that were built using an out­dat­ed soft­ware par­a­digm or have sub­se­quent­ly failed to keep up with the advances in soft­ware tech­nol­o­gy and method­ol­o­gy. This is not uncom­mon at all, in fact most, if not all, soft­ware engi­neers have had to deal with this on many occa­sions dur­ing their career.

Work­ing through these chal­lenges has taught me a great deal about the evo­lu­tion of soft­ware appli­ca­tions. It’s some­thing that I’ve had to learn, while bal­anc­ing the day-to-day demands for the support/upkeep of an exist­ing code­base. This process can teach a devel­op­er a great deal, as they research best prac­tices and gain expe­ri­ence; but most impor­tant­ly, it can teach devel­op­ers what not to do, as you see how the process unfolds over time. Con­tin­ue read­ing “10 Prin­ci­ples to Con­sid­er When Evolv­ing Your Web Application’s Front End”

Tar/GZip Files in One Operation, Unattached to the Terminal Session

When you’re try­ing to move a large block of files, its often use­ful to do so in one com­mand and to be able to close your ter­mi­nal win­dow (or allow it to time out). If you run a com­mand under nor­mal cir­cum­stances, los­ing the con­nec­tion can cause your com­mand to ter­mi­nate pre­ma­ture­ly, this is where nohup (No HangUP — a util­i­ty which allows a process to con­tin­ue even after a con­nec­tion is lost) comes in.

Let’s say we have a large direc­to­ry to back­up, which we want to first tar, then gzip; keep­ing the com­mand non-depen­dent on the con­ti­nu­ity of the ter­mi­nal ses­sion. Con­tin­ue read­ing “Tar/GZip Files in One Oper­a­tion, Unat­tached to the Ter­mi­nal Session”

SSH: DSA Key Issue: Unknown code krb5 195

I was attempt­ing to set up an SSH key between two servers, so I could auto­mat­i­cal­ly back up a file from one to the oth­er. This is usu­al­ly a fair­ly straight­for­ward and rou­tine pro­ce­dure; but in this case I had some issues. 

When I got every­thing set-up, with the pub­lic key in the accepted_keys file of the remote serv­er, I saw this error when run­ning in debug mode, then I was asked for a pass­word, which should not happen.

[me@host ~]$ ssh -v root@remotehost
debug1: Unspecified GSS failure.  Minor code may provide more information
Unknown code krb5 195

Con­tin­ue read­ing “SSH: DSA Key Issue: Unknown code krb5 195”