Offering low cost PC and Mac repair in Ashland, Oregon.

Apr 21, 2008

Great Network Monitor and Mapping Tool

Someone sent this across a list at work and it was recommended by many people. I'll have to check it out when I get a chance.

New Bigger and Better Eee Pc coming soon...

ASUS Showcases Expanded Eee PC Family of PCs at CeBIT 2008

And to think I almost bought one of the current ones. I guess no matter how you go about it there will be an upgrade right around the corner.
Expanding the Eee PC Family
ASUS has made several innovative improvements with the next generation of the
Eee PC – dubbed the Eee PC 900. These new technologies will bring about a brand
new concept for Internet access with 1G of memory, larger storage of up to 12GB, and wider 8.9-inch screens. These new Eee PCs will cost 399 Euro each, and will be available in summer this year – to select countries on the first wave of launch. All of these new models will be Windows ready, and will provide users with a chance to enjoy a brand new PC experience while on the go.
As long as there are plenty of expansion slots I don't care so much about the storage. It's the larger screen that makes this one more appealing.

Apr 15, 2008

New Malware Threat Center

The non-profit group SRI has opened a Malware Threat Center that will track the most aggressive malware attacks. It looks to be a great service. I'll be sure to check back for other resources and possible news feeds.

Apr 11, 2008

Latest Microsoft exploit seen in the wild

Symantec Threatcon Level 2

Published: 2008-04-10,
Last Updated: 2008-04-11 14:01:03 UTC
by Deborah Hale (Version: 1)

It appears that Symantec has raised the Threatcon to Level 2 this afternoon.

It seems that their honeypots have sniffed out "In-the-Wild Exploit attempts" targeting the vulnerability identified in MS08-021 which allows remote code execution in GDI if a user opens a specially crafted EMF or WMF image file. Microsoft announced this in their latest super Tuesday release.

If you haven't already patched do so now and don't forget to remind your users not to open image files.

Apr 9, 2008

Patch your Adobe Flash Players

Adobe Flash Player Vulnerabilities

added April 9, 2008 at 07:34 am | updated April 9, 2008 at 10:36 am

Adobe has released Flash Player to address multiple vulnerabilities. These vulnerabilities may allow a remote attacker to execute arbitrary code or conduct cross-site scripting attacks.

More information about these vulnerabilities can be found in Technical Cyber Security Alert TA08-100A.

US-CERT encourages users to review Adobe Security Bulletin APSB08-11 and upgrade to Flash Player to help mitigate the risks.

Apr 7, 2008

Ubuntu 7.04 Feisty Fawn on USB

Reposted here on Blogger from my old Drupal install.

With just a little help I managed to get the latest Ubuntu running on a new 2GB USB stick. I must say I am impressed. I had a few setbacks but the whole thing only takes a few minutes so starting over isn't that big of an issue.

First thing is this tutorial. It works flawlessly for most of the work. I even cut and pasted a lot the commands. As noted the default Feisty Fawn ISO does not support persistent mode so I had to hunt down a patched ISO for the build part.

I used an old Dapper Dan live CD for my system to work from. It recognized all my hardware (Dell Optiplex 745 Core DUO) and the commands from the tutorial are identical (you will have to apt-get lilo, syslinux, and mtools).

This is the patched image for the build due to the problems with the default Feisty Fawn. I put this ISO on a spare 1GB USB stick since it doesn't fit on a CDR. I mounted this ISO as the "ubuntuCD" referred to in the tutorial.

The only trouble I had after building the USB image was with my laptop. I have a Dell Latitude D810 and for some reason I was getting "missing operating system" when attempting to boot from the USB drive. It worked fine on the Optiplex but not in the laptop. I reviewed the tutorial and decided to run the lilo command (lilo -M /dev/sdb) on the drive. After that it worked perfectly.

I can't say how impressed I am with the 7.04 build of Ubuntu. It works wonderfully on my laptop. It found all my devices and looks beautiful. I just joined my wireless network and I was up and running.

One thing I have figured out. The update component of Ubuntu will destroy the custom USB install. You will have to update the ISO and build it into the 1st partition of the install if you want updates. The good news is that if you do hose your entire USB install you just have to rebuild the 2nd partition. The first partition acts as a LiveCD and allows you to "fix" any problems you might have with the custom side of things.

Apr 3, 2008

Bits vs. Bytes

This document is intended for novice use.

A bit is the smallest unit of information that can be stored or manipulated on a computer; it consists of either zero or one. Depending on meaning, implication, or even style it could instead be described as false/true, off/on, no/yes, and so on. We can also call a bit a binary digit, especially when working with the 0 or 1 values.

A bit is not just the smallest unit of information, but for sake of discussion it can be said that a bit is also the largest unit of information a computer can manipulate. The bits are bunched together so the computer uses several bits at the same time, such as for calculating numbers. When a "bunch" means eight bits then it is called a byte.

