Archive for the ‘How-To’ Category

Batch converting audio files :

Sunday, May 16th, 2010

This script may be of interest and value :

File: convertomp3
#!/bin/bash
#
# Usage: convertomp3 fileextention
#
if [ $1 = "" ];then
  echo 'Please give a audio file extention as argument.'
  exit 1
fi

for i in *.$1
do
  if [ -f "$i" ]; then
  rm -f "$i.wav"
  mkfifo "$i.wav"
  mplayer \
   -quiet \
   -vo null \
   -vc dummy \
   -af volume=0,resample=44100:0:1 \
   -ao pcm:waveheader:file="$i.wav" "$i" &
  dest=`echo "$i"|sed -e "s/$1$/mp3/"`
  lame -V0 -h -b 160 --vbr-new "$i.wav" "$dest"
  rm -f "$i.wav"
fi
done

Running convertomp3 wma will covert every .wma file in the current folder to .mp3.

How to win against your competitors in the search engines war ??

Friday, February 19th, 2010

Getting your website ranking as high as possible with major search engines is crucial for your business. It also gives you winning advantage against your competition. We will discuss in this article several factors that contribute to how high you can go on a search engine query result.

Please realize there is no such thing as a magic silver bullet that will vault you to the top of the search engines – if there were, everyone would know it, they would do it, and it would cease to work because of saturation.

Several strategies contribute to this, as you can see from the following. First, we will discuss the general strategies and techniques used with all major search engine. Then we will discuss the specific the specifics of what is currently working on each of the major search engines.

Part One : General Guidelines

Choosing your domain name :

One of the most basic, yet critically important, strategies is to use your best keywords in your domain address. An example would look like…

http://www.laptopshome.com
http://www.notebooksforsale.com

The reason for doing this is because search engines and directories assume the domain to be relevant to the keyword. It’s something that, in practicality, can’t be faked.

Getting your keywords into your domain name is strategically critical and chances are it will only become even more important in the future. Remember, by registering all possible keyword combination domain names you can think of you not only have them available to your company when needed but you’ve also prevented your competition from securing them and using them against you.

If your company name is your domain name, then that’s fine but you should still register all relevant keyword-rich domain names pertaining to your goods and services. This will give you the option of setting up specialized sites that place your services into the paths of the engines and directories.

Getting Your Web Page Titles Right :

This is all about your pages <TITLE> tag. Note in mind that Title is the most important aspect of web page design in respects to scoring well on most search engines.

Always make sure every word in your title is one that is likely to be used by a person when doing a keyword search for your business or service. AND, keep in mind that unless the name of your business is prominently recognized or likely to be used in a keyword search – something like “SONY cameras”, it does NOT belong in the Title tags.

Keyword Selection Techniques :

Make a list of every possible search word (keyword) and search phrase (keyphrase) that your potential customers
might use when looking for your information, product or service. Remember to include synonyms as well as the common misspellings of your keywords and pay particular attention to noun phrases. Next, use these keywords and keyphrases to find your competition on the top search engines.

Keyword Relevancy :

Simply put, your keywords must be relevant to the contents, or theme of your web page.

Keyword Density :

By this I mean the number of times your keyword(s) appear in relation to the other words on your web page.  Theoretically, a webpage that said only “Chicago” verses the “Eat at Chicago’s…” page would be given a higher score for the keyword Chicago due to a higher keyword density.

Description Meta Tag :

The meta description tag is used by many engines as the summary for your site when listed in the search results. It’s what tells a real person whether or not your site is relevant to their search. You should view it as a sales presentation for your link. If the meta description tag entices the searcher they will, theoretically, click your link and visit your site. Obviously that’s the purpose for being listed in the search engine in the first place.

Most search engines place a limit on the number of characters that a meta tag can contain. Once the limit is reached they typically ignore the rest of the tag contents. In general, 250 characters – including spaces and commas – is a good rule of thumb that falls within the guidelines of most engines.

Two Firefox add-ons to increase your productivity

Monday, January 18th, 2010

Below are two firefox add-ons productivity tools that should make your life a lot easier :

QuickFox Notes :

This is a note-taking add-on for Firefox that saves notes as bookmarks in Firefox. This means you get all the convenience of browser-based note-taking, and cross-browser syncing if you’re using Mozilla Weave, Xmarks, or another method to sync your bookmarks between instances of Firefox.

Read It Later :

Read it Later is an extension that works with a Web-based service.  Here’s how it works. Once you install the extension, RiL adds a yellow icon to the “Awesome bar” in Firefox, and a similar icon to the toolbar next to your search. When you’re on a page you want to save for later, just click the yellow icon.

