Apa yang aman untuk dikecualikan dari cadangan sistem lengkap?

35

Saya mencari daftar jalur / file mana yang aman untuk dikecualikan untuk cadangan sistem / rumah lengkap.

Mengingat saya memiliki daftar paket yang diinstal.

  • /home/*/.thumbnails
  • /home/*/.cache
  • /home/*/.mozilla/firefox/*.default/Cache
  • /home/*/.mozilla/firefox/*.default/OfflineCache
  • /home/*/.local/share/Trash
  • /home/*/.gvfs/

  • /tmp/

  • /var/tmp/
  • bukan folder nyata tetapi dapat menyebabkan masalah parah saat 'memulihkan'
    • /dev
    • /proc
    • /sys

Bagaimana dengan...

  • /var/ secara umum?
  • /var/backups/ - bisa jadi cukup besar
  • /var/log/ - tidak memerlukan banyak ruang dan dapat membantu untuk perbandingan nanti
  • /lost+found/
seb
sumber
Ini adalah jawaban (sangat) terkait yang layak untuk dilihat (dengan asumsi ini tidak ditutup sebagai duplikat): askubuntu.com/questions/5596/how-to-clean-caches-in-my-homedir/…
Scaine
Saya tidak yakin tentang itu /home/*/.local/share/Trash. Saya sudah memulihkan file dari folder tempat sampah dengan cadangan. Itu adalah penghapusan yang salah, diperhatikan dan dibatalkan setelah saya membuat cadangan - dan memulihkan file cadangan masih dalam sampah.
Mateusz Konieczny
~ / .local / share / Trash / * tampaknya universal, tetapi dilakukan oleh pengguna.
SDsolar
Perhatikan bahwa ini telah diposting pada tahun 2011. Jarak tempuh Anda mungkin berbeda pada tahun 2017.
SDsolar

Jawaban:

33

Ketika rsyncsaya sistem saya ke partisi cadangan, saya mengecualikan ini:

--exclude=/dev/* \
--exclude=/home/*/.gvfs \
--exclude=/home/*/.mozilla/firefox/*/Cache \
--exclude=/home/*/.cache/chromium \
--exclude=/home/*/.thumbnails \
--exclude=/media/* \
--exclude=/mnt/* \
--exclude=/proc/* \
--exclude=/sys/* \
--exclude=/tmp/* \
--exclude=/home/*/.local/share/Trash \
--exclude=/etc/fstab \
--exclude=/var/run/* \
--exclude=/var/lock/* \
--exclude=/lib/modules/*/volatile/.mounted \
--exclude=/var/cache/apt/archives/* \

Dengan cara ini saya bisa boot ke partisi cadangan dengan cara yang sama saya bisa boot ke yang asli.

Jadi singkatnya, saya sarankan

  • tidak termasuk /{dev,proc,media,...}diri mereka sendiri, hanya isinya

  • tidak termasuk /var/{run,lock}, dan terutama yang besar/var/cache/apt/archives/

mengatur
sumber
2
Anda ingin mengecualikan SEMUA dari / dev.
psusi
@psusi - Ya, Anda benar. Saya mengedit posting saya. Terima kasih.
atur
2
Saya akan merekomendasikan menggunakan opsi -x dengan rsync untuk backup. Dengan begitu, ia tidak akan melewati batas filesystem, yang akan mengecualikan hal-hal seperti / dev / proc / sys / mnt dan / media. Anda masih harus mengecualikan /home/*/.gvfs.
Azendale
2
@ Azendale: mungkin. Di sisi lain, ketika Anda menggunakan sesuatu seperti --exclude=/proc/*, itu akan menyimpan direktori / proc pada cadangan (yang diperlukan jika Anda ingin mem-boot mirror), tetapi bukan isinya.
mengatur
atau pengguna Opera, saya akan menambahkan --exclude=/home/*/.opera/cachejuga :)
Grzegorz Wierzowiecki
4

