Tag Archives: how to

Remove “Test Mode” from Vista

Vista may display the words “Test Mode” in the four corners of the screen if you install a driver that’s not signed correctly. I was able to remove the words from the screen by following instructions that I found here.

  1. Push the Windows key. This will open the program search bar.
  2. Type

    This is the name of the command-line prompt.

  3. Type CTRL+SHIFT+Enter. This will run the command line prompt with elevated (administrator) privileges. Elevated privileges are required to make the change.
  4. Vista will prompt you to continue.
  5. Type
    bcdedit.exe /set testsigning off

    and press return.

  6. You should see the words The operation completed successfully.
  7. Reboot Vista.

What Does This Do?

The BCDEdit program edits boot configuration data. The TESTSIGNING option controls how Vista handles test-signed kernel-mode drivers. More information on BCDEdit can be found at the BCDEdit FAQ.


It’s possible that this does something nasty. I have not noticed any ill effects to date.

Running Scripts in PowerShell

These are the steps that I had to take in order to create and run scripts in PowerShell. First things first… privileges.

No Scripts Allowed

PowerShell will not allow you to create scripts and run them by default. If you attempt to do so, you will probably receive the following error message:

File C:\Users\foo\bar.ps1 cannot be loaded because the execution of scripts is disabled on this system. Please see “get-help about_signing” for more details.

If you run the Get-ExecutionPolicy cmdlet, the default policy is Restricted. This means a blanket prohibition on scripts. The possible Get-ExecutionPolicy values are:

Policy Meaning
Restricted Scripts are prohibited
Default Normally corresponds to Restricted
AllSigned Only scripts with valid digital signatures may be executed.
RemoteSigned Local scripts may be run. Scripts from the Internet or other “public” place must bear valid digital signatures.
Unrestricted Any and all scripts can be executed.

Setting the Required Privileges

For typical software engineer and power user work, the RemoteSigned setting is appropriate. This will allow you to create, modify, and execute your own scripts while retaining the Internet barrier.

To change the permissions,

  1. Run PowerShell with administrator privileges. The execution policy cannot be altered as a normal user.
  2. Run the command Set-ExecutionPolicy RemoteSigned

PowerShell will now allow you to run local scripts that you create.

File Extension

DOS batch files have the extension bat. The default file extension for PowerShell scripts is ps1.


PowerShell looks like Unix here. Unless the script is in the Path environment variable — and assuming the script is in your current directory — you will need to mimic the Unix dot-slash notation (using the backslash, of course).

For example, given the script call bar.ps1 in your current directory, if you attempt to run the script directly, you’ll get an error as follows.

PS C:\Users\foo> bar.ps1
The term 'bar.ps1' is not recognized as a cmdlet, function, operable program,
or script file. Verify the term and try again.
At line:1 char:5
+ bar.ps1 <<<< 

Instead you'll have to put .\ in front of the script.

PS C:\Users\foo> .\bar.ps1
Hello, World!

If you do store the script in the directory search path, you will only need to type the file name (without the ps1 extension). This behaviour is similar to batch files.

PS C:\Users\foo> bar
Hello, World!

In-Process Execution

Also identical to the Unix shell, PowerShell spawns a new process in which to execute the script. If, for example, the script makes changes to an environment variable, that change will be lost when the script terminates.

To execute the script in the current process context, use the dot-space notation:

PS C:\Users\foo> . .\bar.ps1
Hello, World!

Linux HP Printer Support

Hewlett-Packard does not provide Linux drivers in the box, but they do have a snazzy driver installer called HP Linux Imaging and Printing (HPLIP). On HP’s web site they say,

Hewlett-Packard develops HP Linux Imaging & Printing (HPLIP) software that includes a driver, a driver installer, and a toolbox for setup and configuring HP printers and All-in-Ones. The software supplies support for over 1,500 HP products, and works with nearly any Linux distribution on the market today.

Hewlett-Packard currently does not distribute HPLIP in printer boxes, nor is there Linux information in the printer documentation. However, all major Linux distributions regularly integrate HPLIP into their software releases. The latest HPLIP software resides on Sourceforge.net

Sourceforge.net is the official Web site for Open Source project development. The Web site acts as a repository for Open Source code, and provides tools for facilitating and managing the interactive nature of public code development. Sourceforge.net also acts as the most common noncommercial distribution point for Open Source software.

The HP Linux Imaging and Printing web site walks you through choosing the correct installer, then gives you the opportunity to download it. I followed the supplied instructions, which was simply

