Tuesday, December 29, 2009

collabtive 0.6.1 bug fix

Found one bug in collabtive 0.6.1 , you will received the following error whenever you try to update the task.

Fatal error: Call to a member function callSignalFuncs() on a non-object in /opt/lampp/htdocs/pm/include/class.task.php on line 118

To fix this error , change line 25 & 26 in the file \include\class.task.php

$this->mylog = new mylog;
$plugin = new plugin();


$this->mylog = new mylog();
$this->plugins = new plugin();

. Hope this will help.

I found the fix from this page : http://www.penglixun.com/life/diary/frist_contribution_for_open_source.html


Monday, December 21, 2009





Saturday, November 28, 2009

a script that will check the md5sum of all the files and directory in the source directory

If you need a script that will check the md5sum of all the files and directory in the source directory, this is the command:

find . -type f -exec md5sum {} \;


Thursday, November 12, 2009

Huawei 3G modem E1762 and Linux

If you are having difficulty using Linux with Huawei 3G modem , this might give you an idea on how to resolve your problem.

The problem is Linux always recognize Huawei 3G modem as storage instead of modem, so need to use usb_modeswitch to switch it become a modem.

Here is the command:

1. yum install usb_modeswitch
2. modify /etc/usb_modeswitch.conf

Here is my example :

#Huawei E1762
DefaultVendor= 0x12d1
DefaultProduct= 0x1446
;DefaultProduct= 0x1003

TargetVendor= 0x12d1
TargetProduct= 0x1446

# choose one of these:


3. Modify /etc/udev/rules.d/15-huawei-e1762.rules

SUBSYSTEM=="usb", SYSFS{idProduct}=="1446", SYSFS{idVendor}=="12d1", RUN+="/lib

4. Restart the system and use Network Manager to configure the connection.

Hope this will help you.


Sunday, November 1, 2009

bash Script to remove string from filename

This bash script is to remove or replace a string from the filename.


for THISFILE in *
echo "mv $THISFILE ${newname}.${extension}"
#mv $THISFILE ${newname}.${extension}


Saturday, October 31, 2009

Fedora 10 64 bit Xmms and APE plugin

If you have a Fedora 10 64bits system and want to play APE media file with XMMS , you will need this file.


Download and install , then you will be able to play APE with your XMMS in your Fedora 10 64bits system.


Monday, September 14, 2009

Create icon on the desktop that prevent user from deleting it

Basically to create an icon that prevent user from deleting it, we call this icon as shell object. If you don't what keyword to search in google, I would suggest using "create shell object".

Anyway I found these two article which might help, if you are looking for article that help you create icon that cant be deleted by user or we call it shell object.

Add Custom Folder to My Computer or the Desktop (All Windows) Popular


Shellfolders & -objects
Create and add your own folders/objects at places you're not supposed to, and make them behave like shell objects.



Free Desktop Management Software

I found this Free Desktop Management Software , it might be something that you are looking.


Manage Everything IT... for Free!

Spiceworks is the complete network management & monitoring, helpdesk, PC inventory & software reporting solution to manage Everything IT in small and medium businesses.

Powered by 750,000 IT Pros Like You

The Spiceworks IT Community is available to answer questions while you work directly in the application.

It’s 100% Free. Download Now!

Spiceworks is completely free…and you can get started in less than 5 minutes. Download now.


Monday, September 7, 2009

Boot Acronis from PXE

I found these two articles about booting into acronis environment using PXE.

Source :


Few days ago, I’ve received 50 new servers without any OS preinstalled. The servers came without floppy drive and CD/DVD. I tried to connect an external CD (USB) or Disk on Key, but servers didn’t start. So, I decided to run PXE Boot. If you don't know what PXE is, here’s what is written in Wikipedia:

“The Preboot Execution Environment (PXE, aka Pre-Execution Environment, or 'pixie') is an environment to boot computers using a network interface card independently of available data storage devices (like hard disks) or installed operating systems.”

There are several solutions of PXE implementation. Microsoft has its Remote Installation Service (RIS), there are sort of HP, Symantec and Acronics. Some of them are based on Linux.
I decided not to straggle with Microsoft RIS or Linux and fortunately I found a more simple solution.

So, here is an explanation of what I did:
1. Additional Computer, running Windows to act as the PXE server. I have used Windows XP.
2. Syslinux-3.51.zip (or other version) from http://www.kernel.org/pub/linux/utils/boot/syslinux/ (We need only a few files).
3. DHCP and TFTP Server software for windows (I used TFTPD32. As a DHCP server you can use a MS DHCP Server from Windows 2000/2003).
4. DOS bootable floppy. I have used a boot image with NetBoot and Boot image of clean Windows 98. Both images can be downloaded here.

Download the software above into a temporary folder on the computer that will act as the PXE Server.
1. On the future PXE server, create a following directory structure:
--- TFTPRoot
----- pxelinux.cfg (This is a directory, not a file)

2. Download and Unpack syslinux-3.51.zip in any Temp directory. We need only 2 file from the archive. Take a pxelinux.0 and put it in the root of C:\PXEServer\TFTPRoot\Boot . Then, from the directory memdisk take 'memdisk' file and put it same place (C:\PXEServer\TFTPRoot\Boot).
Take file menu.c32 (from \syslinux-3.51\com32\modules) and put it to the C:\PXEServer\TFTPRoot\Boot.

3. Download Tftpd32 v3.03 from http://www.jounin.net/tftpd32_download.html and extract the tftpd32.exe files to C:\PXEServer.

4. Now we need a boot disk image. You can take a boot floppy and create an image, by using the WinImage. I have downloaded Universal TCP / IP Network Boot disk from http://www.netbootdisk.com/

Created diskette, and then made an IMA image in WinImage.

NOTE : Universal TCP / IP Network Boot disk uses a boot disk which created at Windows XP. It was a problem to use this diskette for PXE boot, so I took all files from created disk and placed them in the boot disk of Windows 98. If you do not have time to create an image, you can simply download it here.

5. Inside pxelinux.cfg create a text file default. Please note that the file should be NO extension. In my file you have an option to select which boot image to use, image with network Support (Universal TCP / IP Network Boot disk) or simply use a clean boot of Windows 98. Here is a content of my default file:

DEFAULT menu.c32
LABEL NetworkBoot
MENU LABEL ^Network Boot
kernel memdisk
append initrd=w98se-netboot.IMA
LABEL CleanBoot
MENU LABEL ^Clean Win 98 Boot
kernel memdisk
append initrd=W98.IMA
LABEL BootNormal
MENU LABEL ^Boot Normal

6. Now, let’s run tftpd32.exe. In Global Settings select TFTP Server and DHCP Server. See Figure 1 for an example of my setup. After finishing settings click OK.

