Jakie pliki i katalogi można wykluczyć z kopii zapasowej katalogu domowego?

41

Duplikacja już teraz świetnie wykonuje wydajne kopie zapasowe, ale nadal chcę zminimalizować liczbę kopii zapasowych plików.

Jakie pliki lub katalogi można wykluczyć w katalogu domowym? Należy je wyraźnie wymienić, dozwolone są symbole wieloznaczne, ścieżki są względne w stosunku do katalogu domowego.

Lekensteyn
źródło
Świetne pytanie! Przydaje mi się analiza mojego katalogu domowego (tego, którego kopię zapasową utworzyłem) za pomocą narzędzia Disk Usage Analyzer i upewnienie się, że zignoruję wszystko, co pojawi się na górze i którego nie mam nic przeciwko utracie w przypadku utraty danych. Na przykład nie jestem zainteresowany srckopią zapasową mojego katalogu zawierającego lokalne kopie kodu źródłowego dostępnego online.
joelpet

Odpowiedzi:

38

Większość tych plików i katalogów jest odtwarzanych, jeśli ich brakuje. Są one głównie przeznaczone do skrócenia czasu uruchamiania aplikacji (pamięć podręczna rozszerzeń Firefox), wskazania locks ( .gksu.lock) lub zawierającego informacje specyficzne dla sesji (np. Identyfikator sesji dbus). Najnowsze dokumenty często się zmieniają i generalnie nie ma sensu ich tworzenia.

Te katalogi można wykluczyć:

.gvfs                           # contains mounted file systems?
.local/share/gvfs-metadata
.Private                        # contains the actual encrypted home directory
.dbus                           # session-specific
.cache
.Trash                          # do I need to say more?
.local/share/Trash
.cddb                           # cached info about audio CDs
.aptitude                       # cached packages lists

Specyficzne dla Flasha:

.adobe        # Cache for flash, maybe others?
.macromedia   # except for Flash persistence, there is no reason to keep this

Akta:

.xsession-errors            # contains errors from the current graphical session
.recently-used              # recently used files
.recently-used.xbel
.thumbnails
.Xauthority                 # session-specific
.ICEauthority
.gksu.lock
.pulse                      # directory
.pulse-cookie
.esd_auth

Specyficzne dla KDE:

.kde/share/apps/RecentDocuments # Recent documents on KDE
.kde/share/apps/klipper         # Contains a history of the Klipper clipboard (KDE)
.kde/share/apps/okular/docdata  # you will loose saved scrolling positions of PDFs
.kde/share/apps/gwenview/recentfolders
.kde/share/apps/kmess/displaypics  # cached other users' profile pics
.kde/share/apps/kmess/customemoticons  # cached emoticons of others

Specyficzne dla przeglądarki Firefox (patrz także folder Profile ):

.mozilla/firefox/*/Cache
.mozilla/firefox/*/minidumps    # in case Fx crashes dumps will be stored in this
.mozilla/firefox/*/.parentlock       # session-specific           
.mozilla/firefox/*/urlclassifier3.sqlite  # phishing database, recreated
.mozilla/firefox/*/blocklist.xml   # blacklisted extensions
.mozilla/firefox/*/extensions.sqlite  # extension database, recreated on startup
.mozilla/firefox/*/extensions.sqlite-journal
.mozilla/firefox/*/extensions.rdf
.mozilla/firefox/*/extensions.ini
.mozilla/firefox/*/extensions.cache
.mozilla/firefox/*/XUL.mfasl     # cached UI data, recreated
.mozilla/firefox/*/XPC.mfasl
.mozilla/firefox/*/xpti.dat
.mozilla/firefox/*/compreg.dat

Specyficzne dla Opery (powiązane pytanie na Superuser.com: Czy dokumentacja jest dostępna na plikach i katalogach w folderze profilu Opery? ):

