2021-05-22

DirectoryPulse - Keyliner Backup Software

DirectoryPulse - Keyliner Backup Software

Keyliner has written a free Windows backup program.

Backups can be saved in dated folders, as compressed files, or as generational backups (multiple changes to a file).  Jobs can be saved and re-loaded, and scheduled for automatic runs. 

DirectoryPulse was originally written as a Student and Instructor exercise in Volume 6 of the Computer Programming Book, War and Peace Programming in C#  -- Amzon Kindle, written and published by keyliner.  It grew into this program.

Backup are non-proprietary file copies.
And Fast!

Write to local drives, SAN drives, and cloud drives, organized by project, by date, etc.

Click for larger view

Features:

* Backup to a local disk, SAN, One-drive, GDrive, etc.
* Non-proprietary backup - straight-forward file-copies

* Backups to optional dated-folders (YYYY-MMDD)
* Supports Generational backups
   (multiple versions of same file, V1, V2, etc.)

* Optional ZIP backups
   (reduce upload times to OneDrive)

* Skips non-changed files
   Automatically skip cache folders, Temp files, and hibernation files
   Automatically skips Windows System Files
   Skips One-drive virtual file links (saving re-downloading)

* Manages its own backup inventory, erasing old backups
* Configurations can be saved for easy retrieve and re-run
* Automate and schedule with Windows Scheduler
* Occupies zero RAM or resources when not in use; no background tasks

* Includes a nifty Directory Report that displays a sortable report, showing file-sizes and counts in a way that file explorer does not.  Use this to find your biggest disk hogs.

Installation Steps:

Free to download and use for personal and commercial use. 
No registration, no login, no email. No advertisements, no nags, no spying.
Keyliner does not (and cannot) track who downloads or runs this program.

Installation is easy:
Download the .exe and place in any folder on your hard disk.
Double-click the .exe to run - no installation required. 


Follow these steps for a more professional installation:

Using the .exe from a download folder, or copying to a (my Documents) folder is a quick workaround for various Windows security concerns.  Some vendors recommend this, but these folders are inappropriate for executable software.  Instead, the program should be copied to Program Files so it gains the protection of other Windows security features. Total time: about a minute.

A.  Download the .exe to a Download or Temp folder:

From Keyliner's public GDrive, click this link and download to a local temp or download directory.  Do not download directly into ProgramFiles

Download Link
https://drive.google.com/file/d/1iXVog877_BVnF0qtLw7cz1tCKn6P1Qsc/view?usp=sharing

Since keyliner cannot afford a signing certificate, you will be prompted that the file is not safe (being downloaded from the internet).  Click "more information" and allow the program to run.

When downloading, different browsers behave differently.

You will be prompted the file cannot be scanned. 
Click "Download anyway".  For, example:

Microsoft Edge Downloads:
Prompts "DirectoryPulse.exe" was blocked because it could harm your device. 

"Click See More" and allow the download. 
With Edge, the file appears in your Downloads directory with a random name, "Unconfirmed 780359.crdownloaded" (name varies). 

Use File Explorer to rename the file to "DirectoryPulse.exe".


B.  Mark the program as safe-to-run:

(This step may not be needed if downloaded by Edge and you clicked "More / Download Anyway")

Using File Explorer,
Right-mouse-click the downloaded (and re-named) DirectoryPulse.exe
Select "Properties"
Check [x] Unblock.  (This removes the "mark of the web.")

                 Click for larger view


* Only do this if you trust keyliner *and* only if downloaded from keyliner's public GDrive. 

If "Unblock" is not visible, it has already been unlocked (by Microsoft Edge).
Once [x] Unblocked is clicked, this security menu disappears.

C.  Create a Program folder to hold the program:

Using File Explorer, open folder C:\Program Files,
Create a folder  C:\Program Files\DirectoryPulse


D.  Copy the .exe to ProgramFiles\DirectoryPulse:

Using File Explorer,
Copy/paste the .exe from the temporary/download folder
to C:\Program Files\DirectoryPulse