A byte also happens to be how many bits are needed to represent letters of the alphabet and other characters. For example, the letter "A" would be 01000001; my initials "KJW" would be 010011000100110101010110. To make this a little bit easier to see where the bytes are it is customary place a comma every four digits, to make what are sometimes called nibbles: 0100,1100,0100,1101,0101,0110. That's not really much easier for people to read or write--and many computer engineers, programmers, and analysts need to read and write even longer binary codes than this.

It so happens that there are only 16 different ways to write 0's and 1's four times. So something called hexademical code can be used to make the numbers shorter by translating each nibble (or half-a-byte) like this:

Binary: 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Hexademical: 0 1 2 3 4 5 6 7 8 9 A B C D E F

So my initials would look like this:

(or bytes)
(or nibbles)
0100 1100 0100 1101 0101 0110
(also nibbles)
4 B 4 C 5 7

So of course "4B4C57" is much easier to understand than "010011000100110101010110". To make it even a little bit easier to use commas are usually put in every 4th hexademical character just like was done for the binary digits. That would make my initials look like "4B,4C57". A group of 4 hexademical characters -- which would be 16 bits long -- is called a halfword.

Copyright © 1999 Kevin J. Walsh /KJW

Emacs Reference Card

Leaving Emacs

suspend Emacs (or iconify it under X)              C-z
exit Emacs permanently C-x C-c


read a file into Emacs                             C-x C-f
save a file back to disk C-x C-s
save all files C-x s
insert contents of another file into this buffer C-x i
replace this file with the file you really want C-x C-v
write buffer to a specified file C-x C-w

Getting Help

The Help system is simple. Type C-h and follow the directions. If you are a first-time user, type C-h t for a tutorial.
remove Help window                                 C-x 1
scroll Help window ESC C-v

apropos: show commands matching a string C-h a
show the function a key runs C-h c
describe a function C-h f
get mode-specific information C-h m

Error Recovery

abort partially typed or executing command         C-g
recover a file lost by a system crash M-x recover-file
undo an unwanted change C-x u or C-`
restore a buffer to its original contents M-x revert-buffer
redraw garbaged screen C-l

Incremental Search

search forward                                     C-s
search backward C-r
regular expression search C-M-s
reverse regular expression search C-M-r

select previous search string M-p
select next later search string M-n
exit incremental search RET
undo effect of last character DEL
abort current search C-g
Use C-s or C-r again to repeat the search in either direction. If Emacs is still searching, C-g cancels only the part not done.


entity to move over                        backward      forward

character C-b C-f
word M-b M-f
line C-p C-n
go to line beginning (or end) C-a C-e
sentence M-a M-e
paragraph M-- M-"
page C-x [ C-x ]
sexp C-M-b C-M-f
function C-M-a C-M-e
go to buffer beginning (or end) M-<>

scroll to next screen C-v
scroll to previous screen M-v
scroll left C-x <>
scroll current line to center of screen C-u C-l

Killing and Deleting

entity to kill                             backward      forward
character (delete, not kill) DEL C-d
word M-DEL M-d
line (to end of) M-0 C-k C-k
sentence C-x DEL M-k
sexp M-- C-M-k C-M-k

kill region C-w
copy region to kill ring M-w
kill through next occurrence of char M-z char

yank back last thing killed C-y
replace last yank with previous kill M-y


set mark here                                      C-@ or C-SPC
exchange point and mark C-x C-x

set mark arg words away M-@
mark paragraph M-h
mark page C-x C-p
mark sexp C-M-@
mark function C-M-h
mark entire buffer C-x h

Query Replace

interactively replace a text string                M-%
using regular expressions M-x query-replace-regexp
Valid responses in query-replace mode are:
replace this one, go on to next                    SPC
replace this one, don't move ,
skip to next without replacing DEL
replace all remaining matches !
back up to the previous match ^
exit query-replace ESC
enter recursive edit (C-M-c to exit) C-r

Multiple Windows

delete all other windows                           C-x 1
delete this window C-x 0
split window in two vertically C-x 2

split window in two horizontally C-x 3

scroll other window C-M-v
switch cursor to another window C-x o

shrink window shorter M-x shrink-window
grow window taller C-x ^
shrink window narrower C-x -
grow window wider C-x "

select buffer in other window C-x 4 b
display buffer in other window C-x 4 C-o
find file in other window C-x 4 f
find file read-only in other window C-x 4 r
run Dired in other window C-x 4 d
find tag in other window C-x 4 .


indent current line (mode-dependent)               TAB
indent region (mode-dependent) C-M-"
indent sexp (mode-dependent) C-M-q
indent region rigidly arg columns C-x TAB

insert newline after point C-o
move rest of line vertically down C-M-o
delete blank lines around point C-x C-o
join line with previous (with arg, next) M-^
delete all white space around point M-"
put exactly one space at point M-SPC

fill paragraph M-q
set fill column C-x f
set prefix each line starts with C-x .

Case Change

uppercase word                                     M-u
lowercase word M-l
capitalize word M-c

uppercase region C-x C-u
lowercase region C-x C-l
capitalize region M-x capitalize-region

The Minibuffer

The following keys are defined in the minibuffer:
complete as much as possible                       TAB
complete up to one word SPC
complete and execute RET
show possible completions ?
fetch previous minibuffer input M-p
fetch next later minibuffer input M-n
regexp search backward through history M-r
regexp search forward through history M-s
abort command C-g
Type C-x ESC ESC to edit and repeat the last command that used the minibuffer. The following keys are then defined:
previous minibuffer command                        M-p
next minibuffer command M-n


select another buffer                              C-x b
list all buffers C-x C-b
kill a buffer C-x k


transpose characters                               C-t
transpose words M-t
transpose lines C-x C-t
transpose sexps C-M-t

Spelling Check

check spelling of current word                     M-$
check spelling of all words in region M-x ispell-region
check spelling of entire buffer M-x ispell-buffer


find a tag (a definition)                          M-.
find next occurrence of tag C-u M-.
specify a new tags file M-x visit-tags-table

regexp search on all files in tags table M-x tags-search
run query-replace on all the files M-x tags-query-replace
continue last tags search or query-replace M-,


execute a shell command                            M-!
run a shell command on the region M-_
filter region through a shell command C-u M-_
start a shell in window *shell* M-x shell


copy rectangle to register                         C-x r r
kill rectangle C-x r k
yank rectangle C-x r y
open rectangle, shifting text right C-x r o
blank out rectangle M-x clear-rectangle
prefix each line with a string M-x string-rectangle


add global abbrev                                  C-x a g
add mode-local abbrev C-x a l
add global expansion for this abbrev C-x a i g
add mode-local expansion for this abbrev C-x a i l
explicitly expand abbrev C-x a e

expand previous word dynamically M-/

Regular Expressions

any single character except a newline              .   (dot)

zero or more repeats *
one or more repeats +
zero or one repeat ?
any character in the set [ : : :]
any character not in the set [^ : : :]
beginning of line ^
end of line $
quote a special character c "c
alternative ("or") "_
grouping "( : : :")
nth group "n
beginning of buffer "`
end of buffer "'
word break "b
not beginning or end of word "B
beginning of word "<>
any word-syntax character "w
any non-word-syntax character "W
character with syntax c "sc
character with syntax not c "Sc