Figure 1

7. On the DHCP Server tab make settings appropriate for your network. The one of the most important settings, this is' Boot file '. Set the 'Boot file' to ' /boot/pxelinux.0 '. See Figure 2 for an example of my setup. Remember to click on SAVE button.

Figure 2

8. The server setup is DONE! Now, you can turn on a new server and choose at startup PXE Boot. Further installation, is a thing of technology :).

Note: If you already have any DHCP server at your network, it will be a problem. I'd like to advise to disable another DHCP server or to configure it as written above. For example Microsoft DHCP Server Boot option file is 67 (67 Bootfile Name).

Since I've published article "PXE, aka Pre-Execution Environment - Part 1" I've got a lot of emails with the same question - 'Where is a Part 2?". So, here it is.

I know many Network Administrators who work with Acronis products and i also sometime work with those good products. This week i did a project for one of my clients in Seattle, WA. The main idea was to deploy an Acronis image on new servers and configure those servers according to system requirements. So, again, those servers came without floppy drive and CD/DVD :) and as all of you know, to restore Acronis image on a new machine we have to use Bootable Rescue Media, aka Bootable CD with Acronis on it. Yes, I know, that Acronis provides a products with PXE integrated, but i don't have it :) and I've used my own PXE server.

The first step I did was create Bootable Rescue Media. Then I took 2 files, kernel.dat and ramdisk.dat from Acronis's directory and put them into C:\PXEServer\TFTPRoot\Boot directory. Well, now was the time to make a small changes to our "default" file (default file located in C:\PXEServer\TFTPRoot\Boot\pxelinux.cfg\ directory). After all those changes my "default" file now looks as follow:

DEFAULT menu.c32



MENU LABEL ^Acronis Bootable
kernel kernel.dat
append initrd=ramdisk.dat vga=791 ramdisk_size=32768 acpi=off quiet noapic

LABEL NetworkBoot
MENU LABEL ^Network Boot
kernel memdisk
append initrd=w98se-netboot.IMA

LABEL CleanBoot
MENU LABEL ^Clean Win 98 Boot
kernel memdisk
append initrd=W98.IMA

MENU LABEL ^Memory Test
kernel memdisk
append initrd=W98_MemTest.IMA
The next steps were pretty simple ;), Boot, Select Acronis from the menu, Select Image for recovery and.....

Thanks to time PXE saved me I was able to spend some time in very beautiful city Seattle.


Friday, September 4, 2009

Mastering the VI editor

For those who still need to use vi instead of vim, this might be a good guide.


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 tutorial is written to help beginning users get accustomed to using the VI editor, but also contains sections relevant to regular users of VI as well. Examples are provided, and the best way to learn is to try these examples, and think of your own examples as well... There's no better way than to experience things yourself.

EX Commands


In this tutorial, the following convention will be used:

^X denotes a control character. For example, if you see: ^d in the tutorial, that means you hold down the control key and then type the corresponding letter. For this example, you would hold down the control key and then type d.

Before You Begin

The VI editor uses the full screen, so it needs to know what kind of terminal you have. When you log in, wiliki should ask you what terminal you have. The prompt looks like this:

 TERM = (vt100)

If you know your terminal is a vt100 (or an emulator that can do vt100), just hit return for the terminal type when you log in. If you have an hp terminal, type "hp" for the terminal type and hit return. If you are not sure what kind of terminal you have, ask a lab monitor, or have someone help you set the correct terminal type.