Do this copy as a two-step, copying from the download folder into Program Files.  Windows security will not let you download directly into Program Files (technically, you will not be able to remove the "mark of the web" if downloaded directly into Program Files).


E.  Create a Start Menu Tile:

Using File Explorer,
in C:\Program Files\DirectoryPulse Right-mouse-click the executable and "Pin to Start"
The program is ready to run.  See icon on Start Menu.


Try it:

1.  Launch program, "DirectoryPulse.exe" from the Start Menu tile or by double-clicking the .exe.

2.  Choose a directory to backup.

Right-mouse-click "Source Process List" (the second box on the form) and Select "Add User Profile Documents"

Alternately,
Click the folder icon and browse for a top-level directory, such as "C:\Data". 
Press Tab to copy into the Process List.
+Add other folders, as desired.  Folders can be stacked.

 3.  Click Button "Refresh DOS Directory List"

A nifty summary report appears, showing all directories and subdirectories, with file counts and sizes.  (right-mouse-click any directory to open in Explorer, view reports, etc..)


4.  Settings:  Set a backup destination:

Click the "Gear" icon (Preferences)
Type a backup destination path, such as D:\backups  (third field)

Click for larger view

a) Optionally, assign a preference "save" file-name, such as "MyFavoriteBackup"

b) Type or browse a "Backup Destination" path, or use the Preset menus, choosing Local, Daily, etc.. 

For this first-run example, Type/choose a USB drive (D: Drive, or other locally-attached disk).  Example, "D:\backup".  SAN drives might need more setup and authentication.

The Destination must be a different than the directories being backed up.
The pre-built destinations are adjustable and can be changed.  See "System Defaults"

At the destination, a dedicated subfolder is recommended (e.g. "\backups").  For each type of backup (Daily, weekly, project, etc.), recommend using a different top-level subfolder, such as  D:\backups\Daily\UserProfile.  This helps keep the different types of backups separate from each other -- and often, each type has different needs.  Destinations are built automatically if they don't exist.  Use SAN drives, external USB, etc.

The green, gray, and blue "presets" are adjustable and can point to your favorite devices. 
See the next article for Detailed Switch documentation.


c)  Recommended: 

Choose [x] "Append backup date"

- giving the destination an automatic date
D:\backups\Daily\UserProfile\YYYY-MMDD

Choose [x] "Discard Cache directories"

- discard obvious temp and cache folders.


d)  Click "Apply" to use settings just for this session, or Save to save the preferences in a retrievable settings file.

 
5.  From the main screen, click bottom-row button "Backup"

The backup runs, creating the same source directories at the backup destination.
When done, a report displays, along with a Log file link.

You are done!

If "[x] Append Backup Date", each time it runs with these same settings, it builds a new dated subdirectory.  If you also set "[x] Limit Dated Backups" it discards the 11th iteration, keeping 10 backups. 


Details and additional program documentation can be found here:
Detailed Switch documentation


Version history:
1.05 - 2023.0430 Moved the Config/INI lookup button to top of panel
          Added cosmetic "Destination:" during the backup
          Added a "Delete" button (in addition to the Context menu) for INI Delete
1.04 - Fixed bug where sometimes root drive not inventorying: "Unexpected error in DOS directory"
1.03 - Minor changes to the report Log file, making it easier to find skipped directories
1.02 - Not released
1.01   2021.0610 Initial Release
Thank you to my Beta-testers: DW.



2021-05-20

DirectoryPulse - Other documentation

 
One of the projects in Keyliner's "War and Peace Programming in C#" Student and Instructor Workbook was a disk directory and report program.  That student project morphed into a Backup program, which is available here for download.  This article documents the program's technical switches and features.

See this article for a general description: DirectoryPulse Introduction

** A new version will be released within a week or so:  2024.03.12
This documentation is under construction and may not be accurate.

Keyliner's DirectoryPulse program is free to download.  No registration.  No spyware.  No installation.