Google Reader fans will also love RiL because it will also clip items from Google Reader without having to view the page first. Once the extension is installed, it adds a RiL icon to Google Reader items (right next to the star). Just click that and the entry will be added to.


Using Clam AntiVirus to provide real-time protection for your iFolder 3 Server

Sunday, September 13th, 2009

“Because iFolder is a cross-platform distributed solution, there is a possibility of a virus infection on a platform migrating across the iFolder server to other platforms, and vice versa. You should enforce server-based virus scanning to prevent viruses from entering the corporate network.”

This solution applies for openSuSE 11.1 :

The following packages need to be installed :

clamav
dazuko
postfix

Execute modprobe dazuko (as root)

Run lsmod and check that dazuko is loaded:

Edit /etc/init.d/boot.local

  • Add:
    modprobe dazuko

Edit /etc/clamd.conf

Enable logging by activating :
LogFile /var/log/clamd

* Activate:
# Path to a local socket file the daemon will listen on.
LocalSocket /var/lib/clamav/clamd-socket

* Deactivate:
# TCP port address.
#TCPSocket 3310

* Deactivate:
# TCP address.
#TCPAddr 127.0.0.1

* Activate and edit:
# Execute a command when virus is found.
VirusEvent /bin/echo “iFolder VIRUS ALERT: %v” | /bin/mail -s “ClamAV – iFolder” -r ClamAV@server.domain ToUser@domain

* Deactivate:
# Run as a selected user (clamd must be started by root).
#User vscan

Note:
If not deaktivating “User vscan” you receive the error: “clamuko cannot connect to dazuko” in /var/log/clamd

* Clamuko settings, Activate the following :

ClamukoScanOnAccess yes
ClamukoScanOnOpen yes
ClamukoScanOnClose yes
ClamukoScanOnExec yes
ClamukoIncludePath /YOUR_PATH_TO_IFOLDER/ifolder/simias/SimiasFiles

Change any other settings in the file to reflect your needs (see ClamAV documentation).

Start clamd:
/etc/init.d/clamd start

Check that clamd was started without any errors:
tail -f /var/log/clamd

Download the EICAR test signature from:
http://www.f-secure.com/virus-info/eicar_test_file.shtml

Note!
This is not a real virus.

Run: tail -f /var/log/clamd

Save the test file (eicar.zip and/or eicar.com) in your iFolder and wait for sync.

When the virus pattern is detected you should see this (see below) in the log file
/var/log/clamd.

Check that a mail has been sent: tail /var/log/mail

Update ClamAV:
You can update ClamAV using the command: freshclam

A better way is to use the freshclam daemon for automatic updates.

Settings for freshclam: /etc/freshclam.conf

Edit /etc/freshclam.conf

  • Activate:
    # Path to the log file (make sure it has proper permissions)
    UpdateLogFile /var/log/freshclam.log
  • Activate and provide your country code:
    # Uncomment the following line and replace XY with your country code.
    DatabaseMirror db.se.clamav.net
  • Activate and provide update interval (e.g 24 for every hour):
    # Number of database checks per day.
    Checks 24

Create a log file for freshclam:
touch /var/log/freshclam.log

Set file rights:
chown vscan:vscan /var/log/freshclam.log

Start freshclam:
/etc/init.d/freshclam start

Check the log file:
tail /var/log/freshclam.log

Activate automatic start for clamd, freshclam and postfix from Yast –> System –> System Services (Run Level).

Now you have a real-time anti-virus scanning for your iFolder3 server.

Basic FTP Commands

Wednesday, September 2nd, 2009

The FTP (File Transfer Protocol) utility program is commonly used for copying files to and from other computers. These computers may be at the same site or at different sites thousands of miles apart. FTP is a general protocol that works on UNIX systems as well as a variety of other (non-UNIX) systems.

Find below a listing of basic FTP commands :