If you make an error when you log in and type the wrong terminal type, don't panic and log out. You can type the following commands to fix the settings:

    First, tell your shell what type of terminal you have. (If you're not sure what your shell is, type this command to see what shell you have: echo $SHELL.) For the examples given, the terminal type is "vt100". Substitute it with whatever terminal type you have. For C shell (/bin/csh), the command is this:

            set term=vt100
    For Bourne Shell (/bin/sh) or Korn Shell (/bin/ksh), the commands are the following:
            export TERM
    Next, reset your terminal with this command:

Now that the terminal type is (hopefully) correctly set, you are ready to get started with VI.

Starting the VI Editor

The VI editor lets a user create new files or edit existing files. The command to start the VI editor is vi, followed by the filename. For example to edit a file called temporary, you would type vi temporary and then return. You can start VI without a filename, but when you want to save your work, you will have to tell VI which filename to save it into later.

When you start VI for the first time, you will see a screen filled with tildes (A tilde looks like this: ~) on the left side of the screen. Any blank lines beyond the end of the file are shown this way. At the bottom of your screen, the filename should be shown, if you specified an existing file, and the size of the file will be shown as well, like this:

"filename" 21 lines, 385 characters
If the file you specified does not exist, then it will tell you that it is a new file, like this:
"newfile" [New file]
If you started VI without a filename, the bottom line of the screen will just be blank when VI starts. If the screen does not show you these expected results, your terminal type may be set wrong. Just type :q and return to get out of VI, and fix your terminal type. If you don't know how, ask a lab monitor.

Getting Out of VI

Now that you know how to get into VI, it would be a good idea to know how to get out of it. The VI editor has two modes and in order to get out of VI, you have to be in command mode. Hit the key labeled "Escape" or "Esc" (If your terminal does not have such a key, then try ^[, or control-[.) to get into command mode. If you were already in the command mode when you hit "Escape", don't worry. It might beep, but you will still be in the command mode.

The command to quit out of VI is :q. Once in command mode, type colon, and 'q', followed by return. If your file has been modified in any way, the editor will warn you of this, and not let you quit. To ignore this message, the command to quit out of VI without saving is :q!. This lets you exit VI without saving any of the changes.

Of course, normally in an editor, you would want to save the changes you have made. The command to save the contents of the editor is :w. You can combine the above command with the quit command, or :wq. You can specify a different file name to save to by specifying the name after the :w. For example, if you wanted to save the file you were working as another filename called filename2, you would type: w filename2 and return.

Another way to save your changes and exit out of VI is the ZZ command. When in command mode, type ZZ and it will do the equivalent of :wq. If any changes were made to the file, it will be saved. This is the easiest way to leave the editor, with only two keystrokes.

The Two Modes of VI

The first thing most users learn about the VI editor is that it has two modes: command and insert. The command mode allows the entry of commands to manipulate text. These commands are usually one or two characters long, and can be entered with few keystrokes. The insert mode puts anything typed on the keyboard into the current file.

VI starts out in command mode. There are several commands that put the VI editor into insert mode. The most commonly used commands to get into insert mode are a and i. These two commands are described below. Once you are in insert mode, you get out of it by hitting the escape key. If your terminal does not have an escape key, ^[ should work (control-[). You can hit escape two times in a row and VI would definitely be in command mode. Hitting escape while you are already in command mode doesn't take the editor out of command mode. It may beep to tell you that you are already in that mode.

How to Type Commands in Command Mode

The command mode commands are normally in this format: (Optional arguments are given in the brackets)

    [count] command [where]
Most commands are one character long, including those which use control characters. The commands described in this section are those which are used most commonly the VI editor.

The count is entered as a number beginning with any character from 1 to 9. For example, the x command deletes a character under the cursor. If you type 23x while in command mode, it will delete 23 characters.

Some commands use an optional where parameter, where you can specify how many lines or how much of the document the command affects, the where parameter can also be any command that moves the cursor.

Some Simple VI Commands

Here is a simple set of commands to get a beginning VI user started. There are many other convenient commands, which will be discussed in later sections.

enter insert mode, the characters typed in will be inserted after the current cursor position. If you specify a count, all the text that had been inserted will be repeated that many times.
move the cursor to the left one character position.
enter insert mode, the characters typed in will be inserted before the current cursor position. If you specify a count, all the text that had been inserted will be repeated that many times.
move the cursor down one line.
move the cursor up one line.
move the cursor to the right one character position.
replace one character under the cursor. Specify count to replace a number of characters
undo the last change to the file. Typing u again will re-do the change.
delete character under the cursor. Count specifies how many characters to delete. The characters will be deleted after the cursor.

Text Buffers in VI

The VI editor has 36 buffers for storing pieces of text, and also a general purpose buffer. Any time a block of text is deleted or yanked from the file, it gets placed into the general purpose buffer. Most users of VI rarely use the other buffers, and can get along without the other buffers. The block of text is also stored in another buffer as well, if it is specified. The buffer is specified using the " command. After typing ", a letter or digit specifying the buffer must be entered. For example, the command: "mdd uses the buffer m, and the last two characters stand for delete current line. Similarly, text can be pasted in with the p or P command. "mp pastes the contents of buffer m after the current cursor position. For any of the commands used in the next two sections, these buffers can be specified for temporary storage of words or paragraphs.

Cutting and Yanking

The command commonly used command for cutting is d. This command deletes text from the file. The command is preceded by an optional count and followed by a movement specification. If you double the command by typing dd, it deletes the current line. Here are some combinations of these:

deletes from current cursor position to the beginning of the line.
deletes from current cursor position to the end of the line.
deletes from current cursor position to the end of the word.
deletes three lines from current cursor position downwards.

There is also the y command which operates similarly to the d command which take text from the file without deleting the text.


The commands to paste are p and P. The only differ in the position relative to the cursor where they paste. p pastes the specified or general buffer after the cursor position, while P pastes the specified or general buffer before the cursor position. Specifying count before the paste command pastes text the specified number of times.

Indenting Your Code and Checking

The VI editor has features to help programmers format their code neatly. There is a variable that to set up the indentation for each level of nesting in code. In order to set it up, see the customization section of this tutorial. For example, the command to set the shift width to 4 characters is :set sw=4.

The following commands indent your lines or remove the indentation, and can be specified with count:

Shifts the current line to the left by one shift width.
Shifts the current line to the right by one shift width.

The VI editor also has a helpful feature which checks your source code for any hanging parentheses or braces. The % command will look for the left parenthesis or brace corresponding to a particular right parenthesis or brace and vice versa. Place the cursor onto a parenthesis or brace and type % to move the cursor to the corresponding parenthesis or brace. This is useful to check for unclosed parentheses or braces. If a parenthesis or brace exists without a matching parenthesis or brace, VI will beep at you to indicate that no matching symbol was found.

Word and Character Searching

The VI editor has two kinds of searches: string and character. For a string search, the / and ? commands are used. When you start these commands, the command just typed will be shown on the bottom line, where you type the particular string to look for. These two commands differ only in the direction where the search takes place. The / command searches forwards (downwards) in the file, while the ? command searches backwards (upwards) in the file. The n and N commands repeat the previous search command in the same or opposite direction, respectively. Some characters have special meanings to VI, so they must be preceded by a backslash (\) to be included as part of the search expression.

Special characters:

Beginning of the line. (At the beginning of a search expression.)
Matches a single character.
Matches zero or more of the previous character.
End of the line (At the end of the search expression.)
Starts a set of matching, or non-matching expressions... For example: /f[iae]t matches either of these: fit fat fet In this form, it matches anything except these: /a[^bcd] will not match any of these, but anything with an a and another letter: ab ac ad
Put in an expression escaped with the backslash to find the ending or beginning of a word. For example: /\ should find only word the, but not words like these: there and other.
See the '<' character description above.

The character search searches within one line to find a character entered after the command. The f and F commands search for a character on the current line only. f searches forwards and F searches backwards and the cursor moves to the position of the found character.

The t and T commands search for a character on the current line only, but for t, the cursor moves to the position before the character, and T searches the line backwards to the position after the character.

These two sets of commands can be repeated using the ; or , command, where ; repeats the last character search command in the same direction, while , repeats the command in the reverse direction.

Settings for VI (and EX)

You can customize the way VI behaves upon start up. There are several edit options which are available using the :set command, these are the VI and EX editor options available on Wiliki: (You can get this list by typing :set all and then return in command mode)

noautoindent magic noshowmatch
autoprint mesg noshowmode
noautowrite nomodelines noslowopen
nobeautify nonumber tabstop=8
directory=/tmp nonovice taglength=0
nodoubleescape nooptimize tags=tags /usr/lib/tags
noedcompatible paragraphs=IPLPPPQPP LIpplpipnpbp term=xterm
noerrorbells prompt noterse
noexrc noreadonly timeout
flash redraw timeoutlen=500
hardtabs=8 remap ttytype=xterm
noignorecase report=5 warn
keyboardedit scroll=11 window=23
keyboardedit! sections=NHSHH HUuhsh+c wrapscan
nolisp shell=/bin/csh wrapmargin=0
nolist shiftwidth=8 nowriteany

Some of these options have values set with the equals sign '=' in it, while others are either set or not set. (These on or off type of options are called Boolean, and have "no" in front of them to indicate that they are not set.) The options shown here are the options that are set without any customization. Descriptions of some of these are given below, with an abbreviation. For example, the command set autoindent, you can type :set autoindent or :set ai. To unset it, you can type :set noautoindent or :set noai.

autoindent (ai)
This option sets the editor so that lines following an indented line will have the same indentation as the previous line. If you want to back over this indentation, you can type ^D at the very first character position. This ^D works in the insert mode, and not in command mode. Also, the width of the indentations can be set with shiftwidth, explained below.
The .exrc file in the current directory is read during startup. This has to be set either in the environment variable EXINIT or in the .exrc file in your home directory.
Turn off messages if this option is unset using :set nomesg, so that nobody can bother you while using the editor.
number (nu)
Displays lines with line numbers on the left side.
shiftwidth (sw)
This option takes a value, and determines the width of a software tabstop. (The software tabstop is used for the << and >> commands.) For example, you would set a shift width of 4 with this command: :set sw=4.
showmode (smd)
This option is used to show the actual mode of the editor that you are in. If you are in insert mode, the bottom line of the screen will say INPUT MODE.
This option warns you if you have modified the file, but haven't saved it yet.
window (wi)
This option sets up the number of lines on the window that VI uses. For example, to set the VI editor to use only 12 lines of your screen (because your modem is slow) you would use this: :set wi=12.
wrapscan (ws)
This option affects the behavior of the word search. If wrapscan is set, if the word is not found at the bottom of the file, it will try to search for it at the beginning.
wrapmargin (wm)
If this option has a value greater than zero, the editor will automatically "word wrap". That is, if you get to within that many spaces of the left margin, the word will wrap to the next line, without having to type return. For example, to set the wrap margin to two characters, you would type this: :set wm=2.

Abbreviations and Mapping Keys to Other Keys

One EX editor command that is useful in the VI editor is the abbreviate command. This lets you set up abbreviations for specific strings. The command looks like this: :ab string thing to substitute for. For example, if you had to type the name, "Humuhumunukunukuapua`a" but you didn't want to type the whole name, you could use an abbreviation for it. For this example, the command is entered like this:
:ab 9u Humuhumunukunukuapua`a
Now, whenever you type 9u as a separate word, VI will type in the entire word(s) specified. If you typed in 9university, it will not substitute the word.

To remove a previously defined abbreviation, the command is unabbreviate. To remove the previous example, the command would be ":una 9u" To get your listing of abbreviations, simply just type :ab without any definitions.

Another EX editor command that is useful for customization is the mapping command. There are two kinds of mapping commands. One for command mode, and the other for insert mode. These two commands are :map and :map! respectively. The mapping works similarly to the abbreviation, and you give it a key sequence and give it another key sequence to substitute it with. (The substituted key sequences are usually VI commands.)

The EXINIT Environment Variable and the .exrc file

There are two ways to customize the VI editor. If you create a file called .exrc in your home directory, all the commands in there will be read when VI starts up. The other method is to set an environment variable called EXINIT. The options will be set in your shell's setup file. If you use /bin/csh (C-Shell), the command is as follows, and is put in the .cshrc file:

    setenv EXINIT '...'
If you use /bin/sh or /bin/ksh, the command is as follows, and is put into the .profile file:
    export EXINIT
Don't put in ... as the example says. In this space put the commands that you want to set up. For example, if you want to have auto indent, line numbering, and the wrap margin of three characters, then the setenv command (for C shell) looks like this:
    setenv EXINIT 'set ai nu wm=3'

If you want to put more than one command in the setenv EXINIT thing, separate the commands with a vertical bar (|). For example, to map the 'g' command to the 'G' character in command mode, the command is :map g G, and combined with the above command, you get this:

setenv EXINIT 'set ai nu wm=3|map g G'

If you want to create the file called .exrc, you can put exactly the same things in the file as shown in the quotes after the EXINIT.

Recovering Your Work When Something Goes Wrong with Your Terminal

The VI editor edits a temporary copy of your file, and after the editing is complete, or when you tell it to save, it puts the contents of the temporary copy into the original file. If something goes wrong while you are editing your file, the VI editor will attempt to save whatever work you had in progress, and store it for later recovery. (Note: If VI dies while you were working on any file, it sends you an email message on how to recover it. The -r option stands for recovery. If you were editing the file vitalinfo, and you accidentally got logged out, then the -r option of the 'vi' editor should help. The command would look somewhat like this: vi -r vitalinfo After using the -r option once, though, you MUST save what you have recovered to the actual file... The -r option only works once per failed VI session.

Warning About Using VI on the Workstations

There are two things to be aware of when using the workstations: Editing the same file many times at once, and changing the size of the screen.

Because VI edits a copy of your original file and saves the contents of that copy into the original file, if you are logged on more than once and are editing the same file more than once using VI, if you save on one window and then you save on the other window, the changes made to the file on the first save would be overwritten. Make sure that you only run one copy of VI per file.

If you use a terminal program from a workstation, you can change the size of the screen by dragging the sides of the window. If the size is not working properly, the command to type is this:

    eval `resize`
If that doesn't work the command would be this:
    eval `/usr/bin/X11/resize`
If the size is wrong, the editor will not operate correctly. If you have any problems with the screen size, ask the monitors in the computer lab for help setting the sizes correctly.

Summary of VI commands

This list is a summary of VI commands, categorized by function. There may be other commands available, so check the on-line manual on VI. For easy reference, you can save this file as text and delete any commands you don't think you would use and print out the resulting shorter file.

Cutting and Pasting/Deleting text

Specify a buffer to be used any of the commands using buffers. Follow the " with a letter or a number, which corresponds to a buffer.
Delete to the end of the line from the current cursor position.
Paste the specified buffer before the current cursor position or line. If no buffer is specified (with the " command.) then 'P' uses the general buffer.
Delete the character before the cursor.
Yank the current line into the specified buffer. If no buffer is specified, then the general buffer is used.
Delete until where. "dd" deletes the current line. A count deletes that many lines. Whatever is deleted is placed into the buffer specified with the " command. If no buffer is specified, then the general buffer is used.
Paste the specified buffer after the current cursor position or line. If no buffer is specified (with the " command.) then 'p' uses the general buffer.
Delete character under the cursor. A count tells how many characters to delete. The characters will be deleted after the cursor.
Yank until , putting the result into a buffer. "yy" yanks the current line. a count yanks that many lines. The buffer can be specified with the " command. If no buffer is specified, then the general buffer is used.

Inserting New Text

Append at the end of the current line.
Insert from the beginning of a line.
(letter oh) Enter insert mode in a new line above the current cursor position.
Enter insert mode, the characters typed in will be inserted after the current cursor position. A count inserts all the text that had been inserted that many times.
Enter insert mode, the characters typed in will be inserted before the current cursor position. A count inserts all the text that had been inserted that many times.
Enter insert mode in a new line below the current cursor position.

Moving the Cursor Within the File

Scroll backwards one page. A count scrolls that many pages.
Scroll forwards half a window. A count scrolls that many lines.
Scroll forwards one page. A count scrolls that many pages.
Move the cursor one space to the left. A count moves that many spaces.
Move the cursor down one line in the same column. A count moves that many lines down.
Move to the first character on the next line.
Move the cursor down one line in the same column. A count moves that many lines down.
Move the cursor up one line in the same column. A count moves that many lines up.
Scroll backwards half a window. A count scrolls that many lines.
Move the cursor to the end of the current line. A count moves to the end of the following lines.
Move the cursor to the matching parenthesis or brace.
Move the cursor to the first non-whitespace character.
Move the cursor to the beginning of a sentence.
Move the cursor to the beginning of the next sentence.
Move the cursor to the preceding paragraph.
Move the cursor to the next paragraph.
Move the cursor to the column specified by the count.
Move the cursor to the first non-whitespace character in the next line.
Move the cursor to the first non-whitespace character in the previous line.
Move the cursor to the first non-whitespace character in the current line.
(Zero) Move the cursor to the first column of the current line.
Move the cursor back one word, skipping over punctuation.
Move forward to the end of a word, skipping over punctuation.
Go to the line number specified as the count. If no count is given, then go to the end of the file.
Move the cursor to the first non-whitespace character on the top of the screen.
Move the cursor to the first non-whitespace character on the bottom of the screen.
Move the cursor to the first non-whitespace character on the middle of the screen.
Move forward to the beginning of a word, skipping over punctuation.
Move the cursor back one word. If the cursor is in the middle of a word, move the cursor to the first character of that word.
Move the cursor forward one word. If the cursor is in the middle of a word, move the cursor to the last character of that word.
Move the cursor to the left one character position.
Move the cursor down one line.
Move the cursor up one line.
Move the cursor to the right one character position.
Move the cursor forward one word. If the cursor is in the middle of a word, move the cursor to the first character of the next word.

Moving the Cursor Around the Screen

Scroll forwards one line. A count scrolls that many lines.
Scroll backwards one line. A count scrolls that many lines.
Redraw the screen with the following options. "z" puts the current line on the top of the screen; "z." puts the current line on the center of the screen; and "z-" puts the current line on the bottom of the screen. If you specify a count before the 'z' command, it changes the current line to the line specified. For example, "16z." puts line 16 on the center of the screen.

Replacing Text

Change to the end of the line from the current cursor position.
Replace characters on the screen with a set of characters entered, ending with the Escape key.
Change an entire line.
Change until . "cc" changes the current line. A count changes that many lines.
Replace one character under the cursor. Specify a count to replace a number of characters.
Substitute one character under the cursor, and go into insert mode. Specify a count to substitute a number of characters. A dollar sign ($) will be put at the last character to be substituted.

Searching for Text or Characters

Repeat the last f, F, t or T command in the reverse direction.
Search the file downwards for the string specified after the /.
Repeat the last f, F, t or T command.
Search the file upwards for the string specified after the ?.
Search the current line backwards for the character specified after the 'F' command. If found, move the cursor to the position.
Repeat the last search given by '/' or '?', except in the reverse direction.
Search the current line backwards for the character specified after the 'T' command, and move to the column after the if it's found.
Search the current line for the character specified after the 'f' command. If found, move the cursor to the position.
Repeat last search given by '/' or '?'.
Search the current line for the character specified after the 't' command, and move to the column before the character if it's found.

Manipulating Character/Line Formatting

Switch the case of the character under the cursor.
Shift the lines up to where to the left by one shiftwidth. "<<" shifts the current line to the left, and can be specified with a count.
Shift the lines up to where to the right by one shiftwidth. ">>" shifts the current line to the right, and can be specified with a count.
Join the current line with the next one. A count joins that many lines.

Saving and Quitting

Quit out of "VI" mode and go into "EX" mode. The EX editor is the line editor VI is build upon. The EX command to get back into VI is ":vi".
Quit out of "VI" mode and go into "EX" mode. The ex editor is a line-by-line editor. The EX command to get back into VI is ":vi".
Exit the editor, saving if any changes were made.


Show the current filename and the status.
Clear and redraw the screen.
Redraw the screen removing false lines.
Escape key. Cancels partially formed command.
Go back to the last file edited.
Execute a shell. If a is specified, the program which is executed using ! uses the specified line(s) as standard input, and will replace those lines with the standard output of the program executed. "!!" executes a program using the current line as input. For example, "!4jsort" will take five lines from the current cursor position and execute sort. After typing the command, there will be a single exclamation point where you can type the command in.
Repeat the previous ":s" command.
Repeat the last command that modified the file.
Begin typing an EX editor command. The command is executed once the user types return. (See section below.)
Type the command stored in the specified buffer.
Restore the current line to the state it was in before the cursor entered the line.
Mark the current position with the character specified after the 'm' command.
Undo the last change to the file. Typing 'u' again will re-do the change.

EX Commands

The VI editor is built upon another editor, called EX. The EX editor only edits by line. From the VI editor you use the : command to start entering an EX command. This list given here is not complete, but the commands given are the more commonly used. If more than one line is to be modified by certain commands (such as ":s" and ":w" ) the range must be specified before the command. For example, to substitute lines 3 through 15, the command is ":3,15s/from/this/g".

:ab string strings
Abbreviation. If a word is typed in VI corresponding to string1, the editor automatically inserts the corresponding words. For example, the abbreviation ":ab usa United States of America" would insert the words, "United States of America" whenever the word "usa" is typed in.
:map keys new_seq
Mapping. This lets you map a key or a sequence of keys to another key or a sequence of keys.
Quit VI. If there have been changes made, the editor will issue a warning message.
Quit VI without saving changes.
Substitute. This substitutes the specified pattern with the string in the to_pattern. Without options, it only substitutes the first occurence of the pattern. If a 'g' is specified, then all occurences are substituted. For example, the command ":1,$s/Dwayne/Dwight/g" substitutes all occurences of "Dwayne" to "Dwight".
:set [all]
Sets some customizing options to VI and EX. The ":set all" command gives all the possible options. (See the section on customizing VI for some options.)
:una string
Removes the abbreviation previously defined by ":ab".
:unm keys
Removes the remove mapping defined by ":map".
:vi filename
Starts editing a new file. If changes have not been saved, the editor will give you a warning.
Write out the current file.
:w filename
Write the buffer to the filename specified.
:w >> filename
Append the contents of the buffer to the filename.
Write the buffer and quit.

Source: http://www.eng.hawaii.edu/Tutor/vi.html

Thursday, September 3, 2009

Configure SSH automation login

If you need a guide on how to configure SSH automation login, here is the steps.

SSH Automatic Login

Of course this is not the right phrase for it. It should be something like “key-based authorization with SSH”. Or simply “publickey authorization”. Or “unattended ssh login”. But I guess you know what I mean.

Here are the steps:

1. Create a public ssh key, if you haven’t one already.
Look at ~/.ssh. If you see a file named id_dsa.pub then you obviously already have a public key. If not, simply create one. ssh-keygen -t dsa should do the trick.
Please note that there are other types of keys, e.g. RSA instead of DSA. I simply recomend DSA, but keep that in mind if you run into errors.

2. Make sure your .ssh dir is 700:
chmod 700 ~/.ssh

3. Get your public ssh key on the server you want to login automatically.
A simple scp ~/.ssh/id_dsa.pub remoteuser@remoteserver.com: is ok.

4. Append the contents of your public key to the ~/.ssh/authorized_keys and remove it.
Important: This must be done on the server you just copied your public key to. Otherwise you wouldn’t have had to copy it on your server.
Simply issue something like cat id_dsa.pub >> .ssh/authorized_keys while at your home directory.

5. Instead of steps 3 and 4, you can issue something like this:
cat ~/.ssh/id_dsa.pub | ssh -l remoteuser remoteserver.com 'cat >> ~/.ssh/authorized_keys'

6. Remove your public key from the home directory on the server.

7. Done!

You can now login:
ssh -l remoteuser remoteserver.com or ssh remoteuser@remoteserver.com without getting asked for a password.

That’s all you need to do.

I found these steps from : http://wp.uberdose.com/2006/10/16/ssh-automatic-login/

If you working with Solaris, may be this guide will help you.

Setting Up SSH For No Password

Peter Cvar, April 2006

This setup will allow you to log in to another account without having to provide the password.

man ssh-keygen is a start, but it might need some clarifying for beginners.

This Tech Tip concentrates on SSH2, the second version of SSH. Don't use the first version any longer; it contains security bugs. Also, older versions of the second version might contain security bugs. Check with ssh -V that your version matches the latest one available from OpenSSH.

If you can't find any of the SSH commands (ssh and scp, for instance) on your system, get the SSH package first and install it. This suite should also install the ssh-keygen command on your machine. Make sure that SSH is installed on every system that you want to access. Starting from the Solaris 9 OS, SSH is included in the distribution.

If you can't find a package suitable for your version, refer to the OpenSSH web site for the source, and then download, unpack, read the README, compile, and install. Systems missing OpenSSL have to add that package as well for SSH to work. Test, for example, ssh localserver; this will create a .ssh subdirectory in your home directory.

In your ~/.ssh directory, create your personal SSH key:

server1:~/.ssh> ssh-keygen -t dsa

This creates id_dsa and id_dsa.pub in ~/.ssh.

If you want to enable remote connections that don't require a password, do not enter a passphrase. If you do enter a non-empty passphrase, when connecting to the remote server you will be asked for the passphrase instead of the password!

Append the public key to the file authorized_keys2:

server1:~/.ssh> cat id_dsa.pub >> authorized_keys2

Don't worry if authorized_keys2 does not yet exist before you execute this command.

Sun provides SSH in the Solaris OS starting from release 9, but uses SSH version 1 naming conventions. On the Solaris 9 OS, use the authorized_keys file instead of authorized_keys2.

Now you should already be able to make a secure connection to your own machine, using this account, without having to provide a password.

Check permissions on your keys and refer to the man page. The id_dsa file should be private, the other keys world readable. On the remote server, generate keys in the same way for your account on that server.

Copy your public key into ~/.ssh/ on the remote server.

server1:~/.ssh> scp id_dsa.pub server2:/your/remote/home/.ssh/server1.key.pub
user@server2's password:
id_dsa.pub 100% |*****************************| 236 00:00

Do the same thing for the remote key; copy it into your local ~/.ssh directory:

server1:~/.ssh> scp server2:/your/remote/home/.ssh/id_dsa.pub ./server2.key.pub
user@server2's password:
id_dsa.pub 100% |*****************************| 236 00:00

On both servers, append the key from the other server to the file authorized_keys2:

server1:~/.ssh> cat server2.key.pub >> authorized_keys2

And also for the second server:

user@server2:~/.ssh> cat server1.key.pub >> authorized_keys2

That's it! Try to connect to the remote server now. It should do something similar to this:

server1:~/.ssh> ssh server2
Last login: Mon Nov 21 16:23:26 2005 from :0

If things don't work, check the logs, possibly in /var/log/secure. This file contains useful information, such as:

Nov 21 10:24:41 ocean sshd[26446]: Authentication refused: bad ownership or
modes for file /home/name/.ssh/authorized_keys

Most likely, the problem is too many permissions.

By default, the Solaris OS doesn't allow ssh as root. Edit /etc/ssh/sshd_config and change the PermitRootLogin directive. Restart sshd for these changes to take effect.

Also on the Solaris OS, make sure that you use the file ~/.ssh/authorized_keys, without the two suffixes. The Solaris OS uses version 2 of ssh but without the version 2 naming convention.

A typical entry in ~/.ssh/authorized_keys(2) looks like this:

ssh-dss FGKJTJUVFMAAACBAOk6t1czfh7nV9sb0syK1CebJ/6nwLb9OPLr0LcqcE1J8GYbePDVfg\
SS9VV1wDloE1fwkJSjtSLbdeJSliu3liu43uztu4u34zutNMI7== name@email.com

Line broken at the '\' for readability.

If you can't connect to a remote server using a particular user name on that server, check that the appropriate key is in your authorized_keys(2) file, and that the remote server name, encryption method, and user name exist.

Use ssh -v, scp -v or sftp -v to display verbose output and analyze any other problems that you might come across.

This guide is from : http://www.sun.com/bigadmin/content/submitted/ssh_setting.html

Saturday, August 22, 2009

Howto: Install Skype (dynamic) on Fedora 10 64-bit

Found the solution at here : http://forums.fedoraforum.org/showthread.php?p=1185767

Howto: Install Skype (dynamic) on Fedora 10 64-bit
I downloaded and installed Skype on Fedora 10, 64-bit, and it came up just fine.

I recommend the dynamic version, since it makes use of the existing system libraries that are managed by Fedora. This will minimize any potential library conflicts.

All that is needed is to make sure you have all the 32-bit versions of the libraries Skype requires.

Using the "ldd" command, I analyzed the library requirements of the "skype" program. So that you don't also have to do this, I crunched the results into a giant yum command.

Become root (enter root's password when prompted):



Now that you are root, cut and paste this, all on one line:


yum install alsa-lib.i386 dbus-libs.i386 e2fsprogs-libs.i386 expat.i386 fontconfig.i386 freetype.i386 glib2.i386 glibc.i686 keyutils-libs.i386 krb5-libs.i386 libcap.i386 libgcc.i386 libICE.i386 libpng.i386 libselinux.i386 libSM.i386 libstdc++.i386 libX11.i386 libXau.i386 libxcb.i386 libXcursor.i386 libXdmcp.i386 libXext.i386 libXfixes.i386 libXi.i386 libXinerama.i386 libXrandr.i386 libXrender.i386 libXScrnSaver.i386 libXv.i386 openssl.i386 qt.i386 qt-x11.i386 zlib.i386


The yum command should be all on a single line!

Scroll all the way to the right, if you have to, in order to cut and paste the entire line all at once.

Please ignore the little ":" mark I put at the bottom. I had to do that, in order to work around a forum bug that was making it difficult to cut and paste a very long single line.

Every library is "i386" version, except for glibc, which strangely is "i686".

Answer "yes" to any questions the yum command asks you for, if prompted.

Assuming it works, close that terminal window. You don't need to be root anymore:



Now, you can install the dynamic version of Skype, and it should work. Go here:


Choose "Dynamic", near the lower left of the box in the middle of the page.

You will download this file:


Now, open up a new terminal window, and "cd" into the directory that you downloaded Skype into, and extract and run Skype.

I'm assuming it's your Desktop. If you downloaded the file somewhere else, change these instructions accordingly.

Here's commands to run, as a normal user (be sure you have closed your old root window first, you don't need to be root anymore, and in fact it will cause problems if you try to run Skype as root):


cd ~/Desktop
tar -jxvf skype-
cd skype-

The Skype program should come right up, since you now have all the libraries.

Log in. Skype should now be up and running.

In the main Skype window, hit the "S" in the lower left corner to bring up the menu, then choose Options.

Skype sound device setting:

In Skype, go to Sound Devices. I recommend setting your sound devices to something that contains "plughw:default,0" in its name. Do this for all 3 choices: sound in, sound out, and ringing. Choose the name of your device that best matches the hardware you want to use. Definitely avoid generic single-word names like "default", "hdmi", "pulse", and so on.

Make sure the "Make a test sound" button works. If you can't hear anything, your sound device might have began muted, we fix that next.

Fedora volume control setting:

In the main GNOME desktop menu (upper left area of your screen), open System/Preferences/Hardware/Volume Control. Choose the name of your hardware that matches what you chose in Skype, with "(Alsa mixer)" at the end of it. Avoid choosing anything that has the name "(OSS mixer)" or "(PulseAudio mixer)" in it!

The volume control window appears. Click on Playback. Crank volume to 100%. If there's an "X" in the speaker icon just below the volume control, click on it, to unmute the sound. Now click on Recording. Crank volume to 100%. If there's an "X" in the speaker icon or the microphone icon just below the volume control, again, click on them to unmute the sound. There should be no "X" anywhere, in either playback or recording.

Now, Skype "Test Sound" should work. If it's too loud, adjust volume to your preferences.

Skype video settings:

In Skype, go to Video Devices. Try selecting your webcam from the list, and hit Test. It worked for me the first time! Fedora has really improved their webcam support in this latest release. Almost every known webcam should work now.

Now, you're ready to make a call. Call "echo123" first, to make sure your sound works. Call your friends, to make sure your video works

Running Skype easier, as a clickable desktop icon:

I'll leave this for somebody else to fill in. One thing that's important, you must "cd" to the directory where Skype was installed to! If you aren't in that directory when you run Skype, then Skype won't be able to access any of its built-in resources, so things like ringtones and other sound effects won't work.

Running Skype at startup, automatically:

Again, I'll leave this for somebody else to fill in. I never did get the hang of running things at startup under GNOME....


Friday, August 7, 2009

Bash and VIM issue with SFU

After BASH is running , I am facing issue with the key at BASH and VIM and facing delay when trying to launch VIM.

I found this http://www.suacommunity.com/forum/tm.aspx?m=7935.

1. Fix delete, home and end in bash

# Delete
"\e[3~": delete-char

# Home
"\e[1~": beginning-of-line

# End
"\e[4~": end-of-line

2. Fix home and end in vim

To get "^[[1~" you need to press , to get "^[[4~" you need to press .

map ^[[1~ 0
! ^[[1~ ^[0i

^[[4~ $
! ^[[4~ ^[$a

3. Fix backspace and delete in vim

To get "^?" you need to press . The "I" at the end of shortmess disables the startup blurb.

:set t_kb=^?
:set shortmess=filnxtToOI

4. Alias vi and vim

The -X stops vim wasting 10 seconds trying to connect to a non-existant X server.

Appended to /etc/profile.lcl
alias vim="vim -X"
alias vi="vim -X"

Hope this will help to solve your problem.


Bash Crash in Windows Services for UNIX enviroment

After install Windows Services for UNIX and install BASH by using the package from http://www.suacommunity.com/Default.htm, whenever I launch BASH directly or launch it after entering C shell , I will received an error saying that segmentation fault (core dumped).

At first , I install KB942312 hotfix as suggested from this page http://www.interix.com/tools/printable.aspx?m=14618 . The error still occur. According to the page , this KB942312 hotfix will allow BASH to run even with DEP active. So I would say this hotfix is a must in order to resolve this issue.

Then I keep browsing until I come to this page : http://www.suacommunity.com/forum/tm.aspx?m=16510&mpage=1#16540 . They suggest to install KB929141 hotfix. After I did that, the BASH is running.

If you keep reading further, one of them say instead of installing
KB929141, we should install KB953191 because KB953191 is the newer version of KB929141. But since my BASH is running now, I would rather keep it until I face another problem.

In short, first install
KB942312 then KB953191, if not working then only apply KB929141. Hope this note will be able to help you, if you are facing the same problem as me.


Retrieve Windows Hotfix without need to contact Support.

When you come across this:
If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, submit a request to Microsoft Customer Service and Support to obtain the hotfix.
You can request windows hotfix without need to contact windows support.

Copy the URL below, paste it into your browser URL , then replace XXXXXX with the kb number and hit enter to visit the page. Fill in you email and the requested hotfix will be sending to the mailbox no more than 5 mins if the connection is good.


For example:

This http://support.microsoft.com/kb/929141 will need us to contact Microsoft Customer service and Support in order to obtain the hotfix.

All I need to do is visit the following URL , fill in my email address and submit. After 5 mins , I will be able to receive a link to download the file and a password to extract the package.


I would say Microsoft Customer service and Support is helpful , just some time I would rather deal with machine instead of human. If you think the same way like me, you can try this method.


Wednesday, July 8, 2009

To Check your own web browser user agent header.

You can visit this web site if you would like to know your current web browser user agent header.


For example, my current web browser user agent header is :

Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv: Gecko/2009061118 Fedora/3.0.11-1.fc10 Firefox/3.0.11

If you like to find out more user agent , you can visit this : http://www.user-agents.org/index.shtml.


Tuesday, July 7, 2009

Install Fedora 11 with vmware workstation, boot issue

When you are installing Fedora 11 using Vmware workstation, you might facing an issue, that the system keep trying all SCSI device before boot into the system.

Add a line scsi0.virtualDev = "lsilogic" to the vmx file. Use it carefully, because when you start up the vmware image, it will erase all the data on the virtual disk.

If you would like to change back to BUS logic, change to scsi0.virtualDev = "buslogic".


Thursday, May 21, 2009

Using the cat Command To Hide Files Inside Other Files

I found this from : http://filthypants.blogspot.com/2008/01/using-cat-command-to-hide-files-inside.html

Using the cat Command To Hide Files Inside Other Files

cat is a standard command from Unix operating systems, such as BSD and Mac OS X, and Unix-like operating systems, such as Linux, that can be used to concatenate and display files. In this tutorial, I'm going to teach you how to hide any file inside any other file using cat, such that no one will every know the hidden file is there. This obviously has a number of uses, including providing another layer of protection for sensitive information such as bank numbers, personal information, etc.

WARNING: this is an advanced trick that requires the use of the command line. If you are scared of using the command line, don't bother continuing.

Ok, now that that's out of the way, pick a file you want to hide and another file you want to hide it in and place both files on your desktop. In my case, I'm going to hide an archive
inside a picture

Next, open a terminal. For Mac users, go to Applications => Utilities => Terminal.app; for Linux users, you'll have to find out where your particular distro puts it. Switch to your desktop:
cd Desktop

Now, we're going to perform the cat command:
cat archive.rar >> 1.jpg

Now my archive file is concatenated to the end of the picture file. If I double-click on the picture file, it will open in my picture-viewing program without any indication that it is abnormal in any way. However, as you can see from these before/after pics:

the picture's file size is now much larger, thanks to it having the archive attached. Anytime you want to access your hidden file, just rename your file to the hidden file's extension and open as normal:

Note: If you plan on hiding anything really important in a file using this method, I also suggest using some sort of encryption, in case someone actually finds it. This obfuscation just adds another layer of protection for your information.


Wednesday, April 15, 2009

ASR Backup with USB Hard Drives

I found an article about ntbackup ASR.


Well what do you do when you need to resize partitions or change perhaps from a volume to RAID status or rebuild a RAID array? How do you get that SBS box up and running again? Many use some great disk cloning or imaging solutions out there. I've heard great things about Aconis True Image Server or Paragon Drive Backup.

In the past I've used products like this with great success. However now Windows Server 2003 and thus SBS 2003 come with some great backup items out of the box to get you going again. And perhaps you don't want to pay the $899 and $399 respectively for the products above.

How about using the ASR backup with ntbackup included with SBS? Microsoft has an SBS backup/restore whitepaper out there but it doesn't mention ASR. It's more from the standpoint of what if the server croaked. Well in this situation we're preparing for a change. The reason that the ASR backup is nice and I like it is that you don't have to entirely load SBS/Windows Server and then do a restore. The ASR restore process just loads what it needs. However that's where some problems may present themselves.

Doing an ASR backup of course is easy from the console of ntbackup where you just choose the ASR Wizard from the backup tab selection. It prompts for a diskette to store the partition info, etc after your backup runs and now you're set. However a couple of things to keep in mind:
1. The ASR just does the system partition and not your data. So make sure and get that backup ready to go for your data (or perhaps a D: or E: drive if you're so inclined.)
2. Are you backing up to USB drives? As HDD get cheaper this is getting to be a preferred method of backup for many. We do it you might too. However ASR will not see your backup on the USB Drive. What can you do? Well after the ASR restore (insert SBS CD1 and choose F2 after reboot when prompted on boot up for the ASR restore) character installation is done and it boots into Windows Server 2003 with the familiar setup process, you can actually stop the installation here and turn off your server. Everything will still be there and once you boot from the HDD again it will start the ASR restore again. However put in your favorite boot CD. I use Bart PE and boot from that. Now you'll see all your formatted drives ready to roll along with your USB drives. Now just copy the ASR backup from the external USB Drive to the data partition on your server. Restart the machine and boot from the HDD to get the ASR restore rolling again. Now when ASR complains that it can't see the ASR backup file just manually run the ASR wizard (it'll let you) and choose the file from the Data partition. Now you're good to go!

Remember that imaging software is NOT supported by Microsoft. So if you use the products mentioned above and your server dies you can just install SBS again and restore because a call to Microsoft will get you no where.

Hey you're a small business and you have to choose which is right for you. At times spending $899 is not a problem and the wisest thing to do, some months however the budget won't allow for it! :) The above is an alternative however if you choose to accept it.


Original Article fromThe TAZ Blog . or this URL to the original article: http://www.taznetworks.com/rss/2005/11/asr-backup-with-usb-hard-drives.html


Thursday, March 26, 2009

How to Create Checksums for ALL Files and Sub-folders etc?

find -type f -exec md5sum "{}" \; > checksum.txt

Where checksum.txt is your file.
You can do some sedding/perling/awking/even bashing to get it into FreeMD5Checker format.

I found this solution from here:



How to extract Icons from Windows executeables in Linux

From this page : http://jamesmcdonald.id.au/gnu-linux/how-to-extract-icons-from-windows-executeables-in-linux, I found a way to extract icon from the windows executable.

Install the icoutils package and using wrestool command.
wrestool -l eXeSMS.exe

You will see heaps of output but look for the line that identifies the icon

--type=14 --name='MAINICON' --language=3081 [type=group_icon offset=0x15d6d8 size=20]

Once you have identified your icon you need extract it to a file

wrestool -x -n MAINICON eXeSMS.exe > myicon.ico


Wednesday, March 18, 2009

Exchange 2003 and Backup Exec 11d

Two Links you can't if you having problem restoring exchange database using Recovery Storage Groups and Backup Exec 11d.



Inside these two links, these are the two registry key that you should look into:

If you do not want to restore data to the Recovery Storage Group and you do not want to delete the Recovery Storage Group, create the Recovery SG Override value in the following registry key, and then set the value to 1:
HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \MSExchangeIS \ParametersSystem

To create and configure the Recovery SG Override registry value:

1. Click Start, and then click Run.
2. In the Open box, type regedit, and then click OK.
3. Locate and then click the following registry key:
HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \MSExchangeIS \ParametersSystem
4. On the Edit menu, point to New, and then click DWORD Value.
5. Type Recovery SG Override, and then press ENTER.
6. On the Edit menu, click Modify
7. In the Value data box, type 1, and then click OK.
8. Quit Registry Editor.

Important Make sure that you delete the Recovery SG Override registry value when you no longer require it.

[HKEY_LOCAL_MACHINE\SOFTWARE\Symantec\Backup Exec For Windows\Backup Exec\Engine\ESE]

"Ignore Mount State"=dword:00000001