Bagaimana cara backup saya Raspberry Pi?
Saya telah menulis program untuk Raspberry Pi (berjalan Raspbian) selama beberapa minggu sekarang dan ingin memastikan bahwa saya melindungi pekerjaan yang telah saya lakukan.
Bagaimana saya bisa backup file-file yang telah saya buat?
Dapatkah saya hanya pasang SD card ke Windows (XP atau 7) PC dan menyalin ke hard drive lain atau SD card?
298
17
Jika anda ingin mempertahankan semua data, anda mungkin akan harus membuat disk image. Selain itu, Windows tidak dapat mengenali khas Linux filesystem, sehingga anda mungkin tidak't bahkan dapat melihat file anda, ketika anda pasang di kartu SD anda.
Menciptakan disk image yang akan melestarikan tidak hanya file tetapi juga filesystem struktur dan ketika anda memutuskan untuk flash anda baru kartu SD, anda akan dapat hanya pasang dan itu akan bekerja.
Linux
Pada Linux, anda dapat menggunakan standar `dd` alat:Di mana
/dev/sdx
adalah kartu SD anda.Mac
Pada Mac, anda juga dapat menggunakan standar `dd` alat dengan sintaks yang sedikit berbeda:Di mana
/dev/rdiskx
adalah kartu SD anda.(menggunakan rdisk lebih disukai sebagai bahan baku perangkat - lebih cepat)
Untuk mengetahui disk perangkat anda adalah tipe
diskutil list
pada prompt perintah - juga, anda mungkin perlu menjadi root; untuk melakukan ini, ketiksudo -s
dan masukkan password jika diminta.Windows
1
Pada Windows, anda dapat menggunakan membalikkan proses yang digunakan ketika berkedip kartu SD.
Anda dapat menggunakan Win32 Disk Imager, yang merupakan alat pilihan untuk berkedip kartu SD dari Yayasan. Cukup masukkan nama file (lokasi dan nama dari backup file gambar yang akan disimpan), pilih perangkat (SD card) dan tekan baca:
Tentu saja, anda juga dapat menggunakan Rawwr,
dd
untuk Windows atau alat serupa, proses ini sangat mirip.Pilihan 2
Jika anda don't ingin mencadangkan seluruh sistem anda, tetapi hanya file tertentu, saya sarankan anda terhubung ke Raspberry Pi via SFTP dan menyalin file ke komputer lokal anda (Anda dapat menggunakan WinScp klien). Jika anda memiliki SSH diaktifkan, SFTP biasanya tidak memerlukan konfigurasi khusus di Raspberry Pi samping.
Pilihan lain adalah untuk copy file ke sistem remote menggunakan rsync.
Anda juga dapat menginstal driver khusus agar Windows anda dapat membaca
ext
filesystem (dan dengan demikian akan dapat membaca seluruh kartu SD), sepertiext2fsd
tapi itu mungkin tidak layak usaha.Karena gambar akan menjadi ukuran yang sama seperti kartu SD anda, anda mungkin ingin untuk kompres itu. Hal ini dapat dicapai hanya dengan favorit anda menggunakan alat kompresi, seperti
gzip
, 7zip, WinZip, WinRar ...Jika anda menjalankan Linux, maka anda dapat menggunakan
dd
perintah untuk membuat backup penuh dari gambar:atau untuk kompresi:
Di mana
sdx
adalah kartu SD anda.Untuk mengembalikan backup, anda reverse perintah:
atau ketika dikompresi:
Selain itu blok-tingkat backup, ada dua pendekatan umum untuk menangani sumber: untuk arsip itu terus menerus (1), atau untuk menggunakan sistem kontrol revisi (2).
Kita akan menggunakan command-line (setiap terminal lokal atau SSH koneksi ke Raspberry Pi mesin), kan?
1. Arsip
2. RCS (Git misalnya)
Pada Mac anda don't ingin menjadi menggunakan
/dev/diskn
. Anda harus menggunakan/dev/rdiskn
sebaliknya, di mana n adalah jumlah OS menggunakan untuk mengidentifikasi kartu SD anda. Hal ini mengurangi waktu yang diperlukan untuk menyalin dengan jumlah yang besar.Jadi untuk optimal proses backup di Mac, saya akan merekomendasikan melakukan hal-hal berikut:
Menjalankan
diskutil list
, dan menemukan disk yang sesuai untuk anda Raspberry Pi's SD card:Jelas
/dev/disk1
saya 8GB SD card, partisi Linux namanya juga sedikit petunjuk.Namun, alih-alih menggunakan
/dev/disk1
dengandd
, anda harus menggunakan/dev/rdisk1
, seperti:Dan untuk mengembalikannya, hanya swap
jika
(input file), dandari
(output file) parameter:Atau, dengan
gzip
, untuk menyimpan sejumlah besar ruang:Dan, untuk menyalin gambar ke SD:
Untuk informasi lebih lanjut, lihat wiki ini halaman.
Anda dapat menjalankan perintah ini dari PC Linux anda dengan banyak ruang:
Sebagai prasyarat anda'll perlu memiliki yang dihasilkan .ssh keys dan disalin
id_XXX.pub
ke/root/.ssh/authorized_keys
.It's mungkin untuk memiliki masalah dengan file sistem sejak itu's hidup cadangan, tetapi jika anda Raspberry Pi isn't real sibuk biasanya akan OK.
It's mungkin lebih cepat untuk melakukan kompresi pada PC seperti ini:
Jika anda menggunakan Windows:
Download Win32 Disk Imager.
Membuat path file yang ingin anda gunakan untuk menyimpan gambar anda. (Saya menggunakan C:\RasPi_Bkp)
Menjalankan Win32 Disk Imager
Browse ke file cadangan anda jalan di tempat, dan ketik nama file.
Klik simpan
Pastikan perangkat yang ditampilkan dalam menu drop-down di sebelah kanan file path adalah salah satu yang ingin anda back up.
Klik "Baca"
Menunggu.
Saya menjalankan Raspbian dan menggunakan dd dan cron untuk melakukan backup otomatis dari kartu SD saya untuk saya USB drive eksternal.
Itu adalah benar-benar solusi sederhana. Ini berjalan seminggu sekali pada 2 am pada senin pagi dan membuat sebuah gambar dari kartu SD.
Saya menulis sebuah script yang menutup layanan seperti lighttpd dan cron, untuk meminimalkan risiko kartu SD yang ditulis di tengah-tengah backup, kemudian panggilan dd, sebelum memulai layanan lagi ketika backup telah selesai.
I've menempatkan script dan beberapa petunjuk di blog saya, http://www.stuffaboutcode.com/2012/08/raspberry-pi-auto-backups.html
Jika program anda adalah semua dalam pi userid, ada's benar-benar tidak ada alasan untuk mem-back up seluruh filesystem, seperti yang disarankan. apa yang saya lakukan adalah untuk hanya back up tunggal id. Saya jalankan perintah:
dari pi's home directory, yang menciptakan file pi.tgz, yang berisi semua file dan direktori yang terdapat di sana (tidak termasuk file yang tersembunyi). Saya kemudian scp file ini ke yang lain linux komputer, tapi anda bisa ftp atau e-mail ke suatu tempat untuk aman-menjaga... apa pun yang masuk ke komputer lain.
Hal ini menciptakan banyak file yang lebih kecil untuk anda back-up.
Khawatir tentang semua paket-paket tambahan anda've dipasang di sepanjang jalan? Membuat script yang akan melakukan pemasangan untuk anda lagi harus anda butuhkan untuk menciptakan kartu SD anda, dan menyimpannya di pi's home directory di suatu tempat. (Aku punya ~/bin direktori untuk hal-hal seperti itu). Memiliki semua perintah yang anda butuhkan untuk melakukan pemasangan untuk membawa anda kembali ke posisi yang anda inginkan. Itu dokumen perubahan anda, dan memungkinkan anda untuk dengan cepat membangun sebuah SD card. Ini akan memuat perintah-perintah dalam bentuk:
Mulai keluar dengan
sehingga sistem anda juga dibawa hingga ke tingkat saat ini sebelum anda mulai menambahkan paket anda.
Karena ini akan di pi.tgz, anda'll memiliki ketika anda membutuhkannya.
Untuk Debian anda bisa menggunakan dd dan tar. Hal ini akan membuat salinan lengkap dari kartu SD anda dan akan memerlukan eksternal (SD card) penyimpanan, mungkin dipasang USB atau drive jaringan.
Dengan /dev/sdd menjadi lokasi dari kartu SD anda, dan
dari
menjadi nama file output.Untungnya Raspberry Pi dapat membuat cadangan dari dirinya sendiri yang independen dari primary OS yang digunakan untuk mengakses Raspberry (Windows, Linux, Mac). dd, tar dan rsync adalah alat yang berbeda untuk membuat backup di Linux. Semua jenis backup yang dapat dibuat dengan berjalan Pi yang disediakan itu's menghentikan semua sibuk tugas-tugas seperti mysql, smb, dlna, owncloud, seafile, apache et al sebelum membuat cadangan. Ada berbagai pertanyaan di mana pendekatan dijelaskan secara lebih rinci dan solusi yang mungkin dijelaskan di sini
Jika anda Raspberry Pi terhubung ke jaringan dan anda ingin otomatis on-the-fly backup, mungkin cara termudah adalah Bittorent Sync - sangat mudah diinstal dan berjalan dengan lancar dan stabil pada Pi dan banyak platform lainnya.
Tidak ada yang lebih menakutkan dd, sync, tar, ..., pemula ramah SD Card Copier
Versi baru dari Raspbian yang disebut stretch memiliki seorang pemula sangat cocok untuk aplikasi yang disebut Kartu SD Copier. Anda don't perlu menggunakan Linux alat-alat seperti dd dll. Ia bahkan bisa copy kartu besar untuk kartu-kartu kecil.
Bagaimana melakukannya
Anda mulai dengan GUI RPi aplikasi ikon menu di pojok kiri atas, pergi ke Aksesoris, lalu klik Kartu SD Copier.
Semua yang perlu anda lakukan adalah beberapa klik dalam GUI!
Setelah anda membuat backup SD card, anda dapat menggunakan Windows Disk Manager untuk membaca kartu's gambar untuk Windows file dan menyimpannya dalam direktori Windows. Dengan cara ini anda hanya perlu fisik kartu SD dan menyimpan banyak versi dari gambar di Windows PC.
Tentu saja anda hanya bisa menggunakan cadangan kartu sebagai copy pekerjaan, untuk mengganti kartu yang asli, yang sekarang menjadi master card, dan kunci di tempat yang aman.
Ketika mencari untuk membuat gambar yang disesuaikan SD card saya menemukan posting ini. Jawaban terbaik berikut membahas pencitraan kartu SD, tapi apa yang saya cari diperlukan menyusut filesystem untuk membuat gambar yang sekecil mungkin. Akhirnya saya membuat sendiri alat untuk melakukan hal ini dan garis besar proses di: https://raspberrypi.stackexchange.com/a/37899/32585
Berikut adalah 3 pilihan:
Dalam versi terbaru dari Raspbian, ada sebuah alat yang mengubah OS dan file ke dalam .file img yang anda kemudian dapat menempatkan pada USB, atau PC anda.
Pasang SD card ke PC Windows, dan start up Win32 Disk Imager (install di sini jika anda belum't sudah.)
(1) jenis nama & lokasi untuk athe file gambar. Di (2), pilih huruf drive dari kartu SD anda. Kemudian tekan 3. Ini tidak sama seperti pilihan 1.
Saya membuat sebuah utilitas untuk backup raspberry pi jika anda adalah Linux. Ini juga akan mengecilkan gambar dari raspberry pi, sehingga anda dapat menempatkan .iso yang lebih kecil SD card: RaspberryPiShrink
Ini akan menjalankan script python yang akan memandu anda melalui proses. Hanya pasang di kartu microSD anda ke Ubuntu, Linux Mint atau Debain komputer, dan ikuti di terminal petunjuk.
Aplikasi android ini akan membaca SD card ke .img file, dan zip itu di waktu yang sama: https://play.google.com/store/apps/details?id=com.redrobe.raspicardimager
I've telah menggunakan usbit untuk Windows. It's satu-satunya alat yang dapat saya temukan yang akan memungkinkan anda untuk swap lebih besar dari SD card ke yang lebih kecil. Semua yang saya lakukan adalah mencentang berikut pada halaman pilihan; Abaikan ukuran cek dan Memotong kebesaran gambar.
Hal ini memungkinkan saya untuk swap saya OpenELEC dan Xbian gambar dari 16 GB kelas 4 SD 8 GB class 10 kartu.
It's JAUH lebih mudah daripada mengubah ukuran tabel partisi, dll.