Data Protection for your Linux machines using Scripts

Download IDrive scripts

Introduction

Backup and protect your Linux machine data using scripts bundle provided by IDrive. Protect files during transfer and storage, using 256-bit AES encryption with an optional private key.

System/Software Requirements
Linux(CentOS/Ubuntu/Fedora/OpenSUSE/FreeBSD/Linux Mint/Gentoo) - 32-bit/64-bit
Perl v5.8 or later


Script Download

Download the script bundle from here. Downloaded script bundle needs to be extracted into a particular folder on your Linux machine.

After extraction of the zip archive, you will find scripts folder in it. Below files will be present in the scripts folder:

  1. account_setting.pl
  2. archive_cleanup.pl
  3. Backup_Script.pl
  4. check_for_update.pl
  5. Configuration.pm
  6. Constants.pm
  7. edit_supported_files.pl
  8. express_backup.pl
  9. Header.pl
  10. Helpers.pm
  11. IxHash.pm
  12. JSON.pm
  13. job_termination.pl
  14. login.pl
  15. Logout.pl
  16. Operations.pl
  17. readme.txt
  18. Restore_Script.pl
  19. restore_version.pl
  20. Scheduler_Script.pl
  21. send_error_report.pl
  22. Status_Retrieval_Script.pl
  23. Strings.pm
  24. Uninstall_Script.pl
  25. utility.pl
  26. view_log.pl

Provide an appropriate permission (executable permission) to the scripts.

Example: chmod a+x *.pl.



Setup your IDrive account

You need to have an IDrive account to use the script bundle to backup your files. In case you do not have an account, please sign up and create an account here.

To set up IDrive script bundle locally with your IDrive account, run the below command and follow the instructions.
$./account_setting.pl


Note: Setting up the script bundle for the first time will ask user to enter the service path. This path will contain user specific data required to perform operations via script bundle.


accountSettings

Note: For some IDrive accounts, while configuring account, 'Create new Backup Location'/'Select from existing Backup Locations' options will appear and Mirror/relative backup type option will not appear.


Working with Scripts

Using IDrive scripts, you can perform backup/express backup/restore operations, view progress for backup/restore, schedule backup/restore job, view logs files and much more.


Log in to your IDrive account
If you are not logged in to your IDrive account while setting up your script bundle, run the below command to login:
$./login.pl

Note: Login script is a mandatory script to be executed before performing any operation. This script will authenticate your IDrive account details and will create a secure session for your backups.

Login

Edit your backup-set/express backup-set/restore-set, schedule backup-set/restore-set and exclude files

Before starting backup/express backup/restore operation, the user must provide the list of files/folders required to backup/express backup/restore in the backup/express backup/restore set file. To update these details in the backup/express backup/restore set file, you must execute the below command:

$./edit_supported_files.pl

The menu option will be displayed. Select option 1 to edit backup set file for your immediate/manual backup. Respective file will open in vi editor to edit. Add the files/folders that needs to be backed up.

editSupportFiles


Using same script you can update exclude and even schedule backup/restore set file by selecting the desired option.


Exclude Files/Folder from your backup set By using the Exclude files option, you can exclude files/ folders from being backed up to your IDrive account.

There are three ways to exclude items with scripts:

  1. Full Path Exclude
  2. Partial Path Exclude
  3. Regex Exclude

Full Path Exclude

To exclude files/folders with full path,

  1. Run 'edit_supported_files.pl' script and select option 'Edit Your FullExcludeList File'. The 'FullExcludeList.txt' file will open in vi editor.
  2. Add full path of the files/folders that you wish to exclude.
  3. Enter each item in a new line.
  4. Save and exit.

Example: Your Backupset contains /home/Documents and if you want to exclude /home/Documents/temp, enter the folder path ie: ‘/home/Documents/temp’ in FullExcludeList file.

Partial Path Exclude

To exclude files/folders with partial path,

  1. Run 'edit_supported_files.pl' script and select option 'Edit Your PartialExcludeList File'. The 'PartialExcludeList.txt' file will open in vi editor.
  2. Add partial name of the files/folders that you wish to exclude.
  3. Enter each item in a new line.
  4. Save and exit.

Example: Your Backupset contains /home/Documents and if you want to exclude all the pst files from this folder like /home/Documents/designtutorials.pst, /home/Documents/new.pst, /home/Documents/James/tutorials.pst etc, then enter ‘pst’ in PartialExcludeList file.

Regex Exclude

To exclude files/folders based on regex pattern,

  1. Run 'edit_supported_files.pl' script and select option 'Edit Your RegexExcludeList File'. The 'RegexExcludeList.txt' file will open in vi editor.
  2. Add the regex pattern of the files/folders that you wish to exclude.
  3. Enter each item in a new line.
  4. Save and exit.

Example: Your Backupset contains /home/Folder01 , /home/Folder02, /home/FolderA, /home/FolderB. If you want to exclude all folders/files that contains numeric values in name ie: /home/Folder01, /home/Folder02 etc, then enter ‘\d+’ in RegexExcludeList file.


