Saya dapat memahami alasan menyembunyikan file dan folder di /home/user
direktori untuk mencegah pengguna mengacaukan berbagai hal. Namun, saya tidak melihat bagaimana alasan yang sama dapat diterapkan pada file di /etc
, /boot
dan /var
direktori yang merupakan domain administrator.
Pertanyaan saya adalah mengapa beberapa file dan folder disembunyikan dari administrator? Contoh:
/boot/.vmlinuz-3.11.1-200.fc20.x86_64.hmac
/etc/.pwd.lock
/etc/selinux/targeted/.policy.sha512
/etc/.java
/etc/.java/.systemPrefs
/etc/skel/.bash_profile
/root/.ssh
/root/.config
/var/cache/yum/x86_64/20/.gpgkeyschecked.yum
/var/spool/at/.SEQ
/var/lib/pear/.filemap
ls
perintah hanya tidak file daftar dimulai dengan titik secara default (lihatinfo ls
) - itu desain khusus ini bagian dari perangkat lunak.ls
; juga ekspansi shell dari gumpalan tidak akan menyertakan file-file itu kecuali titik awal secara eksplisit termasuk dalam pola, dan biasanya manajer file tidak akan memperlihatkannya kecuali jika Anda memilih opsi "Tampilkan file tersembunyi" (ya, opsi itu menggunakan istilah itu).Jawaban:
Anda salah mengartikan alasan utama untuk "file tersembunyi". Bukan itu
Meskipun mungkin memiliki konsekuensi ini untuk pengguna yang sangat baru sampai mereka mengetahui apa itu "file dot" ( file dot dan direktori dot mungkin istilah yang lebih tepat dan spesifik daripada "tersembunyi"). Dengan sendirinya itu tidak mencegah Anda dari main-main dengan hal-hal - itulah gunanya izin. Mungkin membantu untuk menunjukkan kepada pengguna baru bahwa ini adalah sesuatu yang mereka tidak boleh mainkan sampai mereka mengerti untuk apa itu.
Dengan demikian Anda dapat menganggap awalan titik sebagai semacam akhiran file - perhatikan bahwa mereka biasanya tidak memiliki salah satunya, meskipun mereka dapat melakukannya. Ini menunjukkan file ini tidak menarik untuk penjelajahan umum, itulah sebabnya
ls
dan biasanya browser file tidak akan menampilkannya. Namun, karena ini adalah awalan alih-alih sufiks, ada bonus tambahan, ketika Anda menampilkannya (ls -a
) dalam urutan leksikografis, untuk melihat semuanya terdaftar bersama.Tujuan normal dari file seperti ini adalah untuk digunakan oleh suatu aplikasi (misalnya konfigurasi). Anda tidak harus menggunakannya secara langsung atau bahkan menyadarinya.
Jadi, "persembunyian" ini tidak dimaksudkan untuk benar-benar menyembunyikan file dari pengguna karena untuk mengurangi kekacauan dan menyediakan beberapa organisasi secara konseptual.
sumber
git
memindai direktori yang diberikan, jika ada.gitignore
file yang hadir, itu akan membacanya; dan ketika Anda mulaigdb
, itu akan membaca$PWD/.gdbinit
file jika ada ( dan a~/.gdbinit
; metode umum lainnya)./etc/skel
berisi file yang akan disalin ke direktori home pengguna baru, oleh karena itu nama-nama itu, tentu saja, sama dengan di direktori home user. Ini menjelaskan/etc/skel/.bash_profile
. Direktori/root
juga merupakan direktori home, yaitu direktori home dari penggunaroot
. Ini menjelaskan/root/.ssh
dan/root/.config
./etc/.pwd.lock
tampaknya merupakan file kunci. Anda biasanya tidak tertarik pada file kunci, oleh karena itu masuk akal untuk menyembunyikannya.Untuk file-file lain, saya tidak tahu untuk apa file-file itu, tapi saya yakin ada juga penjelasan yang bagus mengapa mereka disembunyikan.
Dan tentu saja goldilocks benar bahwa dotfiles disembunyikan bukan untuk mencegah orang mengacaukannya (ide dasar Unix adalah berasumsi bahwa pengguna tahu apa yang dia lakukan), tetapi untuk mencegah mereka mengacaukan daftar direktori Anda ( walaupun untuk file konfigurasi di direktori home saya akan menganggap
etc
subdirektori sebagai solusi yang lebih baik).sumber
Ini mungkin jawaban yang sangat di opini, tapi saya pikir alasan utama file dot dan direktori dot ditandai seperti itu bukan untuk menyembunyikan atau mengaburkan mereka - saya pikir itu hanya untuk membiarkan pengguna tahu bahwa dalam file-file dan direktori adalah program dan pengguna pengaturan yang dapat diubah oleh mereka atau oleh program itu sendiri.
Fakta bahwa file dot dan direktori dot dihilangkan secara default oleh baris perintah
ls
dan dari pandangan di sebagian besar manajer file hanyalah komoditas - Anda tidak ingin menampilkan detail internal untuk semuanya, kecuali diminta oleh pengguna; jika pengguna ingin mengubah pengaturan, dan dia tidak bisa melakukannya melalui GUI, maka sangat mungkin untuk menemukan pengaturan yang dia cari dalam file dot .mis.> di dalam
$HOME/.vimrc
Anda akan menemukan pengaturan konfigurasi untukvim
.sumber