File System Hierarchy Standard (FHS) Presentasi Materi Kuliah Sistem Operasi Kelompok 56.5 Hidayat Febiansyah (1203000528) M. Nizar Kharis (1203000676) Kritik dan saran dikirim ke : mnizarkharis@yahoo.com 1
Apa dan untuk apa FHS? File System Hierarchy Standard (FHS) => standar yang berisi sekumpulan requirement dan guideline untuk penempatan bekas dan direktori pada Sistem Operasi. Pada slide ini digunakan FHS pada UNIX-like OS. FHS memudahkan perangkat lunak dan pengguna untuk mengetahui lokasi berkas dan direktori yang terinstal pada komputer. 2
Sistem Berkas Shareable vs Unshareable Shareable: berkas disimpan di satu komputer, tetapi masih dapat digunakan oleh komputer lainnya. Unshareable: berkas tidak dapat digunakan bersama-sama antar komputer. Static vs Variable Static: meliputi berkas binary, library, documentation, dan berkas-berkas yang tidak bisa diubah tanpa intevensi administrator sistem. Variable: semua berkas yang bukan merupakan static. 3
Sistem Berkas (cont.) Static Variable Shareable /usr /opt /var/mail /var/spool/news Unshareable /etc /boot /var/run /var/lock Sumber : http://www.pathname.com/fhs/pub/fhs-2.3.html 4
Root File System Fungsi Root File System harus dapat menangani masalah boot, restore, recover, dan repair suatu sistem. Boot: partisi root harus bisa untuk mount ke sistem berkas lain. Restore: utiliti yang diperlukan untuk restore dari backup sistem harus ada pada root. Recovery & repair: utiliti yang diperlukan untuk mendiagnosa dan memulihkan sistem yang rusak harus ada pada root. 5
Struktur Direktori / direktori root. Direktori root berisi direktori-direktori: bin perintah biner esensial boot berkas-berkas statik dari boot loader dev berkas-berkas peranti etc konfigurasi sistem host-specific lib shared library esensial dan modul kernel media mount point untuk media removable mnt mount point untuk mounting sistem berkas secara temporer opt package software aplikasi add-on sbin biner sistem esensial srv data untuk servis yang disediakan oleh sistem tmp berkas temporer usr hirarki sekunder var data variabel 6
/bin Berisi perintah-perintah yang bisa digunakan oleh administrator sistem dan pengguna. Juga perintahperintah yang dipakai secara tidak langsung oleh script. Beberapa perintah dalam /bin: cat meng-concate file ke standard output chgrp mengubah kepemilikan file group date df su mencetak waktu sistem melaporkan penggunaan ruang disk mengubah user ID 7
/boot & /dev /boot Berisi semua yang diperlukan untuk proses boot kecuali berkas konfigurasi dan map installer. /boot menyimpan data yang digunakan sebelum kernel mulai mengeksekusi program user-mode. /dev Lokasi dari berkas-berkas peranti. MAKEDEV: membuat peranti secara manual. 8
/etc Berisi berkas-berkas konfigurasi dan direktori yang spesifik ke current system. Direktori-direktori di bawah /etc: opt konfigurasi untuk /opt X11 konfigurasi untuk sistem X Window sgml konfigurasi untuk SGML xml konfigurasi untuk XML 9
/home, /lib, & /lib<qual> /home (optional) Konsep standar sistem berkas yang site-specific. /lib Berisi shared library images yang diperlukan untuk boot sistem dan menjalankan perintah dalam sistem berkas root. /lib<qual> (optional) Alternatif dari shared library esensial. 10
/media, /mnt, & /opt /media Berisi subdirektori yang digunakan sebagai mount point untuk media removable seperti floppy disk, cdrom, dsb. /mnt Disediakan agar administrator sistem dapat me-mount sistem berkas yang diperlukan secara temporer. /opt Disediakan untuk instalasi paket software aplikasi add-on. Paket yang akan diinstalasi di /opt harus menemukan file statis dalam direktori /opt/<package> atau /opt/<provider>. 11
/root & /sbin /root (optional) Direktori home root dapat ditentukan sendiri oleh developer atau local preference, tetapi direktori /root inilah yang lokasi default yang direkomendasikan. /sbin Utility yang diperlukan untuk administrasi sistem (dan perintah-perintah root-only) disimpan di /sbin, /usr/sbin, dan /usr/local/sbin. /sbin berisi biner dasar untuk booting, restoring, recovering, dan repairing sistem, sebagai tambahan untuk biner di /bin. 12
/srv & /tmp /srv Berisi data site-specific yang disediakan oleh sistem. /tmp Direktori ini harus tersedia untuk programprogram yang membutuhkan berkas temporer. Program tidak boleh berasumsi bahwa berkas atau direktori dalam /tmp disediakan di antara invokasi program. 13
Hirarki /usr (1) Bagian utama yang kedua dari sistem berkas. Bersifat shareable dan read-only. User bisa mengakses data, program, dan library dalam /usr. Direktori atau link simbolik ke direktori di bawah ini diperlukan dalam /usr: bin /usr/bin merupakan direktori primer perintah-perintah executable pada sistem. 14
Hirarki /usr (2) include Semua berkas include untuk bahasa pemrograman C yang umum digunakan ditempatkan pada direktori /usr/include. lib /usr/lib meliputi berkas-berkas objek, library, dan biner internal yang tidak dibuat untuk dieksekusi secara langsung oleh user atau shell script. lib<qual> /usr/lib<qual> menunjukkan peran yang sama dengan /usr/lib, kecuali untuk /usr/lib<qual>/sendmail dan /usr/lib<qual>/x11 tidak diperlukan. 15
Hirarki /usr (3) local /usr/local digunakan administrator sistem ketika menginstal perangkat lunak secara lokal. sbin /usr/sbin berisi biner non esensial yang digunakan secara eksklusif oleh administrator sistem. share /usr/share digunakan untuk berkas data arsitektur independen yang read-only. 16
Hirarki /usr (4) X11R6 (optional) /usr/x11r6 disediakan untuk sistem X Window versi 11 Release 6 dan berkas-berkas yang terkait. games (optional) /usr/games berisi biner games dan educational. src (optional) Source code bisa ditempatkan pada subdirektori /usr/src, hanya untuk tujuan referensi. 17
Hirarki /var (1) /var berisi berkas data variabel, meliputi berkas dan direktori spool, data administratif dan logging, serta berkas transient dan temporer. Beberapa bagian /var tidak shareable, misalnya /var/log, var/lock, dan /var/run. Sedangkan yang shareable misalnya /var/mail, /var/cache/man, /var/cache/fonts, dan /var/spool/news. /var tidak boleh di-link ke /usr karena akan membuat pemisahan /usr dengan /var makin sulit, dan bisa membuat konflik penamaan. Sebaiknya, buat link /var ke /usr/var. 18
Hirarki /var (2) Direktori atau link simbolik ke direktori di bawah ini diperlukan dalam /var: cache /var/cache ditujukan untuk data cache dari aplikasi. lib /var/lib berisi informasi status suatu aplikasi atau sistem. Sebuah aplikasi (atau sekelompok aplikasi yang berhubungan) harus menggunakan subdirektori dari /var/lib untuk data-datanya. 19
Hirarki /var (3) lock Berkas lock harus disimpan dalam struktur direktori /var/lock. log /var/log berisi bermacam berkas log. opt Data variabel dari paket dalam /opt harus diinstal dalam /var/opt/<subdir>. 20
Hirarki /var (4) run /var/run berisi data informasi sistem yang mendeskripsikan sistem sejak di-boot. Berkas di bawah direktori ini harus dihapus pada awal proses boot. spool /var/spool berisi data yang sedang menunggu suatu proses. tmp /var/tmp disediakan untuk program yang membutuhkan berkas atau direktori temporer yang diletakkan dalam reboot sistem. 21
Hirarki /var (5) Direktori atau link simbolik ke direktori optional yang ada di /var: /var/account /var/crash /var/games /var/mail /var/yp memegang log accounting dari proses aktif mengatur crash dumps sistem tempat data variabel yang berhubungan dengan games di /usr berkas mailbox pengguna data variabel untuk Network Information System, dikenal sebagai Sun Yellow Pages (YP) 22