Immediate/Manual backup
You can perform immediate/manual backup using the below command:
$./Backup_Script.pl

When you run your backup script, it will reconfirm your backup location and allow you to change it. You can now view the graphical progress bar for your data getting backed up.

If you want your script not to ask for backup location and not to display progress bar then you can always use “--silent” flag with this command.

Backup

Note: For some IDrive accounts this script will not provide an option to change 'Backup location'.


Immediate/Manual express backup
You can perform immediate/manual express backup using the below command:
$./express_backup.pl

Using this script, user can backup their Linux machine data to the express device shipped to them. Once the data is backed up, user can ship this express device back to us and within a week their data will be available in their IDrive account. For more details on express, visit IDrive Express™ for Linux.

Immediate/Manual restore
You can perform immediate/manual restore using the below command:
$./Restore_Script.pl

When you run your restore script, it will reconfirm your restore and restore from location and will allow you to change it if required. You can now view the graphical progress bar for your data getting restored.

If you want your script not to ask for restore location, restore from location and not to display progress bar then you can always use “--silent” flag with this command.

restoreScript

Note: For some IDrive accounts, user will not be able to edit 'Restore From' manually and have to select 'Restore From' location from the list of existing locations.



Schedule backup/restore
Run the below command to manage your schedule backup/restore job:
$./Scheduler_Script.pl

Select the desired menu option to create, edit, view or delete your schedule backup / restore / archive job and follow the instructions.

In case you want your schedule job to stop automatically at a scheduled time then set the cut-off time as well, while following the instructions.


Schedule Screen

Note: For some IDrive accounts, while scheduling restore job, user will not be able to edit 'Restore From' location manually and have to select 'Restore From' location from the list of existing locations.


View progress of scheduled backup/restore job
To view the progress of scheduled backup or restore operation, run the below command:
$./Status_Retrieval_Script.pl

restoreScript

View/restore previous versions of a file
You can view the list of previous versions of any file and select any version that you want to restore. To retrieve a file with earlier versions, run the below command:
$./restore_version.pl

restoreScript

Note: For some IDrive accounts, user will not be able to edit 'Restore From' location manually and have to select 'Restore From' location from the list of existing locations.


Stop ongoing backup/express backup/restore operations
To stop an ongoing backup or express backup or restore operation, run the below command:
$./job_termination.pl

jobTermination

View operation logs
User can view the logs for backup, express backup and restore operations using the below command:
$./view_log.pl

viewLog

Archive cleanup
Archive Cleanup compares the files of your local storage, selected for cleanup, with the files in your IDrive online backup account. It then deletes the files present in your account but not on your local machine. This feature thus helps you to free up space in your online backup account.

To perform archive cleanup run below command:
$./archive_cleanup.pl
When you run the script to perform archive cleanup, you can enter a percentage of the total no. of files to be considered for deletion. This percentage based control helps to avoid large-scale deletion of files in your account.

Archive Cleanup

Note: Your scheduled backupset will be considered for archive cleanup.
Send error report
You can send error report to IDrive support by running the below command:
$./send_error_report.pl

viewLog

Log out from your IDrive account
To end the logged in session for your IDrive account, run the below command:
$./Logout.pl

User must log out (optional) from the account to avoid any unauthorized access to their IDrive account. After logout, user needs to login again to perform most of the operations.

Note: Your scheduled backup or restore job will run even after you log out.



Updating your script bundle

Every script when gets executed displays a header which provide details of logged in IDrive account. Same header also displays information on any newly available script bundle. When you see a line A new update is available. Run check_for_update.pl to update to latest package, it means we have released a new improved version of script bundle.


To update to most recent available script bundle please perform the below command and follow the instructions:
$./check_for_update.pl

checkForUpdate


Edit user details

In case you want to reconfigure your IDrive account locally due to any reason or want to edit user details locally for your configured IDrive account then please perform the below command.

$./account_setting.pl


Only if your account is already configured in current machine you will find the menu which will allow you to reconfigure your IDrive account locally or will allow you to edit the user details locally for your IDrive account. Select the desired option and follow the instructions.


editUserDetails

Note: For some users, while re-configuring or editing account, 'Backup Type' will not be displayed and also while editing 'Restore From' location, list of devices will appear.



Uninstalling your script bundle

Uninstalling the script package from your system will leave the files/folders of your system liable to digital disasters.


To uninstall the script bundle, run the below command and follow the instructions.
$./Uninstall_Script.pl


This script will automatically remove all package script files and other dependency files. It will also cleanup the scheduled backup/restore jobs if any.



Others

Script bundle have few more script files (Header.pl, Helpers.pm, Configuration.pm, Constants.pm, IxHash.pm, Strings.pm, JSON.pm, utility.pl and Operations.pl) which are used internally by other scripts and users must not try to execute these scripts for any reason.


Scroll To Top