? to request help or information about the FTP commands
ascii to set the mode of file transfer to ASCII
(this is the default and transmits seven bits per character)
binary to set the mode of file transfer to binary
(the binary mode transmits all eight bits per byte and thus provides less chance of a transmission error and must be used to transmit files other than ASCII files)
bye to exit the FTP environment (same as quit)
cd to change directory on the remote machine
close to terminate a connection with another computer
close brubeck closes the current FTP connection with brubeck,
but still leaves you within the FTP environment.
delete to delete (remove) a file in the current remote directory (same as rm in UNIX)
get to copy one file from the remote machine to the local machine
get ABC DEF copies file ABC in the current remote directory to (or on top of) a file named DEF in your current local directory.
get ABC copies file ABC in the current remote directory to (or on top of) a file with the same name, ABC, in your current local directory.
help to request a list of all available FTP commands
lcd to change directory on your local machine (same as UNIX cd)
ls to list the names of the files in the current remote directory
mkdir to make a new directory within the current remote directory
mget to copy multiple files from the remote machine to the local machine;
you are prompted for a y/n answer before transferring each file
mget * copies all the files in the current remote directory to your current local directory, using the same filenames. Notice the use of the wild card character, *.
mput to copy multiple files from the local machine to the remote machine;
you are prompted for a y/n answer before transferring each file
open to open a connection with another computer
open brubeck opens a new FTP connection with brubeck;
you must enter a username and password for a brubeck account
(unless it is to be an anonymous connection).
put to copy one file from the local machine to the remote machine
pwd to find out the pathname of the current directory on the remote machine
quit to exit the FTP environment (same as bye)
rmdir to to remove (delete) a directory in the current remote directory

Installing iFolder server on openSuSE 11.1

Monday, August 24th, 2009

iFolder is a simple and secure storage solution that can increase your productivity by enabling you to back up, access and manage your personal files-from anywhere, at any time. Once you have installed iFolder, you simply save your files locally-as you have always done-and iFolder automatically updates the files on a network server and delivers them to the other machines you use.

Using iFolder, you can designate any network server as an iFolder server and publish information to a personal iFolder created on that server. Once your folder is established, you can install iFolder on the computers you regularly use and download information from your personal iFolder to any of those computers. Not only that, but using iFolder, you can also invite other iFolder users to share your files in the same safe and secure way so that your teams always have the most relevant copy of a document.

You can download iFolder server for openSuSE 10.3 from this URL : http://www.ifolder.com/download/

But installing iFolder server on openSuSE 11.1 is a bit tedious as mono packages packed with version 11.1 are a bit advanced for iFolder. Find below instructions to help you out :

– Install iFolder server and plugins from this repo.

– Configure apache2 with SSL support.

– Setup by typing as root :

simias-server-setup

ifolder-admin-setup

ifolder-web-setup

in console and follow question given by each command.

Change folder directory to /etc/apache2/conf.d by cd command and copy all .conf file to /etc/apache2 with cp command on console.

– Start apache service by typing service rcapache2 start in console.

– Allow services http and https in Firewall.

And you’re done.

IMPORTANT :

If you experience the following error code while the client is trying to connect to the server : Authentication Status Code: Unknown. The problem can be solved by NOT choosing the default server data location while running simias-server-setup. I have chosen /home/iFolder instead and that solved my problems. The server will create the folder for you with correct setup and permissions.

I would like to thank http://www.decriptor.com/2009/05/22/ifolder-on-opensuse-11-1/ for helping in creating the repository and making the above information available.


Installing ifolder3 server on openSuSE 10.3

Friday, July 10th, 2009

iFolder is a simple and secure storage solution that can increase your productivity by enabling you to back up, access and manage your personal files-from anywhere, at any time. Once you have installed iFolder, you simply save your files locally-as you have always done-and iFolder automatically updates the files on a network server and delivers them to the other machines you use.

Using iFolder, you can designate any network server as an iFolder server and publish information to a personal iFolder created on that server. Once your folder is established, you can install iFolder on the computers you regularly use and download information from your personal iFolder to any of those computers. Not only that, but using iFolder, you can also invite other iFolder users to share your files in the same safe and secure way so that your teams always have the most relevant copy of a document.

Below are installation instructions for openSuSE 10.3 server :

Download the following packages :

ifolder3 from http://www.kablink.org/index.php

http://ftp.novell.com/pub/mono/download/x86/mono/1.2.6-4/mono-core-1.2.6-4.novell.i586.rpm
http://ftp.novell.com/pub/mono/download/x86/mono/1.2.6-4/mono-data-1.2.6-4.novell.i586.rpm
http://ftp.novell.com/pub/mono/download/x86/mono/1.2.6-4/mono-data-sqlite-1.2.6-4.novell.i586.rpm
http://ftp.novell.com/pub/mono/download/x86/mono/1.2.6-4/mono-web-1.2.6-4.novell.i586.rpm
http://ftp.novell.com/pub/mono/download/x86/mono/1.2.6-4/mono-nunit-1.2.6-4.novell.i586.rpm
http://ftp.novell.com/pub/mono/download/x86/mono/1.2.6-4/mono-winforms-1.2.6-4.novell.i586.rpm
http://ftp.novell.com/pub/mono/download/noarch/xsp/1.2.6-2/xsp-1.2.6-2.novell.noarch.rpm
http://ftp.novell.com/pub/mono/download/suse-103-i586/mod_mono/1.2.6-1/apache2-mod_mono-1.2.6-1.suse103.novell.i586.rpm

