Cara Mengecualikan File dari Rsync
Rsync adalah salah satu utilitas paling berguna untuk administrator server, tetapi disinkronkan segala sesuatu secara default, yang dapat mengganggu jika aplikasi Anda membuat banyak file sementara. Berikut cara mengecualikan file saat menggunakan rsync.
Tidak termasuk dari Daftar di File
Ini adalah metode yang ideal untuk mengecualikan file dan folder, karena Anda selalu dapat mengedit daftar dan men-tweak hal-hal jika perlu. Berikut ini sintaksnya:
rsync --exclude-from = / path / ke / exclusion-file / path / ke / source / path / ke / dest
Yang rumit dengan rsync adalah Anda harus menggunakan jalur relatif ketika Anda mencoba untuk mengecualikan sesuatu, karena ketika mencoba untuk mencocokkan pengecualian, ia tidak akan menggunakan bagian pertama dari jalur untuk pertandingan ... itu aneh.
Katakan, misalnya, Anda mencoba membuat cadangan / data / web / dan mengirimkannya ke server lain, jadi Anda menggunakan perintah seperti rsync -a / data / web / user @ server: / backups / data / web / untuk membuatnya terjadi ... tetapi Anda benar-benar ingin melewatkan sinkronisasi folder / data / web / cache /. Ketika rsync pergi untuk memeriksa daftar pengecualian Anda untuk setiap item yang disinkronkan, itu tidak akan memeriksa / data / web / cache / karena perintah rsync asli Anda didasarkan pada folder / data / web /. Itu hanya akan memeriksa "cache /" terhadap daftar. Jadi, Anda harus memasukkan "cache" ke dalam daftar, bukan path lengkap. Contoh:
rsync -a --exclude-from = / data / pengecualian / data / web / / backup /
Sekarang untuk mengecualikan / data / web / cache dan / data / web / temp dari rsync menggunakan perintah ini, kami akan menghapus bagian / data / web / path dan file / data / pengecualian akan berisi ini:
cache * temp *
Anda akan perhatikan bahwa saya menambahkan * ke jalur, untuk memastikan bahwa itu cocok dengan apa pun yang dimulai dengan "cache" di awal. Anda dapat menggunakan pola bintang ini untuk alasan yang lebih berguna jika Anda ingin - katakanlah Anda ingin mengecualikan semua file .txt agar tidak disinkronkan. Anda akan memulai pola dengan bintang untuk memastikan bahwa selalu cocok, dan menambahkan ini:
*.txt
Itu akan memastikan bahwa jenis file tersebut dilewati selama sinkronisasi. Cukup sederhana di luar itu.
Tidak Termasuk Barang Tunggal
Teknik ini jauh kurang bermanfaat, tetapi Anda dapat menggunakannya dengan cepat jika perlu. Jika Anda membuat skrip untuk menggunakan rsync, seperti biasanya, Anda harus meluangkan waktu ekstra untuk mengecualikan dari daftar file sebagai gantinya untuk memudahkan pemeliharaan di masa mendatang. Sintaksnya sangat mirip:
rsync --exclude = relatif / path / ke / pengecualian / sumber / dest
Jalur relatif yang sama harus diterapkan di sini seperti di atas.