Download Link
https://drive.google.com/file/d/1iXVog877_BVnF0qtLw7cz1tCKn6P1Qsc/view?usp=sharing

DirectoryPulse works like this. 

  • From the main landing page, add one or more top-level folders to backup
  • Click "Refresh Directory Listing" to get a report
  • Click the Gear Icon
  • Use the Presets to assemble a destination path, and to pick the type of backup.

  • Click Apply
    Optionally, click "Save" and save the preferences for later re-use

  • On the main panel, click "Backup"


Saved Preferences can be re-retrieved, making a repeatable backup.  This can be scheduled and automated.

Preference File Location:
C:\Users\<login>\prefs\DirectoryPulse

Log File Location:
C:\Users\<login>\prefs\DirectoryPulse\Logs

 
First-Time/One-Time Recommended Setup:

a.  After launching DirectoryPulse, click Gear Icon
b.  In form A015, on the right side, click button "System Defaults"


c.  Change the default PRESET destination paths to match your local drives. 

These are optional settings, but recommended. 
There are three major types of destinations:
1.  DefaultLocal (typically Drive D:)
2.  DefaultSAN (local Network Drive, Synology, etc.)
3.  DefaultCloud (typically OneDrive or GDrive)

Type a root path for each destination -- pointing to a pre-built top-level folder.  Details, next

Click for larger view

- Change DefaultLocal 

Set to a local backup drive.
Typically a "D:\" or USB drive. 
A root-drive plus a subfolder is required: for example:  D:\backup 

If a second drive is not available, build a dedicated sub-folder on the C: drive  (C:\backups\). 
(This is not ideal because it does not protect you from drive failures.) 

A "local" destination is normally used for daily "differential" backups.  This type of backup can be set to keep 10 versions of each changed file by using the [x] Generations switch.


- Change DefaultSAN

Set to a Network-aware SAN drive, an external USB, or other resource for longer-termed backups.  Even though this choice says "SAN", any destination can be used.  When pointing to this device, typically use a UNC\share-name or a mapped drive.  External USB drives can also be used. 

Examples:

DefaultSANBackupDestination  = \\SynologyNAS\Data\Backups
   or
DefaultSANBackupDestination  = E:\Backups   or
DefaultSANBackupDestination  = \\PC-2\share\Backups  or
DefaultSANBackupDestination  = NONE
to disable

The destination requires a root drive and subfolder (e.g. \Data, or Data\Backups); do not write backups to the root of the drive. 

Note:  if you are not authenticated to this drive, or the drive is offline, setting this field is slow as the program attempts to navigate and test the path.  Be patient.  The offline drive will time-out.  You can continue to build a non-existent paths, on the chance it is available later.


- Change Default Cloud  

Typically point to a OneDrive or GDrive local folder

Examples:

DefaultCloudBackupDestination =  C:\Users\<username>\OneDrive\Backup
"None" to disable

Replace <username> with your Windows 10 username or browse the Users folder (or leave text as a literal "<username>" and let the program determine the folder).  An active OneDrive (or GDrive) account is required.  

