Saya baru mengenal Linux, jadi maafkan saya atas kemungkinan kebingungan yang mungkin Anda temui dalam pertanyaan ini.
Dari apa yang saya mengerti, filesystem menentukan bagaimana sebuah partisi menyimpan / mengelola file, dengan standar seperti ext2, ext3, reiserfs, xfs, dll. Kadang-kadang saya melihat orang-orang tampaknya merujuk masing-masing " directory
" sebagai
/boot filesystem
/usr/bin filesystem
/root filesystem
/bin filesystem
Mengapa kita menyebutnya sebagai filesystems
?
Jika masing-masing dari mereka adalah partisi, itu membingungkan saya karena sejauh yang saya tahu, /usr
dan /usr/bin
cenderung berada di partisi yang sama, tetapi saya melihat orang-orang merujuk keduanya /usr filesystem
dan /usr/bin filesystem
.
Jika di filesystem
sini setara dengan Window's directory
, tidak jelas bagi saya karena ternyata filesystem lebih dari sekadar direktori. Juga, sejauh yang saya tahu, Linux tidak memiliki directory
konsep; semua adalah file.
sumber
/root
, saya pikir itu dapat diabaikan mengingat kompleksitas dari situasi.Jawaban:
Seperti yang saya tulis di https://superuser.com/a/293160/38062 :
Masalahnya di sini adalah kata "filesystem". Dalam dunia POSIX / Unix / Linux, digunakan untuk mengartikan beberapa hal berbeda.
/
dan seperti yang disajikan ke perangkat lunak aplikasi oleh kernel sistem operasi. Dengan makna ini, orang berbicara tentang sistem operasi POSIX yang memiliki " pohon sistem file tunggal ", misalnya./usr
sistem file saya ". "/usr
" di sini adalah titik mount (diharapkan) volume, atau (dalam beberapa skema partisi) label pengenalnya./proc
" atau "menggunakan sistem file tmpfs untuk/tmp
".Anda melihat arti # 1 ketika Anda melihat "
/usr/bin
filesystem". Ini pohon sistem file yang di-root di direktori/usr/bin
. Ya, Linux memang memiliki konsep direktori.Arti # 2 dan makna # 3 adalah salah baca Anda. Orang-orang tidak berbicara tentang
/usr/bin
sebagai set data pada disk, ditandai oleh slicing / partisi. Mereka juga tidak berbicara tentang/usr/bin
jenis driver sistem file tertentu, atau format volume disk tertentu.Bacaan lebih lanjut
sumber
Tentu saja Linux menggunakan konsep direktori. Konsep direktori sama dengan di Windows.
Konsep sistem file juga sangat mirip dengan apa yang digunakan di Windows. Windows biasanya menggunakan NTFS atau FAT - Linux biasanya menggunakan ext2, ext3, ext4 dan sebagainya, itu bedanya.
Apa yang berbeda, adalah bahwa di Linux file / direktori dari semua partisi yang tersedia disusun menjadi satu pohon. Di Windows Anda merujuk ke partisi yang berbeda menggunakan huruf, fe "a:", "c:", di Linux path lengkap ke file yang tersedia dimulai dengan "/" - direktori root. Sebagai contoh, ada partisi terpisah pada Anda hdd dengan file yang direkrut untuk mem-boot sistem: Anda menjalankan perintah 'mount' dengan argumen yang sesuai dan konten dari partisi ini tersedia di jalur "/ boot /". Jadi, jalur "/ boot" dan "/ home" dapat merujuk ke data pada partisi yang berbeda, partisi ini mungkin memiliki sistem file yang berbeda. Mungkin menyebabkan kesalahpahaman Anda.
Direktori yang secara fisik terletak di partisi yang sama akan selalu "memiliki sistem file yang sama". Ketika seseorang berbicara tentang sistem file dari suatu direktori, itu sebenarnya tentang sistem file dari partisi di mana direktori ini berada.
(Koreksi kecil dan mungkin tidak penting: kadang-kadang sistem file adalah virtual dan tidak ada partisi yang sesuai. Misalnya "/ proc" berisi sesuatu, yang terlihat sangat mirip dengan file, tetapi "file" ini virtual, mereka tidak tinggal di hard drive dan berisi informasi tentang proses yang sedang berjalan. Dan ada sistem file "procfs" khusus yang menyediakan antarmuka seperti file yang biasa untuk data ini)
sumber
Disk dibagi menjadi satu atau lebih partisi . Untuk Windows, biasanya hanya ada satu, mungkin dengan partisi pemulihan bersembunyi di suatu tempat. Partisi adalah area disk yang berdekatan secara logis, misalnya "sektor 1 hingga 10.000.000".
Pada sebuah partisi dapat dibangun sistem file. Untuk Windows, ini adalah NTFS atau FAT; untuk Linux ini adalah salah satu
ext
versi atau berbagai opsi lainnya.Di dalam sistem file adalah file dan direktori. Linux memiliki direktori, saya tidak tahu bagaimana Anda mendapatkan ide yang tidak.
Bagaimana sistem operasi menghadirkan banyak partisi pada banyak disk kepada pengguna? Pada Windows, hal ini dilakukan dengan huruf drive :
C:
,D:
dll pada Linux, tidak ada huruf drive dan semuanya dilakukan dengan mount point : di direktori tertentu, akses mengubah rute ke filesystem yang berbeda (+) Seringkali jika Anda memasukkan CD. atau USB stick akan muncul di suatu tempat di bawah/media
atau/mnt
./usr
dan/usr/bin
biasanya akan berada pada sistem file yang sama tetapi tidak diharuskan. Orang bisa berarti "sistem file yang kebetulan berisi/usr/bin
direktori" ketika mereka menggunakan frasa itu.(+) Anda dapat melakukan ini dengan titik persimpangan NTFS juga, tetapi orang jarang melakukannya. Sampai mereka kehabisan huruf drive.
sumber
Dimungkinkan untuk menjaga seluruh sistem Linux pada satu partisi, dengan semua subdirektori berada pada satu sistem file.
Mungkin juga untuk menyebarkannya ke beberapa partisi, dengan subtitle direktori tertentu berada pada sistem file yang berbeda. Sebagai contoh, itu umum untuk menempatkan
/home
,/tmp
,/usr
, dan/var
pada filesystem terpisah. Untuk menjawab salah satu pertanyaan Anda, kadang/usr/bin
- kadang akan berada di sistem file sendiri juga.Ada beberapa keuntungan dari skema ini. Misalnya, jika
/var
diisi dengan banyak email, sistem lainnya tidak akan terpengaruh. Demikian juga, jika satu filesystem rusak karena crash atau sesuatu, filesystem lain masih bagus dan lebih mudah untuk memulihkan sistem.Ketika sistem melakukan boot, pada awalnya hanya sistem file root yang tersedia. Program yang disimpan di sana dijalankan selama proses boot. Salah satu dari program ini,,
mount
dijalankan beberapa kali, menggunakan data dari file/etc/fstab
, tabel sistem file. Untuk mengambil satu contoh: awalnya,/home
hanya direktori biasa di sistem file root. Kemudian kita jalankan perintah ini sebagai root:Ini memberi tahu sistem bahwa sistem file pada partisi
/dev/sda7
harus dipasang pada direktori/home
. Jadi sekarang, semua yang ada di sistem file itu dianggap berada di bawah/home
.Anda dapat melihat apa yang saat ini dipasang dengan menjalankan
df
.sumber
Kami terkadang menyebutnya sebagai
filesystems
, karena kadang-kadang direktori tersebut adalah titik tunggakan. Begitu banyak untuk satu-satunya pertanyaan yang Anda tanyakan ...filesystem
dapat merujuk pada dua hal yang berbeda ... atau sebenarnya dua aspek yang sangat berbeda dari hal yang sama:Konsep file dan direktori adalah metafora. Untuk komputer hanya ada data dan semua media tidak lain adalah perangkat yang dapat menyimpan data. Beberapa perangkat memperbolehkan membaca dan menulis data (mis. HDD), perangkat lain hanya membolehkan membaca data (mis. CD-ROM) dan bahkan ada perangkat yang hanya mengizinkan penulisan data (mis. Printer). Kami menggunakan metafora file dan direktori untuk menyusun data, sehingga kami dapat mengakses potongan kecil data, dan bukan semuanya sekaligus.
Sistem file yang kami letakkan di media penyimpanan, misalnya ext4, xfs, fat do the structuring part. Kami menggunakannya untuk menempatkan label pada potongan data (file) dan untuk memiliki daftar terstruktur yang konsisten dari semua label (direktori). Daftar terstruktur sebenarnya adalah pohon. Aspek yang paling penting adalah bahwa pohon memiliki tepat satu permulaan, akarnya. Mempertahankan struktur ini dan memastikan data tersedia dan tetap dapat diakses adalah tugas yang cukup, itulah sebabnya mengapa tidak hanya ada satu aroma sistem file.
Aspek lain dari sistem file adalah, bahwa itu adalah tugas OS untuk membuat data yang disimpan pada perangkat penyimpanan dapat diakses oleh semua program. Ini dicapai dengan dua hal:
OS menawarkan tepat satu antarmuka (pemrograman) untuk mengakses dan berinteraksi dengan file dan direktori. Untuk program / proses, tidak masalah apakah sistem file pada perangkat penyimpanan adalah ext2, xfs, fat, atau apa pun. Progams / proses mengakses file dan direktori dengan cara yang seragam.
OS mengatur semua media penyimpanan, yaitu sistem file mereka, dalam satu struktur yang lebih tinggi. Program mengakses file dan direktori melalui struktur yang sangat tinggi ini dan tidak perlu berinteraksi dengan perangkat penyimpanan secara langsung. Dengan begitu program tidak perlu peduli pada perangkat mana data sebenarnya berada. Struktur superordinat ini sering disebut sebagai "sistem file virtual" kernel.
Menambahkan filesystem perangkat penyimpanan ke sistem file virtual disebut "mounting" filesystem. Ketika Linux Anda memulai, kernel menciptakan sistem file virtual (VFS). Tepat setelah pembuatan itu kosong dan hanya terdiri dari titik masuknya, alias akarnya, ditranskripsi
/
. Kemudian kernel memasang sistem file di root VFS. Ini adalah ramdisk atau sistem file di partisi pada hard drive. Seperti yang ditambahkan pada root VFS, partisi ini sering disebut sebagai sistem file root.Sekarang inilah bagian di mana garis-garisnya kabur dan kita melihat bahwa filesystem pada perangkat penyimpanan dan VFS kernel sebenarnya adalah dua aspek dari tugas OS yang sama: Dengan pemasangan filesystem root, VFS berisi banyak file dan direktori, yang kesemuanya ada di partisi root. Namun, setiap direktori dapat menjadi "titik mount". Mount point adalah tempat VFS menempatkan titik masuk ke sistem file pada perangkat penyimpanan. Ini berarti bahwa setiap kali kita memasang sistem file pada direktori, kita memberi tahu VFS bahwa alih-alih mengakses data yang disimpan dalam direktori itu, kita lebih suka mengakses data pada perangkat penyimpanan yang berbeda. Mount point biasanya direktori kosong, sehingga kami tidak membuat data tidak dapat diakses dengan memasang sistem file lain di atasnya.
Ketika Anda menginstal OS Anda, terserah Anda apakah Anda ingin meletakkan semua data pada satu sistem file yang kemudian menjadi sistem file root Anda, atau Anda ingin membagi data Anda antara beberapa sistem file. Yang terakhir membutuhkan OS Anda untuk memasang semua sistem file individual, untuk membuat semua data dapat diakses. Bagaimana Anda memisahkan berbagai hal adalah pertanyaan tentang bagaimana Anda merancang sistem Anda. Inilah sebabnya mengapa kadang-kadang direktori yang Anda tahu dari instalasi Anda disebut sebagai sistem file.
Untuk komputer yang biasanya kita miliki di rumah memisahkan instalasi Anda ke beberapa sistem file tidak diperlukan lagi. Masih ada alasan bagus untuk melakukannya, tetapi ini di luar cakupan posting ini.
Untuk membuat sisa posting ini singkat: Partisi adalah cara lain untuk menyusun data pada perangkat penyimpanan. Dengan partisi, seseorang mengukir ruang penyimpanan yang berdekatan dari perangkat penyimpanan fisik dan menawarkannya sebagai perangkat penyimpanan individual ke OS (di mana orang dapat menempatkan filesystem untuk dipasang ke VFS). Salah satu alasan untuk melakukan ini adalah karena seseorang hanya memiliki satu hard drive, tetapi ingin menggunakan banyak sistem file yang berbeda. Partisi tempat sistem file root hidup sering disebut sebagai partisi root.
sumber
Anda melakukan sedikit kebingungan.
Filesystem
menunjukkan mekanisme di mana file berada dan diorganisasikan pada perangkat penyimpanan atau pada memori massal, seperti hard drive atau CD-ROM dan, dalam beberapa kasus, juga pada RAM.Bahkan windows menggunakan filesystem seperti
NTFS
atau, sebelumnyaFAT
,.Contoh Anda menunjukkan praktik umum untuk sistem linux dan unix, untuk memiliki sistem mereka sendiri yang terdiri dari berbagai sistem file yang dipasang pada direktori bernama mount point. Hal ini memungkinkan, jika terjadi masalah, untuk membatasi kerusakan pada satu atau lebih tetapi tidak untuk semua sistem file.
Jadi, FS tidak setara dengan direktori, dan juga di linux ada direktori, yang merupakan jenis file khusus
sumber