sh hplip-3.9.8.run

The process worked flawlessly for me.

Do note that it states that SELinux must be disabled for the print drivers to work.


Today (5 February 2010) I tried installing this on a new CentOS 5.4 installation, and this no longer works. Fortunately Abbas already figured this out. His solution is here. The summary is that before installing the RPM, you need to remove two dependencies:

sudo rpm -ev --nodeps libsane-hpaio hpijs
sudo rpm -Uvh hplip-3.9.10_rhel-5.0.i386.rpm
sudo /sbin/reboot

After plugging in the printer to the USB port, I was able to add the new printer without a problem.

Thank you, Abbas!

How to Get a Ham Radio License

I got my license! In fact, I now have all three amateur radio licenses. I didn’t know where to start, so here’s my experience in case anybody finds it useful. (This information is valid for the United State of America. 日本で友人、すみません。)

When I first started looking for introductory information, I got a little frustrated because the “how to” information tended to speak over my head. I’m not the sharpest tool in the shed, so it’s probably just me. Here’s what I know from hindsight.

You Can Listen Without a License

To be able to listen to ham radio, nobody needs a license. Get a radio receiver that picks up the ham bands and have fun.

If you want to listen, there’s no point in getting a transmitter. It’s wasted money. If you did buy a transmitter, and started talking without a license, an official from the FCC, accompanied by a federal marshal with a gun, will knock on your door. Don’t think they can’t find you. Every transmission shouts, “Here I am!” Direction finding and triangulation are basic skills that many ham operators are very good at. Don’t do it. (No, I didn’t do that!)

Overview of the Process

Unless you’re hard up for fines or jail time, talking on the amateur frequencies requires permission from the federal government. This involves getting a license from the Federal Communications Commission, better known as the FCC. What may seem curious is that the FCC grants licenses, but that’s about all. You do not go through the FCC to get study materials, take exams, etc.

Amateur radio operators have proven themselves professional and passionate about radio. They truly are the experts and have no need to be micromanaged by bureaucrats. The FCC certifies a small number of individuals as Volunteer Examination Coordinators (VECs). This body makes up the tests and the rules for taking the tests. They certify other ham operators as Volunteer Examiners (VEs), who work in teams of three or more. These teams take applications, administer and grade tests, and submit applications to the FCC for those who pass. This is handled privately without government intervention. There will be a modest fee to cover FCC fees and out of pocket expenses. (I paid $14.)

The VECs draft, maintain, and publish a pool of multiple-choice questions covering ten topics. Tests are created by drawing a total of 35 questions from this pool. To pass the test, you must answer 26 questions correctly. That’s it!

When you pass your test, you’ll receive a paper called a Certificate of Successful Completion of Examination (CSCE). The CSCE does not grant permission to transmit! It is simply proof that you are eligible for a license. You will have to wait for your paperwork to make its way through the FCC. When the FCC grants the license, it will publish your license on the Internet and send a paper copy of your license in the mail. You don’t have to wait for the paper license to arrive. As soon as you show up on their database (on the web site), you can start transmitting!

Test Knowledge vs. Practical Knowledge

You will need to study to the test to pass it. After you pass it, you’ll need to learn the ropes. In my mind these are two different things. I had to accept the fact that while the test covers basic knowledge of important concepts, being able to pass the test does not mean that you know anything about being a ham operator. This was uncomfortable for me at first, as I like to understand how things work. I had some expectation that being able to pass the test meant that I understood being a radio operator. My bad. 🙂

Study for the test, pass it, and see your license as proof you’re out of the cradle. You’ll learn to walk after the test.

What to Study

The basic amateur radio license is called the Technician Class. You’ll need to know this when you search the Internet.

Here are several resources for study materials.

  • The ARRL Ham Radio License Manual is a pretty good reference book. It’s not mandatory, but I found it a good introduction to ham radio, as well as some practical information beyond just getting your license. It contains a complete list of questions and answers in the back.
  • Once you understand the terminology, N8KBR’s Amateur Radio Technician Class License Study Guide is a free PDF file that contains the questions rewritten as answers. Print out these thirty pages, put them in a binder, and carry this with you if that’s your learning style. I found it a great way to review during the spare minutes during the day.
  • The most helpful resource is the practice exams. These will allow you to test yourself and know when you’re ready! When you can consistently score above 80%, preferably 90%, the test will be a breeze.

Finding VEs: Where to Take the Test

