You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+28-54
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
# Linux Backup Script
2
2
3
3
## Description
4
-
A Linux backup script with options for mirrored (sync) and incremental backups.
4
+
A Linux backup script with options for mirrored and incremental backups and remote bidirectional ssh support.
5
5
6
6
## Requirements
7
7
-**Operating System**: Linux.
@@ -10,8 +10,9 @@ A Linux backup script with options for mirrored (sync) and incremental backups.
10
10
---
11
11
12
12
## Features
13
+
- Remote ssh backup support.
13
14
- Detailed logs in the destination directory.
14
-
- Easy replication of backups to multiple disk drives.
15
+
- Easy replication of backups to multiple disk drives or server location.
15
16
- Crontab scheduling capability.
16
17
- Fast incremental backups.
17
18
- configuration file separate from the main script.
@@ -24,58 +25,36 @@ A Linux backup script with options for mirrored (sync) and incremental backups.
24
25
25
26
2. It's recommended to encrypt the destination drive with LUKS and set a secret password, noting it down in your password manager or on paper.
26
27
27
-
3.Choose which set of scripts you want to use (items 4, 5, or 6), as using them together may cause increased disk space usage.
28
+
3.Set run permission to the 'install.sh', 'remove.sh', and 'ssh_auto_config.sh' scripts
28
29
29
-
4.For **mirror backups**, copy (`make_rsync_backup.sh`, `restore_rsync_backup.sh`, `backup_path.txt`, and `Sounds` folder), to the destination drive.
30
+
4.Double-click on 'install.sh' to install app
30
31
31
-
5.For **incremental backups with rsync**, copy (`make_rsync_inc_backup.sh`, `inc_backup_path.txt`, and `Sounds` folder) to the destination drive.
32
+
5.Open 'ssh_auto_config.sh' and set 'SSH_USER_SERVER' to your username@servername
32
33
33
-
6.For **incremental backups with tar**, copy (`make_tar_inc_backup.sh`, `restore_tar_inc_backup.sh`, `inc_backup_path.txt`, and `Sounds` folder) to the destination drive.
34
+
6.Double-click on 'ssh_auto_config.sh' for auto config and send ssh public key to the server
34
35
35
-
7.Configure the source and destination directories for backups in the configuration files (`backup_path.txt` or `inc_backup_path.txt`), which will be created automatically.
36
+
7.Set the source and destination directories for backups in the configuration files (`backup.conf`), which will be created automatically.
36
37
37
-
The first backup will be full (time-consuming), but subsequent backups will copy only modified files since the last backup, making them much faster.
38
+
8.The first backup will be full (time-consuming), but subsequent backups will copy only modified files since the last backup, making them much faster.
38
39
39
40
---
40
41
41
42
## Configuration
42
43
43
-
### Mirror Backup
44
+
### Make Backup
45
+
-**BACKUP_TYPE**: Backup type selection
46
+
-**DAY_LIMIT**: Number of days to keep backups (valid for rsync)
@@ -98,25 +75,21 @@ DAY_LIMIT=30 # Backup History = 30 days
98
75
## Usage
99
76
100
77
```bash
101
-
# Perform incremental backup with rsync
102
-
./make_rsync_inc_backup.sh
103
78
104
-
# Perform mirrored backup with rsync
105
-
./make_rsync_backup.sh
79
+
# For backup directories:
80
+
# Type 'backup' in the terminal window in the same directory where the backup.conf file is located
81
+
backup
106
82
107
-
# Restore mirrored backup with rsync
108
-
./restore_rsync_backup.sh
83
+
# For restore directories:
84
+
# Type 'restore' in the terminal window in the same directory where the backup.conf file is located
85
+
restore
109
86
110
-
# Perform incremental backup with tar
111
-
./make_tar_inc_backup.sh
112
-
113
-
# Restore incremental backup with tar
114
-
./restore_tar_inc_backup.sh
115
87
```
116
88
117
89
---
118
90
119
91
## Limitations
92
+
- Does not copy files directly, only folders containing the files.
120
93
- No built-in assistant for restoring incremental rsync backups.
121
94
- Invalid file names may cause backup errors.
122
95
- Backups cannot be made from Linux system files to a Windows partition (NTFS, EXFAT, FAT32, or FAT). Use Linux file systems like ext4 or btrfs instead. However, NTFS can still be used for common file copies with mirror backups.
@@ -144,7 +117,8 @@ DAY_LIMIT=30 # Backup History = 30 days
144
117
| 1.0.0.17 | 2025/01/27 | Changed scripts to enable automatic backups scheduled on Linux (Crontab). |
0 commit comments