GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana saya bisa membuat backup inkremental atomik dari sistem linux yang sedang berjalan menggunakan freeware?

Seperti yang Anda sebutkan, BTRFS dapat melakukan ini. Beginilah cara saya mencadangkan laptop saya secara rutin (yang memiliki waktu aktif 9 minggu, 5 hari saat saya mengetik ini).

Di dalam sistem file BTRFS saya, saya memiliki subvolume. Cara Anda membagi data menjadi subvolume dan cara Anda menumpuknya tidak penting di sini, selama Anda tidak menggunakan root sistem file untuk menyimpan data yang ingin dicadangkan.

Perintah berikut adalah untuk mengilustrasikan sintaks dan kemungkinan, saya sarankan membungkusnya dalam skrip yang berjalan sebagai cronjob atau systemd.timer.

Untuk memotret subvolume:

btrfs subvolume snapshot -r <source> <dest>

Untuk membuat serial snapshot:

btrfs send <snapshot>

Untuk membuat serial sebuah snapshot relatif terhadap yang lebih lama (yaitu diferensial):

btrfs send -p <start> <end>

Untuk menghasilkan diff, mengompresi dengan cepat, dan mengirim ke server cadangan, dengan pemantauan "kemajuan":

btrfs send -p <start> <end> | \
    pv -bart | \
    pbzip2 --best | \
    ssh [email protected] "cat > /backups/name.bz2"

Untuk melakukan hal serupa, tetapi buat ulang subvolume BTRFS di server cadangan daripada hanya aliran BTRFS terkompresi:

btrfs send -p <start> <end> | \
    pv -bart | \
    pbzip2 --best | \
    ssh [email protected] "pbzip2 -d | \
    btrfs receive <target>"

Untuk memulihkan, terapkan snapshot Anda ke sistem file BTRFS baru, melalui btrfs receive .

Berikut informasi lebih lanjut tentang Pencadangan Inkremental BTRFS


Seperti yang dikatakan @mark-k-cowan, Anda dapat melakukan ini dengan snapshot btrfs. btrfs terlalu kekanak-kanakan untukku. Menggunakan zfs dan snapshotnya akan lebih baik. Seperti yang dikatakan @brady-dean, snapshot LVM adalah metode filesystem-agnostic. Snapshot LVM dapat berdampak negatif besar pada performa.

Acronis memiliki modul kernel yang berfungsi pada lapisan blok untuk membuat snapshot. Datto Block Driver adalah modul kernel GPLv2 (ahem "freeware") yang melakukan hal yang sama. (Penafian:Saya tidak pernah menggunakannya.)


Linux
  1. Cara Mencadangkan Seluruh Sistem Linux Anda Menggunakan Rsync

  2. Bagaimana Cara Memeriksa Apakah Sistem Linux Berjalan di Sistem Fisik atau Mesin Virtual?

  3. Dapatkah Anda membuatnya? Kompilasi Program C di Linux Menggunakan Make Command

  1. Bagaimana cara memeriksa apakah suatu proses masih berjalan menggunakan Python di Linux?

  2. Cara memastikan aplikasi tetap berjalan di Linux

  3. Bagaimana saya bisa menemukan versi shell saya menggunakan perintah Linux?

  1. Cara Membuat CS:GO Server Di VPS Linux

  2. Cara memeriksa semua layanan yang berjalan di Linux

  3. Bagaimana cara mengetahui versi Linux yang saya gunakan?