.opera/temporary_downloads
.opera/cache
.opera/thumbnails
.opera/opcache
.opera/icons
.opera/application_cache
.opera/widgets/*/cache
.opera/lock

Komodo Edytuj :

.komodoedit/*/codeintel/db
.komodoedit/*/host-*/*/codeintel
.komodoedit/*/XRE/Cache
.komodoedit/*/XRE/.activatestate/komodo edit/Crash Reports
.komodoedit/*/XRE/.activatestate/komodo edit/*/Cache
.komodoedit/*/XRE/.activatestate/komodo edit/*/minidump
.komodoedit/*/XRE/.parentlock
.komodoedit/*/XRE/extensions.rdf
.komodoedit/*/XRE/extensions.ini
.komodoedit/*/XRE/extensions.cache
.komodoedit/*/XRE/XPC.mfasl
.komodoedit/*/XRE/XUL.mfasl
.komodoedit/*/XRE/xpti.dat
.komodoedit/*/XRE/pluginreg.dat
.komodoedit/*/XRE/compreg.dat
.komodoedit/*/XRE/*.sqlite-journal
.komodoedit/*/pystdout.log
.komodoedit/*/pystderr.log
.komodoedit/*/history.sqlite.bak
.komodoedit/*/running.lock
.komodoedit/*/mutex.lock
.komodoedit/*/*.xmlc
.komodoedit/*/startup-env.tmp
.komoeoedit/*/commandments.fifo
.komoeoedit/*/history.sqlite

GnuPG:

.gnupg/rnd
.gnupg/random_seed
.gnupg/.#*
.gnupg/*.lock
.gnupg/gpg-agent-info-*

Google Chrome:

.config/google-chrome/Default/Local Storage
.config/google-chrome/Default/Session Storage
.config/google-chrome/Default/Application Cache
.config/google-chrome/Default/History Index *

Inne aplikacje:

.pulse/icons                  # Pidgin
.java/deployment/cache        # Cached applets
.icedteaplugin
.icedtea
.gnome2/epiphany/favicon_cache
.dropbox                      # to avoid problems, let Dropbox re-create these
.dropbox-dist
Lekensteyn
źródło
@ rubo77 Ta istota już nie działa.
justfortherec
Dziwne, surowy Link nie działa, gdy nazywają go bezpośrednio, ale działa z shortener git.io: Można pobrać ignorelist z mojego GIST ze wget http://git.io/vmQZ2 -O /var/tmp/ignorelistNastępnie uruchomić rsync z rsync -a --progress --exclude-from=/var/tmp/ignorelist /home/$USER/ /media/$USER/linuxbackup/home/zobaczyć askubuntu.com/a/545676/34298
rubo77
HEAD i master nie działają, ale ten link jest prawidłowy:wget https://gist.githubusercontent.com/rubo77/8ffaadbc58ab099d2bc3/raw/ignorelist
Lekensteyn
10

Dobre pytanie. Lubię to - gdzie możemy gromadzić dane społeczności / listy i wybierać odpowiednie rzeczy. Oto mój .excludeplik. Podaję ten plik do rsync jako --exclude-file=parametr w wielu skryptach (co można również zrobić z duplikatem ). Zauważ, że pytanie implikuje „co chcesz / musisz zapisać”. Na przykład wykonuję kopię zapasową całego .mozillaDIR, ponieważ zawiera on wiele profili i poprawek i łatwiej jest zrzucić go z powrotem na dysk jako całość. Sugerowałem również w mojej konfiguracji: wykonuję wiele „kompilacji od podstaw instalacji” do testowania. Mam więc obraz clonezilli instalacji o dobrej, czystej i czystej podstawie i dodaję moje osobiste (/ domowe) dane przechowywane na USB po ich umieszczeniu na dysku; czasem selektywnie, czasem jako całość.

# Filename: admin/dotfiles/exclude
# Create Date: 20110307-23:36HRS
# ln -s admin/dotfiles/exclude ~/.exclude

.cache
.adobe
.aptitude
.compiz # no settings here; processes
.dbus
.dropbox # don't try to restore and reinitialize either of
.dropbox-dist # these DIRs; very messy results can happen
.elegant-gnome-backup
.fontconfig
.gnome2_private # MT; at least on my system
.pulse*
.gconfd
.gvfs
.macromedia
.local/share/Trash/
.thumbnails
Downloads/
Dropbox/ # recreated on re-initialization
Public/
Music/
Templates/ # stored on U1
Ubuntu One/ # recreated on re-initialization
wdir/iso/
wdir/backups/
Tomek
źródło
Jeśli używam podwójności za pośrednictwem DejaDup, to czy taki plik też istnieje? (od Ubuntu 16.04, nie ma ~/.excludetakiego użytkownika DejaDup jak ja)
Frank Nocke
2

Utworzyłem listę ignorowanych na https://github.com/rubo77/rsync-homedir-excludes

Możesz go używać z Duplicity lub rsync jak:

rsync -aP --exclude-from=rsync-homedir-excludes.txt /home/$USER/ /media/$USER/linuxbackup/home/$USER/

jest to regularnie aktualizowane, w tej chwili mamy to:

################################################
# These directories may definitely be excluded #
################################################

# Contains mounted file systems:

.gvfs
.local/share/gvfs-metadata
# contains the actual encrypted home directory
/.Private

# Session-specific:
/.dbus
/.cache
/.Trash
.Trash-1*
.local/share/Trash
/Trash

# Cached info about audio CDs:
.cddb

# Cached packages lists:
.aptitude

# Node Package Manager cache
.npm

#Flash-specific:

# Cache for flash, maybe others?
.adobe
# except for Flash persistence, there is no reason to keep this
.macromedia

#Files:

# Contains errors from the current graphical session
.xsession-errors
.wayland-errors

# Recently used files
.local/share/RecentDocuments
.recently-used
.recently-used.xbel
.thumbnails
.thumb
Thumbs.db
.DS_Store
.localised
.bash_history
.CFUserTextEncoding

# Common Unix Printing System
/.cups

# run-time configuration information for Subversion
/.subversion

# Python virtual environments
/.virtualenvs

# Session-specific
.Xauthority
.ICEauthority
.gksu.lock
.pulse
.pulse-cookie
.esd_auth

#KDE specific:

# Recent documents on KDE
.kde/share/apps/RecentDocuments
.kde4/share/apps/RecentDocuments
# Contains a history of the Klipper clipboard (KDE)
.kde/share/apps/klipper
.kde4/share/apps/klipper
# You will loose saved scrolling positions of PDFs
.kde/share/apps/okular/docdata
.kde/share/apps/gwenview/recentfolders
.kde4/share/apps/okular/docdata
.kde4/share/apps/gwenview/recentfolders
# Cached other users' profile pics
.kde/share/apps/kmess/displaypics
.kde4/share/apps/kmess/displaypics
# Cached emoticons of others
.kde/share/apps/kmess/customemoticons
.kde4/share/apps/kmess/customemoticons

#Firefox-specific (see also Profile folder):

.mozilla/firefox/*/Cache
# in case Fx crashes dumps will be stored in this
.mozilla/firefox/*/minidumps
# session-specific 
.mozilla/firefox/*/.parentlock
# phishing database, recreated
.mozilla/firefox/*/urlclassifier3.sqlite
# blacklisted extensions
.mozilla/firefox/*/blocklist.xml
# extension database, recreated on startup
.mozilla/firefox/*/extensions.sqlite
.mozilla/firefox/*/extensions.sqlite-journal
.mozilla/firefox/*/extensions.rdf
.mozilla/firefox/*/extensions.ini
.mozilla/firefox/*/extensions.cache
# cached UI data, recreated
.mozilla/firefox/*/XUL.mfasl
.mozilla/firefox/*/XPC.mfasl
.mozilla/firefox/*/xpti.dat
.mozilla/firefox/*/compreg.dat
# cached plugin data, recreated
.mozilla/firefox/*/pluginreg.dat

