Cara daftar file dan folder yang tidak dikelola oleh paket DEB

12

Saya sedang dalam proses memindahkan file saya dari satu mesin Debian ke yang lain sehingga saya dapat menggunakan mesin yang lama untuk tujuan yang berbeda. Saya tidak ingin ketinggalan file apa pun karena saya akan memformat hard drive mesin lama secara tidak dapat diperbaiki.

Memikirkan hal ini lebih lanjut, saya menyadari bahwa semua file dan folder yang perlu saya salin adalah yang tidak dikelola oleh paket Debian yang diinstal. Apakah ada cara sederhana untuk membuat daftar file dan folder seperti itu?

Daniel Trebbien
sumber

Jawaban:

16

cruftadalah alat yang berguna persis untuk tujuan ini: ia membuat perbandingan antara sistem file dan database paket Debian yang diinstal. Selain daftar file yang tidak dikenal itu juga daftar file yang hilang tetapi harus ada di sana.

Saya menggunakannya secara rutin bersama-sama dengan debsumsketika saya perlu memulai administrasi sistem atau meningkatkan kerja pada mesin yang saya tidak urus sebelumnya. Ini memungkinkan saya menemukan modifikasi dan instalasi lokal serta merencanakannya, alih-alih pelanggan memberi tahu saya setelah pembaruan bahwa perangkat lunak mereka tidak berfungsi lagi.

Install:

apt-get install cruft

Daftar semua "cruft" tetapi abaikan direktori yang bernama:

cruft --ignore "/dev /proc /sys /root /home /tmp"

Informasi lebih lanjut:

man cruft
zless /usr/share/doc/cruft/README.gz
jepret
sumber
4

Jika Anda tidak melakukan sesuatu yang tidak biasa, maka jawabannya adalah bahwa segala sesuatu di /bin, /boot, /lib*, /sbindan /usrberasal dari paket Debian, kecuali bahwa /usr/localadalah milikmu; sisa sistem adalah milikmu. Lokasi tipikal yang Anda perlukan untuk membuat cadangan adalah /homedan /etc(selalu), /var(sebagian besar; misalnya /var/cachetidak perlu dicadangkan), /srv(jika Anda menggunakannya), dan /usr/localdan mungkin /opt.

Untuk daftar file biasa pada sistem /file yang tidak berasal dari paket Debian:

find / -xdev -type f | sort >/tmp/root.list
sort /var/lib/dpkg/info/*.list >/tmp/dpkg.list
comm -23 /tmp/root.list /tmp/dpkg.list

Jika Anda memiliki sistem file yang terpisah /usr, sertakannya dalam findperintah. Jika Anda memiliki sistem file yang terpisah untuk /homeatau /varatau lokasi khusus lainnya, sertakan dalam cadangan Anda.

Gilles 'SANGAT berhenti menjadi jahat'
sumber