Saya akan merekomendasikan untuk mengecualikan semua /usr(kecuali benteng /usr/local/) dan memiliki cadangandpkg --get-selections

Menurut pendapat saya, Full backup tidak terlalu berguna. Saya lebih suka data cadangan dan preferensi dan kemudian mengembalikan paket dari repositori resmi.

Tetapi apakah preferensi saya ...

/usrsebagian besar berisi konten biner statis dari paket distribusi. Menginstal ulang paket akan mengembalikan /usrkonten. Juga /bindan /sbinberisi binari dari paket distribusi.

/usr/localberisi paket yang diinstal secara manual (di luar paket distribusi). jadi ini layak untuk dicadangkan.

teis
sumber
2
Pendekatan yang sangat menarik. Ini akan menghasilkan cadangan yang jauh lebih kecil, tetapi membutuhkan lebih banyak masalah (waktu, bandwidth internet) saat memulihkan. Kompromi yang mungkin bernilai dalam beberapa kasus penggunaan. Pertanyaan: bagaimana /lib, hal yang sama berlaku? Dan bagaimana Anda mengembalikan pilihan paket seperti itu?
MestreLion
Ya, saya pikir Anda juga dapat mengecualikan /lib. Saya juga menambahkan bahwa alih-alih dpkg --get-selectionsmungkin lebih baik digunakan apt-mark, seperti yang dikatakan di sini: askubuntu.com/questions/101931/…
gerlos
2

Saya juga membaca semua jawaban dan semua pertanyaan terkait lainnya ketika saya mengkonfigurasi cadangan sistem lengkap saya.

2 sen saya tidak akan mengecualikan apa pun tetapi hanya ketika Anda melakukan pencadangan sistem lengkap dari sistem offline.

Izinkan saya menguraikan sekarang: Jika Anda mencadangkan sistem dari dalam dirinya sendiri, maka Anda dapat mengecualikan beberapa direktori seperti yang telah disebutkan tetapi ini bukan cara yang baik menurut saya karena dapat memperkenalkan beberapa bug nanti ketika memulihkan sistem. Sebagai contoh, jika Anda mengecualikan direktori / tmp, maka setelah mengembalikannya, / tmp tidak akan ada dan sistem akan membuatnya dan ini bisa membuat layar login macet karena masalah chmod & chown pada / tmp. Juga tidak mencadangkan ~ / .cache direktori dapat mengakibatkan memecah cache database dari Ubuntu Software Center.

Apa yang saya lakukan adalah menggunakan CD langsung dan menggunakan LuckyBackup dan membuat cadangan seluruh sistem tanpa menghilangkan apa pun. Sekarang ketika memulihkan, saya memilih 'hapus file yang tidak ada dalam sumber'. Dengan cara ini Anda akan memiliki seluruh snapshot sistem dipulihkan dengan tepat ke keadaan saat Anda membuat cadangan (agak seperti snapshotting a VM).

Gaurav Kumar
sumber
2
Banyak file yang seharusnya tidak disimpan karena bukan file asli, melainkan file semu . Anda mungkin ingin ingin menyimpan cache, tetapi tidak menyimpan isi /proc, /dev, sys. Isinya dibuat saat boot.
Teresa e Junior
1
@TeresaeJunior Ketika pendekatan ini diikuti dan pencadangan dilakukan dari sistem offline , konten dari file tidak-nyata ini sudah kosong.
Gaurav Kumar
Ya kamu benar, maaf! Saya tidak memperhatikan LiveCD yang Anda sebutkan.
Teresa e Junior
Saya khawatir sistem ini harus berjalan 24x7 jadi tidak punya kemewahan itu. Saya memiliki daftar pengecualian yang besar tetapi tetap terpaku pada 4G / var / log / kern * dan / var / log / messages * - Saya ingin mengecualikan mereka tetapi tidak ada yang berbicara mengenai hal itu. Bagaimana dengan mengecualikan / var / log / * sepenuhnya?
SDsolar