Google is your friend. Look for amateur radio clubs in your area. The VE team from whom I took my test is affiliated with the W5YI Group. They have a search page that you may find useful. (If you live in Utah, the Utah Amateur Radio Club has a schedule of exams here.)

The VE team from whom you take the test will tell you everything that you’ll need to bring.

Best of luck! I hope to talk to you on the airwaves.



Added link for where to get information about testing in Utah. Small edit for clarification.

Upgrading Zimbra 4.5.10 to 5.0.11

Zimbra Logo
Upgrading major pieces of core business support servers is fun! Note the heavy irony in “fun!”.

There are my running notes for upgrading a Zimbra 4.5.10 server to the latest Zimbra 5.0.11. When doing critical work like this, I keep running notes in case something doesn’t go right. Wish me luck.

Update: The upgrade went smoothly. Kudos to the Zimbra development team for what appeared to be a well thought-out and executed upgrade process.

  1. Downloaded Zimbra 5.0.11 and extracted it to /tmp
  2. Copied documentation to my workstation.
  3. Shut down Zimbra.
    # su - zimbra
    $ zmcontrol stop
  4. Take VMware snapshot
  5. Install libtool-ltdl
    # yum install libtool-ltdl
  6. Update all CentOS 5 packages. 久しぶり…。 (Been a while….)
    # yum update
  7. Reboot the server since the kernel was updated.
  8. Shut down Zimbra (again).
    # su - zimbra
    $ zmcontrol stop
  9. Take VMware snapshot
  10. cd to extracted Zimbra 5.0.11
  11. Run the installer
    # ./install.sh
  12. Accept default answer “yes” to verify the message store database
    Do you want to verify message store database integrity? [Y] 
    Verifying integrity of message store databases.  This may take a while.
    mysqld is alive
    Generating report
    No errors found

    Looks good.

  13. Accept default answer “yes” to upgrade.
    Checking for installable packages
    Found zimbra-core
    Found zimbra-ldap
    Found zimbra-logger
    Found zimbra-mta
    Found zimbra-snmp
    Found zimbra-store
    Found zimbra-apache
    Found zimbra-spell
    Found zimbra-proxy
    The Zimbra Collaboration Suite appears already to be installed.
    It can be upgraded with no effect on existing accounts,
    or the current installation can be completely removed prior
    to installation for a clean install.
    Do you wish to upgrade? [Y] 
  14. I’m asked whether to install zimbra-proxy.
    Install zimbra-proxy [N] 

    Googling to understand what this is.

  15. The Zimbra Proxy Guide states that this is a proxy, implying a multi-server configuration. In the Zimbra forums an employee states, “No, under no circumstances should you enable that feature if you have a single server.” Case closed. Stick with the default “no”.
  16. Now the installer is complaining about not running on an official RHEL5 machine.
    You appear to be installing packages on a platform different
    than the platform for which they were built.
    This platform is CentOS5
    Packages found: RHEL5
    This may or may not work.
    Installation can not continue without manual override.
    You can override this safety check with ./install.sh --platform-override
  17. Fine. Override.
    # ./install.sh --platform-override
  18. Accept default answer “yes” to verify the message store database
    Do you want to verify message store database integrity? [Y] 

    Same result as before. Looks good.

  19. Accept default answer “yes” to upgrade. Again.
    Do you wish to upgrade? [Y] 
  20. Accept default for “no” to zimbra-proxy.
    Install zimbra-proxy [N] 
  21. Type “Y” to ignore the non-RHEL5 complain.
    Install anyway? [N] Y
  22. Type “Y” to keep going.
    The system will be modified.  Continue? [N] Y
  23. It’s shutting down Zimbra.
  24. It’s removing existing packages.
  25. It’s removing “deployed webapp directories.
  26. It’s installing the new packages.
  27. It’s copying defaults
    Setting defaults from saved config in /opt/zimbra/.saveconfig/config.save
  28. It’s performing the upgrade.
    Upgrading from 4.5.10_GA_1575 to 5.0.11_GA_2695
  29. Zzzzz… progressing nicely but taking a while…
  30. Done. Answer with default.
    Notify Zimbra of your installation? [Yes] 
  31. OK. It’s not done. It’s still going.
  32. Done for certain.
    Configuration complete - press return to exit 
  33. Check status of server.
    # su - zimbra
    $ zmcontrol  status

    Everything is running.

  34. Try accessing the server via the web interface.
  35. Examined administrative account. All of the settings look right.
  36. Examined web user interface. All of the settings look right. I think we’re good to go.
  37. Take VMware snapshot. Just in case.