Install as following :

rpm -i mono-core-1.2.6-4.novell.i586.rpm
rpm -i mono-data-1.2.6-4.novell.i586.rpm
rpm -i mono-data-sqlite-1.2.6-4.novell.i586.rpm
rpm -i mono-nunit-1.2.6-4.novell.i586.rpm
rpm -i mono-web-1.2.6-4.novell.i586.rpm –nodeps
rpm -i mono-winforms-1.2.6-4.novell.i586.rpm
rpm -i xsp-1.2.6-2.novell.noarch.rpm
rpm -i apache2-mod_mono-1.2.6-1.suse103.novell.i586.rpm

Then install iFolder server.

Vi Cheat Sheet

Thursday, July 2nd, 2009

The VI editor is a screen-based editor used by many Unix users. The VI editor has powerful features to aid programmers, but many beginning users avoid using VI because the different features overwhelm them.

This sheet cheat is aimed to provide beginners with a summary of simple to use everyday commands that should help them master this text editor as soon as possible.

Modes


Vi has two modes insertion mode and command mode. The editor begins in command mode, where the cursor movement and text deletion and pasting occur. Insertion mode begins upon entering an insertion or change command. [ESC] returns the editor to command mode (where you can quit, for example by typing :q!). Most commands execute as soon as you type them except for “colon” commands which execute when you press the ruturn key.

Quitting


: x Exit, saving changes
:q Exit as long as there have been no changes
ZZ Exit and save changes if any have been made
:q! Exit and ignore any changes

Inserting Text


i Insert before cursor
I Insert before line
a Append after cursor
A Append after line
o Open a new line after current line
O Open a new line before current line
r Replace one character
R Replace many characters

Motion


h Move left
j Move down
k Move up
l Move right
w Move to next word
W Move to next blank delimited word
b Move to the beginning of the word
B Move to the beginning of blank delimted word
e Move to the end of the word
E Move to the end of Blank delimited word
( Move a sentance back
) Move a sentance forward
{ Move a paragraph back
} Move a paragraph forward
0 Move to the begining of the line
$ Move to the end of the line
1G Move to the first line of the file
G Move to the last line of the file
nG Move to nth line of the file
:n Move to nth line of the file
fc Move forward to c
Fc Move back to c
H Move to top of screen
M Move to middle of screen
L Move to botton of screen
% Move to associated ( ), { }, [ ]

Deleting Text


Almost all deletion commands are performed by typing d followed by a motion. For example, dw deletes a word. A few other deletes are:
x Delete character to the right of cursor
X Delete character to the left of cursor
D Delete to the end of the line
dd Delete current line
:d Delete current line

Yanking Text


Like deletion, almost all yank commands are performed by typing y followed by a motion. For example, y$ yanks to the end of the line. Two other yank commands are:
yy Yank the current line
:y Yank the current line

Changing text


The change command is a deletion command that leaves the editor in insert mode. It is performed by typing c followed by a motion. For wxample cw changes a word. A few other change commands are:
C Change to the end of the line
cc Change the whole line

Putting text


p Put after the position or after the line
P Put before the poition or before the line

Buffers


Named buffers may be specified before any deletion, change, yank or put command. The general prefix has the form “c where c is any lowercase character. for example, “adw deletes a word into buffer a. It may thereafter be put back into text with an appropriate “ap.

Markers


