Seiring berkembangnya jaringan dan teknologi berkas, mekanisme berbagi berkas juga mengalami perubahan. Awalnya, cara yang digunakan dalam file-sharing adalah dengan aplikasi seperti File
Transfer Protocol (FTP). Selanjutnya, berkembang apa yang disebut dengan Distributed File Systems, disingkat DFS. Dengan DFS, sebuah remote-directories dapat diakses dari local-machine.
Cara lainnya adalah melalui World Wide Web (www), merupakan pengembangan dari metode FTP. Mekanisme file-sharing memungkinkan seorang pengguna dapat mengakses sebuah sistem berkas yang ada di komputer lain yang terhubung ke jaringan atau biasa disebut remote machine. Ada dua kemungkinan saat seorang pengguna terhubung ke remote machine. Pertama, ia harus melakukan proses otentifikasi atau proses identifikasi bahwa ia telah terdaftar sebagai seorang pengguna yang mempunyai hak akses tertentu terhadap remote machine tersebut. Kedua, ia cukup dikenali sebagai
anonymous pengguna yang bisa jadi mempunyai hak akses tidak seluas dibandingkan dengan
pengguna yang telah terotentifikasi.
Absolute path. Yaitu "/Kuliah/OS/bahan/slide".
Client-Server Model. Remote File System mengijinkan suatu komputer untuk me-mounting
beberapa sistem berkas dari satu atau lebih remote machine. Dalam kasus ini, komputer yang menyediakan berkas-berkas yang diakses oleh komputer-komputer lain disebut dengan server dan komputer yang mengakses berkas-berkas yang di-share disebut dengan client. Yang menjadi isu dalam model ini adalah masalah keamanan, pengaksesan suatu sistem oleh seseorang yang tidak mempunyai hak, atau disebut juga unauthorized user.
Failure Modes. Suatu local system dapat mengalami failure atau crash yang menyebabkan sistem
tersebut tidak dapat berfungsi sebagaimana mestinya karena berbagai hal. Teknologi Redundant
Arrays of Inexpensive Disk (RAID) cukup membantu hal ini. Namun demikian, penjelasan lebih
detil tentang RAID akan dibahas dalam topik-topik lainnya, terutama yang berkaitan dengan
storage.
Remote File System bukan tanpa gangguan. Kompleksitas dari sistem jaringan dan juga adanya
interaksi antara remote machine memberi peluang lebih besar akan terjadinya kegagalan dalam sistem tersebut.
14.9. Rangkuman
Direktori atau folder merupakan suatu entitas dalam sebuah sistem berkas yang mengandung berkas atau direktori lain. Mempelajari struktur direktori memberikan kita pemahaman bagaimana menyusun sebuah direktori dalam suatu sistem berkas. Ada tiga struktur direktori yang diketahui, yaitu direktori bertingkat, direktori berstruktur pohon dan direktori berstruktur graf.
Mounting adalah proses mengaitkan sebuah sistem berkas yang baru ditemukan pada sebuah piranti
ke struktur direktori utama yang sedang dipakai. Piranti-piranti yang akan di-mount dapat berbentuk
CD-ROM, disket atau sebuah zip-drive. Tiap-tiap sistem berkas yang di-mount akan diberikan mount point atau sebuah direktori dalam pohon direktori sistem yang sedang diakses. Mount point adalah
direktori tempat dimana akan meletakkan sistem berkas tersebut. Kalau kita ingin me-mount sistem berkas berupa direktori, maka mount point-nya harus berbentuk direktori. Sebaliknya, jika yang ingin di-mount adalah file, maka mount point-nya harus berbentuk file.
Rujukan
[Silberschatz2002] Abraham Silberschatz, Peter Galvin, dan Greg Gagne. 2002. Applied Operating
Systems. Sixth Edition. John Wiley & Sons.
[Stallings2001] William Stallings. 2001. Operating Systems: Internal and Design Principles. Fourth Edition. Edisi Keempat. Prentice-Hall International. New Jersey.
[Tanenbaum1997] Andrew S Tanenbaum dan Albert S Woodhull. 1997. Operating Systems Design
and Implementation. Second Edition. Prentice-Hall.
[WEBArpaciD2005] Andrea C Arpaci-Dusseau dan Remzi H Arpaci-Dusseau. 2005. CS 537:
Introduction to Operating Systems – File System: User Perspective – http://www.cs.wisc.edu/ ~remzi/ Classes/ 537/ Fall2005/ Lectures/ lecture18.ppt . Diakses
8 Juli 2006.
[WEBBabicLauria2005] G Babic dan Mario Lauria. 2005. CSE 660: Introduction to Operating
Systems – Files and Directories – http://www.cse.ohio-state.edu/ ~lauria/ cse660/ Cse660.Files.04-08-2005.pdf . Diakses 8 Juli 2006.
[WEBCarter2004] John Carter. 2004. CS 5460 Operating Systems – Lecture 19: File System
Operations and Optimizations – http://www.cs.utah.edu/ classes/ cs5460/ lectures/ lecture19.pdf . Diakses 29 Mei 2006.
[WEBChung2005] Jae Chung. 2005. CS4513 Distributed Computer Systems – File Systems –
http://web.cs.wpi.edu/ ~goos/ Teach/ cs4513-d05/ slides/ fs1.ppt . Diakses 7 Juli 2006.
[Nana Langstedt] Nana Langstedt. 2005. How to mount partitions and file-systems in Linux –
http://www.tuxfiles.org/linuxhelp/mounting.html . Diakses 27 April 2007.
[Mayang Sarup] Mayang Sarup. 2001. The Linux Filesystem explained – http://www.freeos.com/articles/3102/ . Diakses 27 April 2007.
Bab 15. FHS
15.1. Pendahuluan
FHS (Filesystem Hierarchy Standard) adalah sebuah aturan standar penempatan lokasi berkas dan direktori yang ada pada sistem operasi. Dengan adanya standar ini maka pengguna dan perangkat lunak dapat mengetahui dimana letak suatu berkas atau direktori yang tersimpan di suatu komputer. Pada masa-masa awal pengembangan Linux, masing-masing distribusi Linux menggunakan skema buatan mereka sendiri untuk menentukan lokasi suatu berkas pada hirarki direktori. Sayangnya, hal ini menyebabkan banyak masalah. Struktur hirarki berkas dan direktori pada sistem operasi Linux menjadi tidak teratur. Tidak ada suatu acuan baku untuk semua distribusi Linux yang ada saat itu. Dilatarbelakangi oleh kekacauan ini, pada tahun 1993 dibuatlah sebuah berkas yang berisi tentang aturan standar penempatan lokasi hirarkis berkas dan direktori yang disebut FSSTND (Filesystem
Standard). FSSTND telah membantu menstandarisasikan rancangan sistem berkas pada semua
distribusi Linux. Seiring dengan berjalannya waktu, FSSTND ini semakin berkembang. Jika pada awalnya FSSTND hanya mengatur sistem berkas dari Linux. Pada tahapan selanjutnya FSSTND juga mulai mengatur semua sistem operasi berbasis UNIX. Sejalan dengan perluasan objek dari FSSTND ini maka namanya diganti menjadi FHS, yang merupakan kependekan dari Filesystem
Hierarchy Standard.
FHS berisi sekumpulan syarat dan petunjuk penempatan berkas dan direktori pada sistem operasi berbasis UNIX. Petunjuk ini dimaksudkan untuk mendukung interoperabilitas dari suatu aplikasi, perangkat administrasi sistem, perangkat pengembangan dan script sehingga didapatkan keseragaman pada semua sistem yang berbasis UNIX.
FHS dibuat dengan cara:
• Menentukan petunjuk-petunjuk dasar untuk setiap area pada sistem berkas • Menentukan berkas dan direktori minimum yang dibutuhkan
• Menandai setiap pengecualian ( exception )
• Menandai setiap kasus spesifik yang pernah mengalami konflik
Berkas FHS tersebut akan bermanfaat bagi penyedia perangkat lunak yang ingin membuat perangkat lunak untuk sistem operasi yang menggunakan FHS. Sehingga penyedia perangkat lunak tersebut dapat membuat perangkat lunak yang dapat dijalankan pada sistem operasi tersebut. Berkas FHS juga dapat dipakai oleh pembuat sistem operasi. Contoh paling umum dari sistem operasi yang menggunakan model FHS ini adalah Linux, walaupun ada beberapa hal spesifik yang hanya terdapat di Linux dan tidak ada pada FHS. Selain itu, berkas FHS juga bermanfaat bagi pengguna yang ingin lebih mengerti sistem berkas dari sistem operasi yang mereka gunakan.
15.2. Sistem Berkas
FHS mengasumsikan bahwa sistem operasi yang menggunakan standarisasi FHS telah mengimplementasikan sistem berkas yang mendukung fitur-fitur keamanan dasar yang ada pada sebagian besar sistem berkas UNIX.
Untuk melakukan pengelompokan atau kategorisasi terhadap suatu berkas, FHS menggunakan dua parameter independent yang membedakan berkas satu dengan berkas yang lain. Parameter tersebut adalah:
• shareable - unshareable • statis - variabel.
Berkas shareable adalah berkas-berkas yang dapat diletakkan pada satu host dan digunakan oleh yang host yang lain. Jadi, file tersebut bisa di-share antar host, bukan hanya terbatas antar pengguna. Contohnya adalah direktori "/usr". Host yang tidak memiliki direktori /usr bisa saja menggunakan direktori ini dengan cara me-mount direktori /usr yang dimiliki oleh suatu host. Bukan suatu hal yang mustahil jika dari sepuluh komputer yang terhubung, hanya satu komputer yang memiliki direktori "/usr" karena direktori tersebut dapat diakses oleh semua komputer. Berkas
Berkas statik adalah berkas yang tidak dapat diubah tanpa intervensi administrator sistem. Contohnya adalah berkas binari (binary file), pustaka (libraries) dan berkas dokumentasi. Berkas variabel adalah berkas yang tidak statik, yaitu berkas yang dapat diubah oleh siapapun, baik administrator maupun pengguna. Berkas statik dan variabel sebaiknya diletakkan di direktori yang berbeda, karena berkas statik, tidak seperti berkas variabel, dapat ditaruh di media yang read-only dan tidak perlu di-backup secara terjadwal sebagaimana berkas variabel. Dengan demikian, tiap-tiap berkas dapat dikategorikan sesuai dengan karakteristiknya masing-masing.
15.3. Sistem Berkas ROOT
Sistem berkas root berisi hal-hal vital bagi kelangsungan sistem. Tanpa sistem berkas root maka tak ada sistem yang bisa berjalan. Secara kuantitas, peranan dari sistem berkas root ini hanya sedikit dibandingkan dengan peranan dari sistem berkas yang lain. Oleh karena itu, sistem berkas root ini cenderung jarang dipakai dibandingkan dengan sistem berkas lainnya. Walaupun sedikit peranan yang dimiliki olehnya, namun sistem berkas root sangat penting bagi sistem. Isi dari sistem berkas
root harus bisa memadai keperluan untuk melakukan proses boot, restore, repair dan recovery
sistem. Untuk melakukan operasi boot pada sistem, perlu dilakukan hal-hal untuk melakukan proses
mount pada sistem berkas lain. Hal ini meliputi konfigurasi data, informasi boot loader dan
keperluan-keperluan lain yang mengatur start-up data. Semua hal tersebut harus berada pada direktori root. Untuk melakukan recovery maupun repair dari sistem, maka hal-hal yang dibutuhkan untuk mendiagnosa dan memulihkan sistem yang rusak harus diletakkan dalam sistem berkas root. Kemudian, untuk me-restore suatu sistem maka hal-hal yang dibutuhkan untuk mem-backup sistem seperti floppy, tape, disk dll harus diletakkan di dalam direktori root.
Aplikasi pada komputer tidak diperbolehkan untuk membuat berkas atau subdirektori di dalam direktori root, karena untuk meningkatkan performance dan keamanan, partisi root sebaiknya dibuat seminimal mungkin. Lagipula, lokasi-lokasi lain dalam FHS menyediakan fleksibilitas yang lebih dari cukup untuk package aplikasi manapun.
Syarat
Terdapat beberapa direktori yang menjadi syarat atau harus ada pada sistem berkas root. Setiap direktori akan dibahas dalam subbagian di bawah. /usr dan /var akan dibahas lebih mendetail karena direktori tersebut sangat kompleks. Berikut daftar subdirektori yang harus ada pada direktori root:
Tabel 15.1. Direktori atau link yang harus ada pada /root
Direktori Keterangan
bin Perintah-perintah dasar pada sistem UNIX boot berkas statik dari boot loader
dev berkas piranti
etc sistem konfigurasi untuk host
lib modul pustaka dan kernel esensial yang di- share media mount-point untuk removeable media
mnt mount-point untuk melakukan operasi mount
pada sistem berkas secara temporer opt paket tambahan dari suatu perangkat lunak srv data untuk layanan yang diberikan sistem tmp data sementara
usr hirarki sekunder var data variabel