Microsoft releases source code for PC-DOS (aka MS-DOS) to public

Mountain View, Ca—March 25, 2014— The Computer History Museum (CHM) announced today that it has, with permission from Microsoft Corporation, made available original source code for two historic programs: MS-DOS, the 1982 "Disk Operating System" for IBM-compatible personal computers, and Word for Windows, the 1990 Windows-based version of their word processor.

If Microsoft had done this 32 years ago, apple would not exist and neither would Linux.

How To Login and RSYNC to a Remote Host with SSH without password prompt

Step 1 – Setup public SSH keys

On the local server, generate the public SSH keys with no password:

ssh-keygen -f ~/.ssh/id_rsa -q -P ""
cat ~/.ssh/

This is the public SSH key that can be placed on other hosts to provide no-password required access:

ssh-rsa AAA...[*] root@boomclickclick

Copy this key to your clipboard and login to the remote (destination) server.

Place this SSH key into your ~/.ssh/authorized_keys file:

If your SSH folder does not exist, create it manually:

mkdir ~/.ssh
chmod 0700 ~/.ssh
touch ~/.ssh/authorized_keys
chmod 0644 ~/.ssh/authorized_keys

 Step 2: Login to the Remote Server from the Local Server


Now, if you wanted – you could rsync a folder to the remote host without logging in.

Make sure that you have rsync installed on the destination server, and then exit out of the remote server and do the same on your source server. Next, issue an rsync command, something like below, but adjusted to your circumstance. The trailing / in the example below means that I’m syncing a folder and not a file.

rsync -avz -e 'ssh' --delete /foo/bar/test/

The next project is to create a shell script and create a cron job to run the rsync at a specified interval.

I’ve used this to rsync folders from Apple OS X Mavericks, Scientific Linux 6.5 and Debian Wheezy,



Using Cygwin in Windows 8.1, there is a command need to be run in Windows Cygwin window:

chgrp Users ~/.ssh/id_rsa

Then the solution posted here can be applied, 400 or 600 is OK.

chmod 600 ~/.ssh/id_rsa

Mac OSX and MS Exchange

I’ve got multiple email accounts on my domains, as well as gmail accounts, as well as an icloud account and a work account that uses a cloud based exchange server.   In this mix, I have multiple machines – Windows, Linux and OSX all running and accessing the same accounts in real time.    The Beast (my windows box) runs all mail as POP to download hard copies of my email so if needed – I’m not dead in the water if the remote server or internet access is unavailable.

OSX and Linux access my email using IMAP – so that they are always updated with the same information regardless of which machine that I’m using.

I love the fact that I can sync my Contacts, Calendar, Notes, Reminders with OSX – and then use Thunderbird to link IMAP with the exchange server for e-mail.    This keeps my inbox clean – and when I get a email – the dock notification is specific to Thunderbird and I know it’s work related.    You don’t need to use the Thunderbird Extension (“ExQuilla”) that is full of bugs and features and costs $10 annually.

So, I use Apple’s Mail in OSX for everything except exchange email which is sync’d with Thunderbird via IMAP, with the other integration services provided by OSX.

This works for me.

Debian Wheezy as Mavericks Time Machine Server

There are two Mac OSX boxes in my household.   I used a different mount point for each OSX Mavericks computer on separate RAID 1 volumes, though I could have used LVM mount points to allow the backup to “grow” nicely.

Installing Packages

The newer releases of OS X requires Netatalk 2.2.x+.    Mac OS X 10.9 “Mavericks” works great with the version of netatalk shipped with Debian 7.0 (Wheezy), the topic of this guide.

Run the following commands:

aptitude update
aptitude install netatalk avahi-daemon avahi-utils

Setting up Netatalk
Let’s do some configs…

Change your /etc/netatalk/AppleVolumes.default file to export the Time Machine volume. At the end of the file you’ll find a line that reads:

~/                     "Home Directory"

Comment out this line by adding a “#”, since we’ll later create a time machine user that will not have a home directory, and this may cause you to encounter an error.

#~/                     "Home Directory"

Then add another line below it:

/opt/timemachine "Time Machine" options:usedots,upriv,tm
  • /opt/timemachine is your backup folder.
  • “Time Machine” is the label to identify the Time Machine volume.

The rest of the line contains various parameters to allow the Mac to “play nice” with this server as a Time Machine target. It’s important to add the options:tm at the end of the line so that Netatalk enables various special options for Time Machine. You can also add fancy options to restrict access to users logging in with specified accounts.

The next config file is /etc/netatalk/afpd.conf. Comment the last line like this:

# - -tcp -noddp -uamlist, -nosavepassword

…and add this:

- -tcp -noddp -uamlist,,

I am not sure if this command is actually needed for it to work, but it worked.

touch /opt/timemachine/

Restart netatalk for the new configuration to take effect:

sudo service netatalk restart

For an additional layer of security I decided to create a dedicated user account that will only have access to the write to the backup folder. Time Machine will ask for this information on initial setup.

sudo useradd -s /bin/false timemachine
sudo passwd timemachine
sudo chown -R timemachine:timemachine /opt/timemachine

This takes care of the server side.

Client Setup
Now configure your OS X installation so it sees unsigned time machine volumes. Open the terminal app and execute the following command:

defaults write TMShowUnsupportedNetworkVolumes 1