Category Archives: Operating Systems

Python pip – How to get around Fatal error in launcher: Unable to create process using ‘”‘

On some Windows machines pip has a problem caused by spaces in the Python installation path.
When you try:

Note: replace tweepy with the Python package you are trying to install. You will not receive the same output as in this example tweepy is already install via pip!

pip install tweepy

or any other package you get the following error returned:

Fatal error in launcher: Unable to create process using ‘”‘

The first thing you want to do is make sure you update pip:

python -m pip install -U pip

Now if you run:

python -m pip install tweepy

Your package should install.

If that fails, type python into your Windows command prompt to bring up the python command prompt. When you have the python command prompt displaying >>> type:

>>> import pip

Then when the python prompt returns >>> type:


This should workaround the issue an give you back the power of Python pip

Compiling a C Program from Visual C++ 2015 Command Prompt

For quick compiling of C/C++ programs on a Windows PC,  the Visual C++ 2015 Command Prompt is your go to program. Many programs have no need for development in an IDE.

Before you can compile a c/c++ program you will need to install the Microsoft Visual C++ Build Tools 2015.

Once installed you will have a new list of shortcuts in your Start Menu.

Visual C++ Build Tools Start Menu Shortcuts
Visual C++ Build Tools Start Menu Shortcuts

If you right click on any one of the Visual C++ 2015 Programs and choose Open File Location you will also see the extensive list of tools.

Visual C++ Build Tools Explorer Shortcuts
Visual C++ Build Tools Explorer Shortcuts

Depending on what system architecture you are running, open one of the programs. If in doubt select:
Visual C++ 2015 x86 Native Build Tools  Command Prompt
Visual C++ 2015 x64  x86 cross Build Tools  Command Prompt

The following window will appear:

Visual C++ 2015 Build Tools Command Prompt
Visual C++ 2015 Build Tools Command Prompt

To verify that the prompt is functioning property, type cl and the prompt will output the exact same information again.
Note: You can use the Visual C++ 2015 Build Tools Command Prompt the same way you would use the standard command prompt for directory navigation.

  1. To test a simple C program, first create a test directory to hold your test program. md c:\test to create a directory, and then enter cd c:\test to change to that directory. This is where your source files and executable will be stored.
  2. Type notepad test.c  When the  Notepad alert dialog  pops up, choose Yes to create the new test.c file in your current working directory.
  3. In Notepad, enter the following code and save as test.c:
#include <stdio.h>
int main()
printf("Hello World!\n");
getchar(); //used to prevent executable from closing when double clicked
return ;
  1. Now from the Visual C++ Build Tools Command Prompt type: cl test.c. If the program compiled successfully you will see: /out:test.exe and test.obj. In your test folder you will now have the test.c source file along with test.obj and test.exe
  2. To run your newly compiled program simply type test and your program will run in the command prompt. You can also double click the test.exe executable.

To compile a program with more than one source file simply type:

cl test.c test2.c test3.c

The compiler will output a single file called file test.c
To change the name of the output program, add an /out linker option:

cl test.c test2.c test3.c /link /out:mynewprogram.exe

test.c source file

How To Delegate Power Permissions In Windows XP

To grant the ability to change power management settings to limited users, edit the PowerCfg registry key.
This will set their power permissions similar to Power Users and allow limited users to adjust their own Power Options.

  1. Log in as Administrator
  2. Click Start then run
  3. In the run box type regedit
  4. In the registry editor search or drill down to:

HKLM\Software\Microsoft\Windows\CurrentVersion\Controls Folder\PowerCfg

  1. Right click on the PowerCfg folder anc click permissions
  2. Click the Advanced button to set special permissions
  3. Select Users under the Name column then click edit
  4. Set the permissions to look like the image
Windows XP Power Permissions
Windows XP Power Permissions
  1. Log Back in as limited user

Limited Users can now change their power options without bothering the Administrator.

With Windows XP past its end of life…it’s still going strong!

Estimates indicate Windows XP is still running on 160 – 250 million machines, around 14% of the world market share (6 % in the USA).

The reasons for running Windows XP are vast but most companies have hung on to Windows XP due to:

  • Application incompatibility with later versions of Windows.
  • The time involved in migrating thousands of XP machines.
  • The shear cost of such a migration.
  • Having to train employees and support staff on later versions of Windows.

