Backups are a necessary routine for computers. Over the years, there has been many trends in computing that promised to make backups easier, simpler, but as humans, we still tend not to do a good job when it comes to backing up our data. The best solution for home users is Time Machine in Mac OS X. Simply add a drive (usually an external drive), and setup Time Machine to backup your entire main drive. Time Machine is the most simple backup to setup, but it is not perfect. After multiple backups, Time Machine usually encounters problems and the easiest solution ends up having to wipe your Time Machine drive and start all over again. On Windows, there are third party apps that allow for Time Machine like backups. Their main benefit is that their user interfaces are easier to use than the built-in Microsoft Backup program. There are also cloud backups as well now, so you can use iCloud, Google, Microsoft, or Dropbox for your backups. For most of us though, the cloud backup should really be a secondary backup and not your primary. In general terms the advice is to have a backup plan and to automate it as much as possible. Eventually all hard drives and flash memory fail in some way, and so backups are always going to be needed.
As a project manager, one backup strategy that I have used for a number of years is to have a one folder backup strategy. For my business laptop, I create one folder under C:\Users\Username\My Documents\. This folder I name Projects and I then create a shortcut for it and place the shortcut on my Desktop. For every project I work on I create a folder underneath the Projects folder. As I complete projects, I then move these folders to \Projects\Archive. Anything related to a project has to be save somewhere under the Projects folder. This takes discipline, but is very easy to do once you keep to this routine of saving files to one folder.
Although every Operating System now provides a directory structure for users, most people have made the Downloads folder their main working folder! How many times has someone asked you to help them find a file, and you have opened their Downloads folder to discover thousands of files? This happens way to often. The Downloads folder was never meant to be a work folder. It was mean to help users find their downloaded files, but over time, people have treated the Downloads folder as their main repository for everything. It is important to remember that the Downloads folder is really a temporary folder for files. Nothing important should ever exist in the Downloads folder. Anything in the Downloads folder can and should be deleted. Move all your important files and working files to your main Projects folder and never work on any files outside of the Projects folder.
Now that you have all your files in one location, you need to copy your Projects folder and anything underneath to a secondary drive, backup location, cloud service. Although at the end of the day, you could simply copy and paste, drag and drop, it is best to automate this. In a business environment, there usually is a network drive or NAS that you can backup important files to. There are multiple apps or commands that you can script to accomplish this. The easiest way I have found is to use SyncBackSE. Using this application, I automate the backup of the Projects folder to run Monday through Friday, while I am at lunch. This backup strategy works well and is uncomplicated to use.
A most perplexing problem occurred with my Windows Server computer. This computer was built about 2 years ago and is my primary server for the home network. It has a SuperMicro Workstation Class motherboard with ECC RAM. I built this box, after getting annoyed with inexpensive Dell Tower Servers. The Dell Servers performed well and are a good deal for most people, but my server is in my home office and I prefer a quieter box. The Dell Servers have noisy fans and even trying a few different replacement aftermarket fans, they still produced enough noise for me to invest in a custom system. I also found myself replacing the Dell Servers more often than I cared to. They were cheap enough, that I would end up upgrading the entire box every two years. The server I ended up building was very quiet and ran 24/7. It was connected to an APC UPS and so it ran almost without interruption. At least it did this until rather recently.
After running for two years, the box was completely silent one day. Pressing the power button on the case would do nothing. There were no lights or any other signs of life (in this case electricity). I unplugged the computer from the UPS and into the wall outlet directly. Pressing the power button on the case would make the case fan and cpu cooler fan spin for about a second or two. The motherboard would never light up. It would only do this once. I had to unplug the power cord and try it again to get the fans to spin. I then unplugged the power supply connectors from the mother board and then tried the paper clip test with the power supply and it would power the fans again for a couple of seconds.
Alas, I could not resurrect the computer. My next step was to order a new power supply from Newegg.com and hope that it was my fancy power supply and not my fancy workstation motherboard that died. The new 1050W power supply was an upgrade from the 850W it was replacing. Other than the wattage difference, the new power supply had a switch to cycle on and off the power supply fan as needed. Once I swapped out the power supply, the box came back to life. The good thing about buying good components is that they are warrantied. I submitted an RMA request through the manufacturer website and a few days later, it was approved. After a week or so, they sent me back another power supply. I expected them to send me back a repaired unit, but instead they sent me back a brand new sealed box!
Before I sent my power supply, I inspected it without opening it. The only thing I detected was that on the top of the unit, there was a sharp indentation, where it seemed as something pushed up against metal from inside. I am pretty sure that was not there when I installed it originally. Other than that the unit looked normal.
The Windows Server has been running now normally for weeks.
Working remotely is pretty common these days, and even if you take your iPad with you, you always end up needing to access something on your local computer. For this, I have a Windows Server to which I connect to via Microsoft Remote Desktop. This works out great and allows me to access files, or use applications on my Windows box, that are not installed on say my iPad or my MacBook. However in order to get to my home machine, I need to have an external address on the internet. For this I have my own domain name which I have had for a few years now. The other issue I have is that my home internet connection does not have a static external IP address and so the IP address changes from time to time. Even though I have a domain name, I need a way for the domain name records to update every time the IP address changes on my DSL modem. This is what Dynamic DNS was invented for: updating DNS records as needed with new IP addresses. If you have your own domain name, you usually have to pay a provider to host your DNS and they will provide some sort of software or script that will update your DNS. This posting details how I setup pfSense to update my DNS provider ChangeIP.
Add Dynamic DNS to pfSense
First log into your pfSense admin panel and choose Services – Dynamic DNS. Under the DynDNS tab click on the cross icon to add an entry. You will come to a screen like this one:
- Change Service type to Custom
- Check the Enable verbose logging option
- Add your Update URL
- Add a description
- Click Save
The URL needs to be specific to your setup at ChangeIP. In my case, I have one domain with the three basic DNS A records: domain-name.net, www.domain-name.net, and ftp.domain-name.net
Here is an example of the URL:
In order to update all my dns records, I have setup domain-name.net, www.domain-name.net, and ftp.domain-name.net to be in set 1 at ChangeIP. The SET= parameter tells ChangeIP to update records in set 1 to the IP specified. The %IP% is a the variable pfSense uses to input the IP address it resolves for the WAN interface. Reference ChangeIP DDNS API Information for parameters and Setting Sets for DDNS Update.
Adding Cronjob for DDNS
With the Cron package installed, it is easy to add and modify Cron jobs. What I recommend doing is scheduling a Cron job to run every ten minutes.
Checking System Log
Once you force the update, it is important to check to see if it worked. You can check the System Log in pfSense to see if there were any problems that occurred and then at ChangeIP, check your Domain Manager – Premium Domains – Domain-Name – A records, to see if all records in Set 1 updated to the same IP address.
I am always looking for a better flash drive and my current favorite is the Mushkin Atom. The Atom is not the smallest physical size drive, but it is faster than most of the competition. I use my flash drive with PortableApps, which allows me to have most of my apps on a flash drive. This is a great way to keep all your apps when switching between two Windows computers. The only downside I have found is that Google Chrome does not work as well. It is a bit slower for some reason. Firefox is my preferred browser and the PortableApps version works very well. As to the Mushkin Atom performance, I ran a quick test with USBDeview for Windows and read results were a third faster than my previous Sandisk drive.
This test was run on the Mushkin Atom 32GB USB3 flash drive with USBDeview 64. Your results may vary depending on your computer and USB port.
I have been using the Atom for about 3 months without any issues on a Windows 7 laptop.
Apple has a long history with computer networking, from AppleTalk to today’s Internet connected world. However, it is Windows networking that still causes all kinds of headaches for Mac OS X users. It seems that with every release of Mac OS X, Apple seems to have recurring issues with Windows shares. Some of Apple’s defenders will state that Apple adopts industry standards as is, and it is Microsoft and others who publish specs, but don’t actually follow them, so when Apple does follow the specs, it seems to just end up breaking things. SMB is the networking protocol that Microsoft uses for Windows networking. It is what allows Windows network file shares to work across the network. With the latest versions of Mac OS X, Apple abandoned the open source SAMBA package that most Linux distros use to connect to Windows, and wrote their own SMB2 software. This makes Mac OS X 10.9 Mavericks connect faster and better to Windows servers. Well that is when it works!
SMB Connections Fail
There is one Windows 2012 Essentials server with multiple shares. There are two Macs on the local network. One iMac is connected over Wireless N and one MacBook Pro is using a wired ethernet 1Gb connection. When using the Connect to Server… option the iMac connects fine and has no issues. The MacBook Pro opens the share and then never displays any files, it just spins in the lower left hand corner of the window that opens. Both computers are running Mac OS X 10.9.3 Mavericks.
Connecting via CIFS instead of SMB seems to work for the MacBook, but it is slower.
The solution ended up modifying the Windows 2012 Essentials server. There are two registry keys that need to be added in order to fix the problem for the MacBook.
Under this Registry Key:
Add these DWORD values:
- Smb2CreditsMin – make this 768
- Smb2CreditsMax – make this 16384
Once you made the changes restart the Windows Server and then the Macintosh clients. It should now fix the problem.
Microsoft provides the following information on these registry keys:
The defaults are 512 and 8192, respectively. These parameters allow the server to throttle client operation concurrency dynamically within the specified boundaries. Some clients might achieve increased throughput with higher concurrency limits, for example, copying files over high-bandwidth, high-latency links.