Named markers may be set on any line in a file. Any lower case letter may be a marker name. Markers may also be used as limits for ranges.
mc Set marker c on this line
`c Go to beginning of marker c line.
c Go to first non-blank character of marker c line.

Search for strings


/string Search forward for string
?string Search back for string
n Search for next instance of string
N Search for previous instance of string

Replace


The search and replace function is accomplished with the :s command. It is commonly used in combination with ranges or the :g command (below).
:s/pattern/string/flags Replace pattern with string according to flags.
g Flag – Replace all occurences of pattern
c Flag – Confirm replaces.
& Repeat last :s command

Regular Expressions


. (dot) Any single character except newline
* zero or more occurances of any character
[…] Any single character specified in the set
[^…] Any single character not specified in the set
^ Anchor – beginning of the line
$ Anchor – end of line
\< Anchor – begining of word
\> Anchor – end of word
\(…\) Grouping – usually used to group conditions
\n Contents of nth grouping
[…] – Set Examples
[A-Z] The SET from Capital A to Capital Z
[a-z] The SET from lowercase a to lowercase z
[0-9] The SET from 0 to 9 (All numerals)
[./=+] The SET containing . (dot), / (slash), =, and +
[-A-F] The SET from Capital A to Capital F and the dash (dashes must be specified first)
[0-9 A-Z] The SET containing all capital letters and digits and a space
[A-Z][a-zA-Z] In the first position, the SET from Capital A to Capital Z
In the second character position, the SET containing all letters
Regular Expression Examples
/Hello/ Matches if the line contains the value Hello
/^TEST$/ Matches if the line contains TEST by itself
/^[a-zA-Z]/ Matches if the line starts with any letter
/^[a-z].*/ Matches if the first character of the line is a-z and there is at least one more of any character following it
/2134$/ Matches if line ends with 2134
/\(21|35\)/ Matches is the line contains 21 or 35
Note the use of ( ) with the pipe symbol to specify the ‘or’ condition
/[0-9]*/ Matches if there are zero or more numbers in the line
/^[^#]/ Matches if the first character is not a # in the line
Notes:
1. Regular expressions are case sensitive
2. Regular expressions are to be used where pattern is specified

Counts


Nearly every command may be preceded by a number that specifies how many times it is to be performed. For example, 5dw will delete 5 words and 3fe will move the cursor forward to the 3rd occurence of the letter e. Even insertions may be repeated conveniently with thismethod, say to insert the same line 100 times.

Ranges


Ranges may precede most “colon” commands and cause them to be executed on a line or lines. For example :3,7d would delete lines 3-7. Ranges are commonly combined with the :s command to perform a replacement on several lines, as with :.,$s/pattern/string/g to make a replacement from the current line to the end of the file.
:n,m Range – Lines nm
:. Range – Current line
:$ Range – Last line
:’c Range – Marker c
:% Range – All lines in file
:g/pattern/ Range – All lines that contain pattern

Files


:w file Write to file
:r file Read file in after line
:n Go to next file
:p Go to previos file
:e file Edit file
!!program Replace line with output from program

Other


~ Toggle upp and lower case
J Join lines
. Repeat last text-changing command
u Undo last change
U Undo all changes to line

Install Google Chrome for Mac OS X & Linux

Monday, June 22nd, 2009

*Google has also released official builds of Google Chrome for Linux and Mac OS X (see update below). If you are looking to install Chrome on a USB stick, check out Portable Google Chrome.

The Google Browser port, known as Crossover Chromium, is available for download on Mac OS X as a native Mac .dmg file or on Ubuntu, RedHat, Suse, etc. as standard Linux packages.

Google Chrome for Mac OS X- Screenshot

screenshot - chrome for mac

Google Chrome on Linux – Screenshot

screenshot - google chrome for linux

Google Chrome is built with open source code from Chromium.

How to Install Google Browser on Mac / Linux

Mac users can simply drag the Chromium .dmg file into their Applications folder. Linux users should use the appropriate tools for their respective Linux distributions to unpack the installer package. Google Chrome on Linux is available for both 32bit and 64bit versions.

If you installed Google Chrome on Linux using the .deb package, you can uninstall the Google Browser using the Synaptic package manager or via the following command – sudo aptitude purge cxchromium

Google Chrome for Mac & Linux – Official Builds

Update: The official builds of Google Chromium are now available for Linux and Mac here. The interface and features of Chromium for Mac OS X are similar to that of Chrome for Windows but it’s a developer release and not very stable yet.

Installing native 64bit Flash Player on Linux

Monday, March 30th, 2009

Find below bash script for openSuSE 11.0 and 11.1 that will install 64bit Flash Player :

#!/bin/bash

echo “Stopping Firefox”
sudo killall -9 firefox

echo “Removing previous installations of flash plugin :”

sudo rm -f /usr/lib64/browser-plugins/npwrapper.libflashplayer.so
sudo rm -f /usr/lib/browser-plugins/libflashplayer.so
sudo rm -f /usr/lib/flash-plugin/libflashplayer.so
sudo rm -rfd /usr/lib/nspluginwrapper

echo “Installing Flash Player 10”
wget http://download.macromedia.com/pub/labs/flashplayer10/libflashplayer-10.0.42.34.linux-x86_64.so.tar.gz
tar zxvf libflashplayer-10.0.42.34.linux-x86_64.so.tar.gz

sudo cp libflashplayer.so /usr/lib64/browser-plugins/libflashplayer.so
sudo cp libflashplayer.so /usr/lib/browser-plugins/libflashplayer.so

# some cleaning up

sudo rm -rf libflashplayer-10.0.42.34.linux-x86_64.so.tar.gz
sudo rm -rf libflashplayer.so

You need to chmod +x then execute it. Remember to enable flash pluging in Firefox then restarting.