#SeaMonkey-specific (see also Profile folder):

.mozilla/seamonkey/*/Cache
# in case Fx crashes dumps will be stored in this
.mozilla/seamonkey/*/minidumps
# session-specific 
.mozilla/seamonkey/*/.parentlock
# blacklisted extensions
.mozilla/seamonkey/*/blocklist.xml
# extension database, recreated on startup
.mozilla/seamonkey/*/extensions.sqlite
.mozilla/seamonkey/*/extensions.rdf
.mozilla/seamonkey/*/extensions.ini
# cached UI data, recreated
.mozilla/seamonkey/*/xpti.dat
.mozilla/seamonkey/*/compreg.dat
# cached plugin data, recreated
.mozilla/seamonkey/*/pluginreg.dat

# Thunderbird Cache in your profile folder
.thunderbird/*/Cache

#Opera-specific (related question on Superuser.com: Is documentation available on files and directories in the Opera profile folder?):

.opera/temporary_downloads
.opera/cache
.opera/thumbnails
.opera/opcache
.opera/icons
.opera/application_cache
.opera/widgets/*/cache
.opera/lock

# Keychain dir (manage SSH and GPG keys, front-end to ssh-agent and ssh-add)
/.keychain

#Komodo Edit:

.komodoedit/*/codeintel/db
.komodoedit/*/host-*/*/codeintel
.komodoedit/*/XRE/Cache
.komodoedit/*/XRE/.activatestate/komodo edit/Crash Reports
.komodoedit/*/XRE/.activatestate/komodo edit/*/Cache
.komodoedit/*/XRE/.activatestate/komodo edit/*/minidump
.komodoedit/*/XRE/.parentlock
.komodoedit/*/XRE/extensions.rdf
.komodoedit/*/XRE/extensions.ini
.komodoedit/*/XRE/extensions.cache
.komodoedit/*/XRE/XPC.mfasl
.komodoedit/*/XRE/XUL.mfasl
.komodoedit/*/XRE/xpti.dat
.komodoedit/*/XRE/pluginreg.dat
.komodoedit/*/XRE/compreg.dat
.komodoedit/*/XRE/*.sqlite-journal
.komodoedit/*/pystdout.log
.komodoedit/*/pystderr.log
.komodoedit/*/history.sqlite.bak
.komodoedit/*/running.lock
.komodoedit/*/mutex.lock
.komodoedit/*/*.xmlc
.komodoedit/*/startup-env.tmp
.komoeoedit/*/commandments.fifo
.komoeoedit/*/history.sqlite

