Sistem file Linux

13

Apa konvensi untuk lokasi file di Linux? Sejauh ini saya sudah berhasil menyimpulkan:

/ proc (referensi untuk menjalankan proses)

/ dev (referensi ke semua perangkat keras)

/ etc (file konfigurasi)

/ rumah (home)

/ mnt (perangkat terpasang)

/ media (perangkat yang dapat dilepas seperti CD, disk USB)

... tetapi bagian lain masih belum jelas, misalnya:

Di mana saya meletakkan sumber yang diunduh?

/ usr / src

/ usr / local / src

Di mana saya meletakkan program yang dikompilasi?

/tempat sampah

/ usr / bin

/ usr / local / bin

Apa perbedaan antara / bin dan / sbin ?

Apa perbedaan distribusinya?

Saya menyadari ini bukan satu pertanyaan, tetapi bagi saya tampaknya mereka semua harus dijawab bersama. Semoga yang lain juga bingung.

ikan buntal
sumber

Jawaban:

14

Anda mungkin ingin membaca Filesystem Hierarchy Standard ; itu referensi yang bermanfaat.

Direktori rumah Anda adalah tempat sebagian besar dari itu harus pergi. Berpura-puralah Anda bukan sysadmin; berpura-puralah Anda adalah orang lain dengan akun di sistem. Dalam direktori home Anda, misalnya /home/pufferfish, Anda dapat melakukan apa pun yang Anda inginkan. /home/pufferfish/bin,, /home/pufferfish/libdan /home/pufferfish/srcsemuanya merupakan pilihan konvensional, tetapi tidak ada yang benar-benar penting .

Untuk program yang dikompilasi, direktori / direktori mana pun yang Anda gunakan, pastikan itu / berada di PATH sehingga Anda benar-benar dapat menjalankannya tanpa mengetikkan skrip atau seluruh jalur yang dapat dieksekusi.

Distribusi tidak jauh berbeda. Saya telah menemukan bahwa manajer paket pada satu mungkin menginstal binari /usr/bin, sementara beberapa perpustakaan mungkin pergi ke tempat lain, dan sistem lain mungkin menginstal hal-hal di tempat lain. Saya biasanya harus melakukan riset untuk menemukan ke mana perginya setiap waktu.

Nikhil Chelliah
sumber
6

Kebetulan ada standar di dunia OS mirip Unix yang disebut Filesystem Hierarchy Standard yang menjelaskan praktik terbaik yang diikuti sebagian besar vendor Unix. Ini adalah bacaan yang baik dan layak jika Anda menghabiskan banyak waktu di * nix environment.

Standar Sistem Hirarki Filesystem

Jawaban untuk pertanyaan Anda:

Baik / usr / src dan / usr / local / src bekerja. Pilihanmu. Tetap konsisten.

/ bin adalah untuk perintah yang diperlukan untuk pengguna. Saya TIDAK akan menempatkan binari kustom di sana.

/ sbin adalah untuk sistem binari (biasanya sysadmin). Ini berisi hal-hal untuk boot dan utilitas fs.

/ usr / bin adalah tempat sebagian besar perintah pengguna hidup dan Anda biasanya akan menemukan bahwa sebagian besar sistem manajemen paket Linux menempatkan binari atau setidaknya symlink ke binari di sini.

/ usr / local / bin adalah tempat yang aman untuk menempatkan kode kompilasi Anda sendiri yang unik untuk mesin itu.

Mark Turner
sumber
6

Mungkin Anda harus melihat ini:

teks alternatif

teks alternatif

n00ki3
sumber
3

/ usr / local / adalah untuk perangkat lunak yang dikompilasi pada sistem ini. Ini mirip dengan / usr /, hanya saja itu tidak diinstal dari paket.

/ sbin / vs / bin / (dan / usr / sbin / vs / usr / bin): s adalah singkatan dari superuser. Program yang tidak perlu dipedulikan oleh pengguna normal dan seringkali tidak boleh dijalankan

Tadeusz A. Kadłubowski
sumber