Application compatibility is the one I witness most often. There is a large amount of custom enterprise software that will only run on Windows XP. Most software of this nature does not play well in Windows XP mode on Windows 7 and XP mode is not supported in later versions of Windows. Windows XP mode is basically a virtual machine running Windows XP inside another version of Windows. This can be accomplished on any version of Windows with any virtualization software. If a machine is currently running Windows XP its a waste of effort for System Administrator to setup a new PC with Windows 8 or 10 and then setup a virtual machine running Windows XP.

Most companies that fall into incompatibility area are utilities and other industrial companies. 75% of water utilities still have to run Windows XP.

Many manufacturing companies simply cannot afford the downtime of $100,000 to $1 million and hour. These companies need a Windows XP machine to run their production machines and their general view is that not being connected to an outside network, the security risk is minimal.

Kiosks and ATM machines make up another large portion of systems that run software that will only work on Windows XP machines. 95% of ATM machines run Windows XP and I would say that’s a fair estimate for kiosks as well

Even the United State’s Navy pays Microsoft $9 million (with a contract ceiling of $31 million) to continue to support Windows XP. The Navy is not the only branch of the armed forces or the United States Government to continue running Windows XP

Companies running Windows XP shouldn’t be a shock to any System Administrator, there are plenty of Government and financial institutions still running Windows 2000 and earlier Operating Systems. Windows 2003 Server is past it’s end and still commands 50% of Windows Servers in production.

At 14 years old, Windows XP continues to go strong. It is only #2, behind Windows 7 in world wide operating systems. Though unsupported and a huge security risk, I can see Windows XP living on for the next five to ten years.

Linux Command Line Quick Reference

Note: most commands will require the use of a proceeding su or sudo command to give you Super User privileges. Also referred to as substitute user or switch user.

System Information

date – Display current date and time.
cal – Display the current months calendar.
uptime – Display how long your system has been running.
w – Display who is currently online.
whoami – Display who you are logged in as.
finger user – Display information about the user
uname -a – Display Kernel information. (See Linux: How To Identify The Linux Kernel Version?)
cat /proc/cpuinfo – Display CPU Information.
cat /proc/meminfo – Display memory information.
man command – Display the manual page for a given command.
df -h – Display Disk Usage.
du – Display directory space usage.
free – Display memory and swap usage.
whereis appname – Display potential location of application.
which appname – Display which application will run by default.


ping host – Ping hostname or IP address and display results.
whois domain – Display whois record information for domain.
dig domain – Display DNS information for domain.
dig -x host – Display the reverse lookup of the host.
wget filename – Download a file via url.
wget -c filename – Continue downloading a stopped download.


ps – Display all current active processes.
top – Display all current running processes.
kill pid – Kill process with id pid.
killall proc – Kill all processes named proc (Be careful!).
bg – Display all stopped or background jobs.
fg – Bring the most recent job to the foreground.
fg  n – Bring job n to the foreground.

Software Installation

Install software from source. Change to directory (cd) containing source files and execute the following commands:

make install

Install Software Debian Package Manager:
su dpkg -i pkgname.deb

Install Software RedHat Package Manager:
su rpm -Uvh pkgname.rpm

Install Software Ubuntu apt:
sudo apt-get install pkgname

Working With Files

ls – Display directory listing.
ls -al – Display directory listing, formatted and show hidden files.
cd dir – Change directory to dir.
cd ~ – Change directory to the home directory.
pwd – Display the current present working directory.
mkdir dir – Create a new directory named dir.
rm filename – Delete file filename.
rm -r dir – Delete directory dir.
rm -f filename – Force delete of file filename.
rm -rf dir Force delete of directory dir.(Be Careful!).
cp file1 file2 – Copy file1 to file2.
cp -r dir1 dir2 – Copy dir1 to dir2 (create dir2 if non existent)
mv file1 file2 –  Move or rename file1 to file2.
ln -s file link – Create a symbolic link from link to file.
touch filename – Create file filename or update.
cat > file – Sends standard input to file.
more file – Display contents of file.
head file – Display first 10 lines of file.
tail file – Display last 10 lines of file.
tail -f file – Display contents of file as it gets bigger starting with last 10 lines.

Searching Files

grep pattern files – Search for a pattern in files.
grep -r pattern dir – Search recursively for a pattern in dir.
command | grep pattern – Search for a pattern in the output of a command.
locate file – Find all instances of file.