#GnuPG:

.gnupg/rnd
.gnupg/random_seed
.gnupg/.#*
.gnupg/*.lock
.gnupg/gpg-agent-info-*

#Google Chrome:

.config/google-chrome/Default/Local Storage
.config/google-chrome/Default/Session Storage
.config/google-chrome/Default/Application Cache
.config/google-chrome/Default/History Index *

#Chromium:

.config/chromium/Default/Local Storage
.config/chromium/Default/Session Storage
.config/chromium/Default/Application Cache
.config/chromium/Default/History Index *

#Local repositories (added by errantlinguist on 2015-04-13):
.gradle/caches
/.m2/repository

#indexer
.local/share/baloo
.local/share/zeitgeist
.local/share/akonadi

#Other apps:

# Pidgin
.pulse/icons
# Cached applets
.guayadeque/cache.db
.java/deployment/cache
.icedteaplugin
.icedtea
.gnome2/epiphany/favicon_cache

# other temporary files 
nohup.out

###############################################
# directories, probably not worth a backup    #
# (uncomment the files you don't need)        #
###############################################

#.android
#.AndroidStudio*/
#Android/Sdk
#.gradle
#.gvm
#.grails/
#.grails_history
#.kde/share/apps/nepomuk
#.local/share/notbit
#.local/libvirt
#.vagrant
#.vagrant.d
#.wine
#.twister
#/twister
#Applications/eclipse*
#/Downloads
#*Popcorntime*
#/Scribus
#/VirtualBox*
#
## Add Game Folders here:
#
#/games
#.local/share/Steam
#.steam
#Steam
#.minecraft
#.PlayOnLinux
rubo77
źródło
-1

Ostatnio zastanawiałem się nad zrobieniem tego rodzaju rzeczy i zauważyłem, że wiele plików w moim katalogu domowym, których nie chcę tworzyć, wydaje się nie mieć ustawionych uprawnień grupowych. Jeśli to samo dotyczy innych systemów, prawdopodobną listę podejrzanych można uzyskać za pomocą:

find ~ -not -perm -g+r

(Chociaż sprawdź dane wyjściowe, ponieważ chociaż moje wydawało się w większości dobre, moja skrzynka odbiorcza e-mail również pojawiła się na liście i nie wiem, jak dobrze będzie działać dla innych.)

Jest to szczególnie pociągające dla mnie, ponieważ mój katalog domowy jest zaszyfrowany (w tym nazwy plików), więc ręczna lista wykluczeń byłaby PITA, a zamiast tego powinienem móc korzystać z uprawnień grupy do automatycznego generowania listy wykluczeń.

(Wiem, że wątek jest stary, ale pomyślałem, że może to być przydatne dla kogoś.)

James C.
źródło
2
Zezwolenie na plik jest złym przewodnikiem określającym, czy plik jest potrzebny, czy nie. Na przykład prywatne klucze SSH powinny mieć restrykcyjne uprawnienia, ale na pewno chcesz je wykonać kopię zapasową.
Lekensteyn,
Uprawnienia nie są przeznaczone do użycia jako flagi kopii zapasowych. Możesz mieć wiele bardzo dobrych powodów, aby ustawić niestandardowe uprawnienia do plików i katalogów, a twoje podejście może coś zepsuć. Jeśli naprawdę nie lubisz list wykluczeń (dlaczego nie?), Zamiast tego użyj flagi zrzutu / nodump systemu plików ext3 i ect4, aby oznaczyć pliki do utworzenia kopii zapasowej / bez kopii zapasowej. Ta flaga została zaprojektowana właśnie do tego celu. Zobacz cyberciti.biz/faq/…
gerlos