Use the Cloud destination for offsite backups. When the job is built the destination can (perhaps "should be" set with the [x] Zip option.  This improves file-transfer times and reduces disk quotas.  Typically, this does not use dated-folders or generations.


Continue with these other System Preferences:

d.  On the same System Default panel, the Default Preset selection list shows pre-built subfolder names.  This helps assemble subfolders at the Destination path.  This is a comma-separated list, defaulting to:  Projects, Daily, Weekly, Monthly, Adhoc

For example,
If the SAN Preset is highlighted ("\\synologyNAS\Data\backups"),
choosing "Daily" appends a "\Daily" subfolder: 


Selecting "Projects, Daily, Weekly...." does nothing more than appends a common, predicable name to the already-typed destination path.  The folder is built automatically when the backup runs.  The assembled name can be overrode and changed by re-typing the destination's path.

I now use and recommend these presets: 
"Projects,Data,MyDocs,Weekly,Monthly,Generations,Util,Adhoc"

Best Practices:
-----------------------------------------------------------------------------------
(Assuming a local disk for data, and using OneDrive or a SAN for offsite backups.)

In the Gear menu, use the PRESETS to choose recommended default settings. 
Although the Presets are recommendations, they can be manually changed after assembled.
Then Save these settings to a permanent configuration INI file.

1.  Create a daily backup configuration.

This is the fastest backup.  After the first full backup, all subsequent backups are fast, only backing up changed files.

Set the destination to a Local drive (such as D:), with a dedicated subfolder, such as "\daily".
Make this a non-dated backup*

D:\Backup\Daily

Recommend these switches: 

- Do not [ ] Append Date (do not use a Dated-folder)
- Use [x] Generations

"Generations" will only backup changed files and will keep 10 generations of changes.  Each day's backup will be fast, only backing up the changed files. This depends on the backup folder name to not have a [date] appendage.

For example, in a particular backup directory:
Filexyz.wpd  (current backup version)
Filexyz-001.wpd  (slightly older version)
Filexyz-002.wpd  (an even older change)
:
Filexyz-009.wpd  (the ninth changed version; the oldest)
Filexyz-010.wpd  (pushed off the stack and deleted from backup)

Give these preferences a name and a description.
Click "Save"
The preference can be retrieved from the main panel by clicking the 123 icon.

2.  Create weekly and monthly backups to SAN or an External USB.  

For these types of backups, typically I used [x] Allow Dated backups, and I check [x] Limit dated backups. These are good for expansive Data backups or for project backups.

Dedicate a subfolder for each type (e.g. \weekly, \monthly)
For example, destination path:  \\SANDrive\Share\Backups\Weekly
or  \\USBDrive (F:)\Share\Backups\Weekly\MyProjectBackup

Use these switches:
- [x] Append Date                         [x] Limit Dated Backups
- [  ] Generations                           [ ] Zip (unchecked)

Use [x] AutoRun if scheduling with Windows Scheduler

Save this preference with a name and description.
It can be re-retrieved from the main panel by clicking the 123 icon

These are full-folder backups, all files, with 10 dated versions.  The 11'th version rolls off.  These backups can be disk-intensive. 

Optionally, select a non-Dated backup folder destination (a project backup)

Use these switches:
- [  ] Append Date (uncheck)        [  ] Limit Dated Backups (unchecked)
- [  ] Generations  (uncheck)         [  ] Zip (unchecked)

On first-time run, it runs a full-folder backup.
Subsequent runs only backup changed files, making for a fast backup. 
Each file is date-compared with the previous backup.  If the file-date is the same, the file is skipped. Although this backup is fast, it only keeps the most recent changes of the files. 


3.  Create a (monthly) Cloud Backup

Dedicate a subfolder for each type (e.g. \monthly)
For example, destination path:  \\OneDrive\Backups\Monthly

Use these switches:
- [  ] Append Date (unchecked)   [  ] Limit Dated Backups
- [  ] Generations                          [x] Zip

Use [x] AutoRun if scheduling with Windows Scheduler

If using AppendDate and Limit-DatedBackups, it can build up 10 different .zip versions.  This can be expensive for disk space (especially on OneDrive, GDrive).  This is not recommended.  Instead, treat the .zip backups as "fire insurance." 

When using Zip, you cannot use Generations.  If checked, it is ignored.


4.  Use Project or Adhoc backups for one-off backups.

     - [x] Append Date (typical)   [x] Limit Dated Backups
       [  ]  Generations                   [x] Zip (optionally)


Recommended PRESET Default Chart:

Click for larger view


Switches and Settings:


[x] "Append Backup Date"

This is especially useful during scheduled backups or on "project backups."
Keep each project in its own subdirectory and each can have its own date-stamp folders.

Typically used with a smaller project backup, where a recommended folder structure might be:
    D:\backups\projects\WarAndPeace
    D:\backups\ProfileMyDocuments
    \\SynologyNas\Data\Backups\Projects\WarAndPeace


The actual backup destination gets a date appended
    D:\backups\projects\WarAndPeace\2021-0522   (date varies)
    D:\backups\ProfileMyDocuments\2021-0522
    \\SynologyNas\Data\Backups\Projects\WarAndPeace\2021-0522

If dated, each backup behaves as a full, unconditional backup.  

Each time the destination is a brand-new (dated) folder, and because of this, all files are backed up.  There is no date-checking, and no Generations, regardless of [x] Generations checkbox.  Reason:  Because of the folder-date, it is a new, empty folder - no dates or generations can live there.

[x] Append Backup Date "stacks" multiple copies of backups at the destination -- this can be a serious disk-hog -- but disks are cheap, use them:

   D:\backups\projects\WarAndPeace\2021-0501 (a full backup)
   D:\backups\projects\WarAndPeace\2021-0502 (a full backup)
   D:\backups\projects\WarAndPeace\2021-0503 (a full backup)



[  ] Append Backup Date

If [  ] Append Date is unchecked, backups write to the same folder as a non-dated destination.

The first-time backup acts as a full-backup. 
Subsequent backup to this same folder backup only changed files. 
Each file is date-compared with the previous backup. 
If the source file-date is the same as the previously-backed up file, the file is skipped. 

This makes for a fast backup, but it only keeps the most recent version of the file.  You cannot fall back to older dates, or to older generations.

See also "[ ] Use Generations" -- which is slightly different -- keeping 10 versions of the same changed file(s)


[x] "Limit Dated Backups"

If "[x] Append Backup Date" -- and [x] Limit Dated Backups"

The limit switch tells DirectoryPulse to manage the backup inventory by looking at the Destination folder (with a date).  Ten copies of the dated-backup destination are allowed to survive, with each new dated version pushing the others down the stack.  The 11th version is discarded. This switch is date-sensitive, looking at the subdirectory name.  If the name contain YYYY-MMDD, it is are subject to the eleventh-hour delete.  

   D:\backups\projects\WarAndPeace\2021-0501 (oldest deleted)
   D:\backups\projects\WarAndPeace\2021-0502 (a full backup)
   D:\backups\projects\WarAndPeace\2021-0503 (a full backup)
    :
    :
   D:\backups\projects\WarAndPeace\2021-0510 (a full backup)
   D:\backups\projects\WarAndPeace\2021-0511 (a full backup)

The 11th folder-version auto-deletes, no prompting.
* The Deletes are time-consuming and can delay the start of the next backup.
The ten-count is not adjustable.

I typically use dated-folders for project backups, or with Weekly scheduled backups.  Look at the project-level and count the 10 possibilities.  This way I have (up to) 10 versions, various dates, of all files -- even if a file was deleted, I can likely find an older folder with a recoverable version.

If other backup types (other projects) are intermingled in this same dated folder (why would you do this?), they will also be deleted.  Thus, keep the top-level project folder different.  The delete looks at the (subfolders with dates); sorts alphabetically, and keeps the ten-most recent. 

To keep a dated-backup from auto-deleting, use File Explorer and manually rename the dated folder to something less-date-like:  For example ...\Projects\WarAndPeace\2021-0516Hold.  Or use a different project folder.

If [x] "Limit Dated Backups" is checked but [  ] "Append Backup Date" is not checked, the Limit switch is ignored, without comment.  Illogical, but no harm. 


[x] "Use Generations"

Generational backups can track 10 versions of an individual file.  Each older version is given a number, #01 - #10 and all ten versions are stored in the same destination folder, but each has a slightly different name.  The regularly-named file is the most recent backup version. 

For example, if backups are run nightly, and a file was modified on Monday, Tuesday, and Friday (today), that file appears three times in the destination.

         testfile.xlsx           (today's most current backup has the non-changed name, "Friday's")
         testfile-#01.xlsx    (Tuesday)
         testfile-#02.xlsx    (Monday - the oldest file)


To make this work, the backup directory must have the same name (don't use a dated-backup folders).  As the backup runs, it looks into the destination and compares each file's date-time stamp with the current file.  If the date is different, it makes a new generational backup of that file.  If the (modified) dates are the same, the file is skipped.

If the file is a new, first-time backup, it arrives without a #00 number.  Subsequent backups will push this file's number to #01, #02, etc.

If the source file has a different date, the original file's backup name is sequentially renamed to #01, #02, ...#10, making up to 10 generations.  Each version is shifted to a larger number, where larger numbers are older versions of the file. The 11th (oldest) version is pushed off the stack and discarded.

If a (daily)-backup is missed, the next run picks up with the same date-check, with no harm done, again shifting versions as needed.

"Use Generations" only works if the destination folder is the same name on each backup - that is a fixed, non-dated backup destination.  -- If using "[x]Append Backup Date", the folder name changes each day and Generations are not given the opportunity to stack.


[x] "Zip Folders"

Each destination folder is compressed into a single ZIP file.  A folder with 100 files will be compressed into one ZIP, with 100 files within.  If the backup traverses 50 other folders, 50 ZIPs are built; one for each folder (assuming files are in that folder).

This is best used when writing to OneDrive or GDrive for off-site backups.  Compressed files are faster to upload and occupy less disk quota. 

Recommendation:  Use [x] Zip Folders for small project backups, not for big all-encompassing DATA or MyDocuments backups.  Zips are not convenient to recover from because the folders have to be manually un-zipped. 

Zip backups do not check file date-time-stamps.  Generations cannot be used with Zip backups.  Each Zip is assumed to be new and unique and each Zip always contains all files in that folder.


[x] "Auto-Run"

Auto-Run is intended for command-line or Windows Task Scheduling, and is required for tasks called by Windows Scheduler.  This switch allows the backup to run unattended.  This switch means "run unattended."  If you happen to use this preference from the desktop app, it behaves slightly differently.  If run from a batch or task-scheduler, it runs unattended.  Details about this are too unimportant to document here.


Saving Preferences and Settings:

Multiple jobs (preferences) can be saved at the Gear icon, as documented above.

Each preference file is saved as an INI file. 
See folder C:\Users\(your name)\Prefs\DirectoryPulse\INI.

Typed or selected Destinations, and all program-switches, are stored with a name and description of your choosing.  Once saved, they can be re-loaded from the main landing panel by clicking the 123 icon:


When saving a backup preference, give the preference file a name and description to help remind you of the settings.  This is visible in the 123 menu.  Illustrated are 7 different preference files, with 7 different destinations and other settings:


Adhoc Backups:

Gear-icon and other settings can be set without saving the changes in a Preference file.  From the preferences screen, click "Apply" (without "Saving").  Return to the main panel.  Click Refresh, then Backup.  "Adhoc" backups do not have to write to the "Adhoc" destination path.

Scheduling Backups:

Use Windows standard "scheduler" to schedule periodic backups: See Microsoft documentation for details on Windows Scheduler.  

Click Start, Run, "Task Scheduler".  Pass command-line parameters when launching. 

Command Line Parameters:
DirectoryPulse can be launched from a command line with optional parameters to automate backups.  Or a desktop (shortcut) icon can be built with these same parameters.

By passing a preference file from either a Shortcut, Windows 10 Tile, or from Windows Task Scheduler, tasks can be fully automated.  For example:

C:\Program Files\Util\DirectoryPulse.exe ini=MyFavoritebackup.ini

where: 

MyFavoriteBackup.ini is the name of a previously-saved DirectoryPulse Preference file
[x]Auto-Run must be flagged in the INI file

When launched with a Preference/INI file, the program loads, retrieves the preferences, scans the directories, and launches the backup.  When the backup completes, the program auto-closes.  Log files record the transaction.  Automation requires [x]Auto-Run as one of the switches inside the preference file. 

Log Files:

ASCII-text log files are found in
C:\Users\(your name)\Prefs\DirectoryPulse. 

The 15 most-recent logs are kept.  This count is not adjustable.


Other files:

When first launched, DirectoryPulse.exe creates several files in
C:\Users\<username>\Prefs. 

In here, find small control (.ini) files, optional reports, and log files.  In this same area, note the file "dirCreate.txt" -- this is created when "Refresh DOS Directory Listing" is clicked.  Of interest, this is nothing more than a DOS DIR listing, which uses this command:

dir (a directory name/*.*) /-C /N /oG /S >C:\Users\...\dirCreate.txt

This is the input file used by the backup program.  Basically, if DOS can see the file, DirectoryPulse can work with it.

Restores:
 
DirectoryPulse uses simple file copies and the backups live in a folder-by-folder reconstruction on your backup drives.  To restore a file or folder, use File Explorer to copy that file/folder back to the source drive.  This program does not help in the restores. 

To recover a generational file (e.g.   testfile-#01.xlsx",  copy the numbered version and then manually rename, removing the -#00 appendage.  Because some files may have more than one version, updated on different dates, restores cannot be automated.  Perhaps Restores can be a future enhancement.

Other Comments:

DirectoryPulse is not an image backup and cannot be used to recover a crashed hard disk.  Instead, it is meant to keep operational copies of data, which an help recover from spreadsheet-blunders, ransomware, viruses, etc.

DirectoryPulse is not meant to backup Windows System folders, or ProgramFiles folders, and it actively avoids these areas.  In any case, restores from program folders would be flawed because of Registry and other concerns. 

However, from the Settings panel, the current-session switch "[x] Allow System Files" will attempt to backup C:\Program Files, and similar folders -- but in no case will it fiddle in the C:\Windows folders.  This is by design.

Finally, inside of the settings screen "A020 System Defaults," is a link to a system-wide INI file.  Obscure settings, not exposed in the configuration panels, can be found and adjusted.  For example, File and Directory exclusion masks.  Use care when editing this file. 

OneDrive files:

DirectoryPulse sees and reports OneDrive files, but avoids off-site pointers during a backup.  See Users\YourName\OneDrive. 

The reason:  A backup of an off-site OneDrive file causes it to download locally to your PC and could be gigabytes of network and disk activity.  DirectoryPulse assumes Onedrive is an adequate backup and it will ignore the file pointers.  But, if the one-drive file has already downloaded locally, and it is in the backup path, DirectoryPulse will back it up.

Finally, with any backup strategy, it is wise to make Offline or Near-Offline backups -- backing up to a External USB drive -- and then disconnect the drive.  In the event of a ransom-ware attack (where every file, every drive, every SAN, is encrypted, that drive would be safe.  OneDrive backups have some protections against Ransom-ware attacks, but it may not detect the attack in time to prevent some of the damage.


This program was a blast to write and I use it daily.  I hope you enjoy using it too.  Your comments are welcome and I would like to know if you find the program useful.

Related Article:
DirectoryPulse Introduction


2021-05-02

Using Google Authenticator for 2-step authentication

Using Google and Microsoft's "Authenticator" for 2-step, 2-factor authentication to secure your logins. 

If you are not using 2-factor (2-step) authentication for your main account logins (Gmail, OneDrive, O365, your banking sites, etc.), switch to this method to protect your accounts. 

I have literally received emails from "Gooogle" saying my account was compromised. Nobody broke in; they can't without my phone and the 2-factor authentication.  I laughed and deleted the phishing email.

How it works:

Login with a normal User-ID and password.  Then, a few seconds later, the phone's "Authenticator" app prompts for your permission to continue.  It basically asks, "Is that you trying to login now?"

Now, instead of a text message, the phone asks, "hey, is that you?"

Benefit:

Even if your credentials are stolen, they still can't login to your account!
Your account cannot be compromised without your phone.
Works with all smart phones (technically with all cell phones)

This used to be my cell phone with my first Authenticator app!

This is important

Without 2-factor, I no-longer feel safe.  

With sites, such as Google, OneDrive, banking, and important social-media sites, I always use 2-factor.  

With your bank, twitter, etc., go into their profile screens and enable 2-factor.  Many will link to Google or Microsoft's Authenticator Apps, or they may use a text-message.  No matter which, you must enable it to gain the benefits.  If your (bank) does not support 2-factor, switch banks because they are idiots.
 

"Google Authenticator"

With a smart phone, installing 2-factor is a breeze.  It is two simple steps, plus a few more optional steps to safeguard and backup this new feature.

Steps:

1.   Setup Google's 2-step verification here:  Two-step verification  or follow these steps.

(Do this before installing the authenticator app)


- Login to (Gmail) or any Google Service
- Click Profile Picture, then "Manage your account"
- Click Security, 2-Step Verification.  Enable.  Follow the prompts.

- Important:  Generate Backup Codes

In the 2-Step security panels, click Backup Codes and generate (10) emergency codes.  Store these in a safe location (paper?) - do not store the backup codes on any Google services - you need to get to these when you can't login.  I store mine, both on paper and on Microsoft's One Drive and ironically, I store Microsoft's One Drive's emergency codes on GDrive.

2.  Install the Authenticator App

Two-factor (2-step) authentication must already be enabled on your Google account profile. 

From the app store, search and install "Google Authenticator".  Follow prompts.

Once installed, confirm or find the icon on your (phone's) desktop.  Use this icon for those rare times when the app needs to be opened manually.  Timed codes can also be found here.

3.  Recommended:  The phone should have a locked login screen, requiring a (PIN).  Without this, a stolen phone could be used to login.

You are done.
Next time you login to any Google Service, check your phone and click the "yep, that's me."


If you have an Android tablet (logged into the same Google account), this device can also be used for authentication.  No need to install the authenticator app and both devices will get the login prompts.  Theoretically, Apple tablets can do this too, although I haven't figured this out yet -- but certainly Apple phones work very well as the primary device.


What if no Phone?


What if you don't have your phone?  You can't easily login.  If you have a secondary (Android) tablet, it will have the same prompt, "yep, that is me".

In a worse-case scenario, use one of the 10-generated backup codes.  I have used 2factor since 2011 and have used the backup codes 3 times - mostly when switching to a new phone.  But since now installed on my tablets, I have not needed them, plus Google has a better way.  

If Changing to a New Phone

If you know you are replacing your phone, or are re-imaging the phone, test logging in with your backup tablet.

Or better:
a.  From the Google Profile screen, click "Security", 2-Step.
b.  On the 2-step panel, see prompt, "Change Phone".  Follow prompts.

If no secondary device, consider temporarily disabling 2-factor, or be prepared to use the backup codes, printing them beforehand.


Microsoft's Authenticator

Microsoft Services also support 2-factor and they have their own application.  If you are using O365, this should also be enabled.  Microsoft's program works a little differently, and in some respects, it is better.  If you use both Microsoft and Google, you will use two separate applications.  When Facebook has theirs, then you will need three.  Work will probably use their own app.  Sigh.

Rough steps:

1.  From a browser, go to https://account.microsoft.com   Sign in.

2.  Click Profile Picture, then "My Microsoft Account"

3.  Click Security (update your security info).  Oddly, do not click "Change Password/security"

4.  Click "Advanced Security Options";  Enable two-step authentication.  Follow prompts.

5.  Install Microsoft "Authenticator" app on phone

6.  From the same "enable 2-step" panel, scroll down and generate a new "Recovery Code"


Related Articles:
Gmail Protection Steps

Related articles: 
Keyliner Better, Stronger Safer Passwords
Keyliner:  Your Gmail account has been hacked


Google Account Compromised
Google has these instructions if your account were hacked and the password was changed:
https://support.google.com/mail/answer/50270?hl=enhttps://support.google.com/mail/answer/50270?hl=en

Originally published 2014.11.01