Bagaimana mencegah agar saya tidak sengaja menghapus / mengubah file?

2

Saya menggunakan Ubuntu 10,04. Saya memiliki direktori besar dengan (banyak subdirektori) dan file data yang sering saya gunakan dalam skrip. Saya ingin memastikan saya tidak pernah secara tidak sengaja menghapus / menimpa / mengubah file / direktori di direktori super ini.

Bagaimana saya bisa melakukan itu?

David B
sumber
Pertimbangkan untuk menggunakan kontrol versi seperti git.
Sathyajith Bhat

Jawaban:

3

Sebagian besar dipesan dengan mengurangi perlindungan dan meningkatkan kenyamanan:

  • Simpan file di media yang hanya bisa dibaca secara fisik seperti CD-ROM.

  • Simpan file di sistem file terpisah yang Anda mount hanya-baca.

  • Jika Anda adalah administrator, buat pengguna lain dan buat file-file ini milik pengguna lain tersebut.

  • Gunakan FUSE bindf (Paket Ubuntu bindfs ) untuk membuat tampilan read-only dari pohon direktori, dan arahkan skrip Anda pada tampilan read-only ini :

    bindfs -p a-w /path/to/actual/tree /path/to/readonly/view
    myscript -d /path/to/readonly/view
    
  • Buat pohon direktori hanya-baca dengan chmod a-w /path/to/tree.

  • Buat salinan pohon dengan file yang ditautkan dan arahkan skrip Anda ke salinan. Maka skrip Anda mungkin masih memodifikasi file yang ada, tetapi jika mereka membuat, menghapus atau mengganti file, itu hanya akan mempengaruhi salinan.

    cp -al /path/to/actual/tree /path/to/readonly/view
    myscript -d /path/to/readonly/view
    

Saya sarankan Anda menggunakan bindf. Satu-satunya alasan saya melakukan hal lain dengan persyaratan Anda adalah jika tidak tersedia.

Jika Anda ingin skrip dapat menulis ke pohon direktori, tetapi tanpa mempengaruhi file yang sebenarnya, Anda bisa menggunakan sistem file gabungan, misalnya funionfs atau unionfs-fuse .

Gilles
sumber
2

Tidak ada cara nyata karena apa pun yang terjadi, Anda akan selalu dapat menghapusnya pada akhirnya.

Namun, Anda dapat mencoba dengan izin file. Klik kanan pada direktori dan atur akses folder ke Access file dan atur akses file ke read-only. Setelah itu klik pada Terapkan Izin ke File Terlampir. Dengan cara ini, Anda harus menghapus pengaturan ini secara manual ketika Anda memutuskan untuk menghapus file di direktori itu.

AndrejaKo
sumber
1
+1 ACL Read-only adalah solusi yang jelas dan terbersih.
paradroid
0

Untuk berbuat salah adalah manusia. Saya pernah menghapus file penting karena saya baru saja bangun dan saya masih mengantuk (tidak ada mabuk) :) Untungnya, itu terjadi lama setelah saya mempelajari beberapa trik yang membantu mengurangi dampak negatif dari tindakan konyol seperti itu. Di sini mereka:

  • selalu buat cadangan, pastikan secara berkala bahwa cadangan memang mengandung apa yang seharusnya dikandungnya, untuk menghindari situasi saat Anda kehilangan file, cobalah untuk mengembalikannya dari cadangan dan temukan bahwa karena alasan tertentu itu tidak terdapat dalam cadangan
  • gunakan kontrol versi
  • menggunakan sistem akuntansi seperti inotify, ini akan membantu Anda melacak kembali perubahan sistem file

Dari kejadian itu saya telah membuat aturan bersikeras: "Jangan pernah menyentuh komputer saat masih mengantuk".

vtest
sumber