Compare commits

..

3 Commits

Author SHA1 Message Date
ea42e14006 exclude chrome files 2025-09-24 08:12:20 +03:00
a7b9f7433d create .gitignore file 2025-09-24 08:11:58 +03:00
2c9f03ee52 change README.md 2025-09-24 08:11:42 +03:00
3 changed files with 29 additions and 22 deletions

0
.gitignore vendored Normal file
View File

View File

@@ -35,6 +35,9 @@ Thumbs.db
.config/google-chrome/*/History Index * .config/google-chrome/*/History Index *
.config/google-chrome/*/Service Worker/CacheStorage .config/google-chrome/*/Service Worker/CacheStorage
.config/google-chrome/*/WebStorage/*/CacheStorage .config/google-chrome/*/WebStorage/*/CacheStorage
.config/google-chrome/SingletonCookie
.config/google-chrome/SingletonLock
.config/google-chrome/SingletonSocket
# VS Code # VS Code
.config/Code/logs/ .config/Code/logs/

View File

@@ -3,30 +3,32 @@ This project maintains a list of directories and files you probably do not need
## Usage: ## Usage:
# download to `.rsync-ignore` ```
wget https://gitaly.ru/anpleenko/rsync/raw/branch/main/.rsync-ignore -O .rsync-ignore # download to `.rsync-ignore`
# or clone and copy to `.rsync-ignore` wget https://gitaly.ru/anpleenko/rsync/raw/branch/main/.rsync-ignore -O .rsync-ignore
git clone https://gitaly.ru/anpleenko/rsync # or clone and copy to `.rsync-ignore`
cd rsync-homedir-excludes git clone https://gitaly.ru/anpleenko/rsync
cp rsync-homedir-excludes.txt .rsync-ignore cd rsync-homedir-excludes
cp rsync-homedir-excludes.txt .rsync-ignore
# edit the file .rsync-ignore to your needs # edit the file .rsync-ignore to your needs
nano .rsync-ignore nano .rsync-ignore
# define a Backup directory (with trailing slash!) # define a Backup directory (with trailing slash!)
# some examples: # some examples:
BACKUPDIR=/media/workspace/home/$USER BACKUPDIR=/media/workspace/home/$USER
BACKUPDIR=/media/$USER/linuxbackup/home/$USER BACKUPDIR=/media/$USER/linuxbackup/home/$USER
BACKUPDIR=/media/$USER/USBSTICK/backup/home/$USER BACKUPDIR=/media/$USER/USBSTICK/backup/home/$USER
# first specify the "-n" parameter so rsync will simulate its operation. You should use this before you start: # first specify the "-n" parameter so rsync will simulate its operation. You should use this before you start:
rsync -naP --exclude-from=.rsync-ignore /home/$USER/ $BACKUPDIR/ rsync -naP --exclude-from=.rsync-ignore /home/$USER/ $BACKUPDIR/
# check for permission denied errors in your homedir: # check for permission denied errors in your homedir:
rsync -naP --exclude-from=.rsync-ignore /home/$USER/ $BACKUPDIR/ | grep denied rsync -naP --exclude-from=.rsync-ignore /home/$USER/ $BACKUPDIR/ | grep denied
# if it is all fine, actually perform your backup: # if it is all fine, actually perform your backup:
rsync -aP --exclude-from=.rsync-ignore /home/$USER/ $BACKUPDIR/ rsync -aP --exclude-from=.rsync-ignore /home/$USER/ $BACKUPDIR/
```
You can edit the exclude file before execution: You can edit the exclude file before execution:
- All lines starting with a `#` are ignored by rsync, i.e. those directories will be backed up. - All lines starting with a `#` are ignored by rsync, i.e. those directories will be backed up.
@@ -37,8 +39,10 @@ You can edit the exclude file before execution:
When running locally or with the `--whole-file` option (for backups over SSH), rsync doesn't modify files but replaces them entirely. This allows us to create a snapshot directory (with hardlinks) with the state of the backup directory at a certain point in time. When running locally or with the `--whole-file` option (for backups over SSH), rsync doesn't modify files but replaces them entirely. This allows us to create a snapshot directory (with hardlinks) with the state of the backup directory at a certain point in time.
Run this after finishing the `rsync` backup and it'll create a new snapshot: Run this after finishing the `rsync` backup and it'll create a new snapshot:
BACKUPDIR=/media/workspace/home/$USER ```
SNAPSHOT_DIR="$BACKUPDIR.snapshot_$(date +'%Y-%m-%d_%H%M%S' -u)" BACKUPDIR=/media/workspace/home/$USER
cp -al $BACKUPDIR $SNAPSHOT_DIR SNAPSHOT_DIR="$BACKUPDIR.snapshot_$(date +'%Y-%m-%d_%H%M%S' -u)"
cp -al $BACKUPDIR $SNAPSHOT_DIR
```
Next time you run your backup, the snapshot directory will be intact despite the changes rsync made to the files in the backup directory. Next time you run your backup, the snapshot directory will be intact despite the changes rsync made to the files in the backup directory.