save region in register                            C-x r s
insert register contents into buffer C-x r i

save value of point in register C-x r SPC
jump to point saved in register C-x r j


enter the Info documentation reader                C-h i
Moving within a node:
   scroll forward                                  SPC
scroll reverse DEL
beginning of node . (dot)
Moving between nodes:
   next node                                       n
previous node p
move up u
select menu item by name m
select nth menu item by number (1-5) n
follow cross reference (return with l) f
return to last node you saw l
return to directory node d
go to any node by name g
   run Info tutorial                               h
list Info commands ?
quit Info q
search nodes for regexp s

Keyboard Macros

start defining a keyboard macro                    C-x (

end keyboard macro definition C-x )
execute last-defined keyboard macro C-x e
append to last keyboard macro C-u C-x (
name last keyboard macro M-x name-last-kbd-macro
insert Lisp definition in buffer M-x insert-kbd-macro

Commands Dealing with Emacs Lisp

eval sexp before point                             C-x C-e
eval current defun C-M-x
eval region M-x eval-region
eval entire buffer M-x eval-current-buffer
read and eval minibuffer M-ESC
re-execute last minibuffer command C-x ESC ESC
read and eval Emacs Lisp file M-x load-file
load from standard system directory M-x load-library

Simple Customization

Here are some examples of binding global keys in Emacs Lisp. Note that you cannot say ""M-#"; you must say ""e#".
(global-set-key ""C-cg" 'goto-line)
(global-set-key ""C-x"C-k" 'kill-region)
(global-set-key ""e#" 'query-replace-regexp)
An example of setting a variable in Emacs Lisp:
(setq backup-by-copying-when-linked t)

Writing Commands

(defun command-name  (args)
(interactive "template")
An example:
(defun this-line-to-top-of-window (line)
"Reposition line point is on to top of window.
With ARG, put point on line ARG.
Negative counts from bottom."
(interactive "P")
(recenter (if (null line)
(prefix-numeric-value line))))
The argument to interactive is a string specifying how to get the arguments when the function is called interactively. Type C-h f interactive for more information.

Copyright c 1993 Free Software Foundation, Inc.
designed by Stephen Gildea, May 1993 v2.0
for GNU Emacs version 19 on Unix systems
Permission is granted to make and distribute copies of this card provided the copyright notice and this permission notice are preserved on all copies.
For copies of the GNU Emacs manual, write to the Free Software Foundation, Inc., 675 Massachusetts Ave, Cambridge MA 02139.

Apr 1, 2008

JiggletheCable Purchased by LPGroup

The LPGroup, a small independent research and development Think Tank based in Lawrence, KS, has purchased for an undisclosed amount. It is unclear what the plans are for the service and no announcement has been made. We will continue to update this story throughout the day.