File Permissions

chmod octal file – Change the permissions of file to octal (user|group|world):

4 – read (r)
2 – write(w)
1 – execute(x)
chmod 777 file – Changes the permissions of file to read, write and execute for all users.
chmod 700 file – Changes the permissions of file to read, write and execute for user only.

File Compression

tar cf file.tar files – Create a tar named file.tar containing files.
tar xf file.tar – Extract the files from file.tar.
tar czf file.tar.gz files – Create a tar with Gzip compression.
tar xzf file.tar.gz – Extract a tar with Gzip.
tar cjf file.tar.bz2 – Create a tar with Bzip2 compression.
tar xjf file.tar.bz2 – Extract a tar with Bzip2.
gzip file – Compress file and rename to file.gz.
gzip -d file.gz – Decompress file.gz back into file.


ssh username@host – Connect to a host as a specific username.
ssh -p port username@host – Connect to a host on a specific port as a specific username.
ssh-copy-id username@host – Add your key to host for username to enable a passwordless login.

Terminal Shortcuts

Ctrl+C – Halts the current command.
Ctrl+Z – Stops the current command, resume with fg in the foreground or bg in the background.
Ctrl+D – Logout of current session.
Ctrl+W – Erases one word in the current line.
Ctrl+U – Erases the whole line.
Ctrl+R – Type to bring up a recent command.
!! – Repeats the last command.
UpArrow – Cycles through all commands previously used in current session.
exit – Log out of current session.

How to install unsigned drivers in Windows 8.1

Microsoft did not implement Driver Signature Enforcement to annoy you. They did is to protect you from installing malicious software. This makes it a little more difficult for Rootkits to be installed on your PC. Be sure you know what you are installing!

The following steps will only last until you reboot your PC.

  1. Open Settings by clicking on your Start Screen or hitting the Windows key on your keyboard. Hover your mouse at the bottom right of the start screen until the sidebar appears. Click Settings.
  2. On the settings screen, click on Update and Recovery.
  3. On the Update and Recovery screen click Recovery.
  4. Click Restart Now under Advanced Startup.
    (Your PC will Restart into Advanced Boot Mode for this session only)
  5. Choose Troubleshoot from the Advanced Boot menu.
  6. Choose Advanced Options from the Troubleshoot menu.
  7. Choose Startup Settings from the Advanced Options Menu.
  8. Click Restart on the Startup Settings page.
    (Your PC will Restart with Advanced Startup Settings)
  9. From the Startup Settings menu choose: 7) Disable Driver Signature Enforcement.
    (Your PC will now fully boot up and Driver Signature Enforcement will be disabled for this session. Once you reboot or power down your PC Driver Signature Enforcement will be enabled.)
  10. Install your unsigned driver software. You will still get the Windows Security Alert (just click Install this driver software anyway)

Enjoy your software!

Linux: How To Identify The Linux Kernel Version?

The Kernel version is broken down into three parts:

  1. Major Number
  2. Minor Number
  3. Revision Number

The Current Linux Kernel versions (June 2014) are:

  • 3.14.5 (Stable – Maintained by Greg Kroah-Hartman)
  • 3.15-rc8 (Development – Linus Torvalds)

The first number(3) is the major revision to the Linux Kernel. The second number(14) shows the minor revision. Development Kernels are odd and production kernels are even. Development kernels are not fully tested and can be unstable. Once a development Kernel is thoroughly tested and deemed stable is will be given an even number x.1.x → x.2.x or x.3.x → x.4.x
Since the Linux Kernel is constantly being improved and revised a revision number(5) is added when smaller changes are made.

How to tell which Linux Kernel you are running?
From your Linux Terminal type:

  • uname -r
  • cat /proc/version
  • rpm -q kernel              (If you arte running Red Hat package manager)
  • dmesg | grep Linux
  • ls /boot                           (look for vmlinuz.x.x-x)

I hope this helps explain Linux Kernel versions.

Linux Commands In Windows 8.1

Basic Linux file commands working in Windows 8.1
Some commands have always been the same for both Operating Systems* but now you can use whichever you prefer when working with files. Below are a few common ones that I have verified working in Windows 8.1.

ls, cd*, pwd, mkdir*, rm, cp, mv, touch, cat, ps, head, tail, date*, whoami, finger, uname -a, du, chmod, grep, find -iname, exit*, echo*