Menejemen File di Linux Debian
1.Pengertian Dasar
File system atau manajemen file adalah metode dan struktur data yang digunakan sistem operasi untuk mengatur dan mengorganisir file pada disk atau partisi. File system juga dapat diartikan sebagai partisi atau disk yang digunakan untuk menyimpan file-file dalam cara tertentu. Cara memberi suatu file system ke dalam disk atau partisi dengan cara melakukan Format.
File system Linux kebanyakan menggunakan ext2 (baca: second extended) atau ext3, file system yang tidak mengalami fragmentasi seperti halnya file system windows (FAT/FAT32). Ext2 juga memiliki system security yang baik dengan menerapkan access permission untuk owner, group owner, dan other.
2.Atribut File
Setiap sistem dalam manajemen file mempunyai sistem atribusi yang berbeda- beda, namun pada dasarnya di linux mempunyai atribut seperti berikut ini:
• Nama: Nama berkas simbolik ini adalah informasi satu-satunya yang disimpan dalam format yang dapat dibaca oleh pengguna.
• Indentifiers: Tanda unik ini yang biasanya merupakan sebuah angka, mengenali berkas didalam sebuah berkas; tidak dapat dibaca oleh peng- guna.
• Tipe: Informasi ini diperlukan untuk sistem-sistem yang mendukung tipe berbeda (misal: .tar.gz pada kompresi, .tex pada dokumen latex).
• Lokasi: Informasi ini adalah sebuah penunjuk pada sebuah device terse- but(misal: harddisk, UFD(usb flashdisk), floppy, DVD rom dll).
• Ukuran: Ukuran dari sebuah berkas (dalam bytes, words, atau, blocks)
dan mungkin ukuran maksimum dalam atribut juga.
• Permission : Informasi yang menentukan siapa yang dapat melakukan read, write, execute, dan lainnya.
• Waktu dan identifikasi pengguna : informasi ini dapat disimpan un- tuk pembuatan berkas, modifikasi terakhir, dan penggunaan terakhir. Data-data ini dapat berguna untuk proteksi, keamanan, dan monitoring pengggunaan.
Inode adalah Informasi yang mengidentifikasikan suatu file secara unik. In- ode mengidentifikasikan lokasi tempat file disimpan, dan karakteristik dari file tersebut. (owner, date, dsb); tetapi nama file tidak disimpan sebagai bagian dari inode. Informasi yang disimpan dalam inode antara lain :
Izin Akses File (File Permission)
Tidak seperti halnya sistem operasi DOS, setiap file Linux memiliki status izin akses (file permission). Maksudnya setiap file memiliki informasi untuk mengatur siapa yang berhak untuk membaca, menjalankan atau men- gubah file tersebut.
Linux merupakan sistem operasi multiuser dan umumnya digunakan se- bagai sistem operasi untuk jaringan. Oleh karena itu untuk menjaga privasi file, keamanan serta integritas sistem agar tidak terganggu, izin akses file di- gunakan untuk melindungi file/sistem dari orang lain yang tidak mempunyai hak.
Bayangkan tanpa adanya fasilitas ini maka mail anda akan dapat di baca oleh seluruh orang yang terhubung dalam jaringan yang sama. File-file anda tidak akan dapat dijamin keamanannya dari penghapusan dan pencurian oleh orang lain. Oleh karena itu penting bagi anda untuk memahami izin akses suatu file.
Perhatikan file di bawah ini :
darkstar:~$ ls –l filetes
-rw-r- -r- - l juli users 121 Dec 17 12:12 filetes
Notasi yang dicetak tebal-miring itulah yang menyatakan izin akses file.
- rw- r-- r-- 1 juli users
1 2 3 4
Gambar 2.1: Izin akses file
Perhatikan bahwa notasi di atas terdiri atas sepuluh digit yang dapat dikelompokkan sebagai berikut:
Notasi pertama menyatakan tipe dari file tersebut. Tanda dash (-) meny- atakan bahwa file tersebut adalah file biasa. Untuk direktori maka lokasi terse- but akan berisi karakter d, karakter l untuk link file, dan beberapa tipe lain yang tidak dibahas pada bab ini.
Notasi ke dua yang terdiri dari tiga karakter menunjukkan status file untuk pemilik (owner) dalam hal ini adalah juli. Adapun tiga karakter tersebut mengikuti aturan berikut:
• Karakter pertama untuk menentukan hak baca dari pemilik, karakter r berarti pemilik memiliki hak baca terhadap file tersebut sedangkan bila berisi karakter dash (-) berarti pemilik file tidak memiliki hak baca terhadap file tersebut.
• Karakter kedua untuk menunjukkan hak tulis terhadap file tersebut, dalam hal ini user tersebut memiliki hak untuk menulis atau mengubah file tersebut.
• Karakter ketiga untuk menentukan apakah file tersebut dapat dieksekusi oleh pemilik. Bila file tersebut dapat dieksekusi maka digit tersebut akan berisi karakter x.
Notasi ketiga juga terdiri atas tiga karakter, dimana tiga karakter ini menentukan izin akses file untuk seluruh user yang memiliki grup yang sama dengan user tersebut. Dalam hal ini grup dari pemilik file tersebut adalah users. Cara memahami tiga karakter izin grup ini pun sama dengan izin untuk pemilik file yang sudah dijelaskan sebelumnya. Dalam hal ini seluruh user yang termasuk dalam grup user hanya memiliki hak baca terhadap file tersebut.
Tiga karakter terakhir (notasi ketiga) digunakan untuk menentukan izin file untuk user lain yang tidak termasuk dalam grup tersebut (diistilahkan sebagai others). Dalam hal ini others hanya memiliki hak baca dan tidak hak tulis ataupun hak menjalankannya.
Secara umum file tersebut hanya dapat dibaca dan ditulis oleh pemilik yaitu juli, dan user lain yang berada satu grup (users) serta orang lain hanya dapat membaca file tersebut.
3.Operasi File
Fungsi dari berkas adalah untuk menyimpan data dan mengizinkan kita membacanya. Dalam proses ini ada beberapa operasi yang dapat dilakukan berkas. Ada pun operasi-operasi dasar yang dilakukan berkas, yaitu:
• Membuat Berkas (Create):
Kita perlu dua langkah untuk membuat suatu berkas. Pertama, kita harus temukan tempat didalam sistem berkas. Kedua, sebuah entri un- tuk berkas yang baru harus dibuat dalam direktori. Entri dalam direktori tersebut merekam nama dari berkas dan lokasinya dalam sistem berkas.
• Menulis sebuah berkas (Write) :
Untuk menulis sebuah berkas, kita membuat sebuah system call yang menyebutkan nama berkas dan informasi yang akan ditulis kedalam berkas.
• Membaca Sebuah berkas (Read):
Untuk membaca sebuah berkas menggunakan sebuah system call yang menyebut nama berkas yang dimana dalam blok memori berikutnya dari sebuah berkas harus diposisikan.
• Memposisikan Sebuah Berkas (Reposition):
Direktori dicari untuk entri yang sesuai dan current-file-position diberi sebuah nilai. Operasi ini di dalam berkas tidak perlu melibatkan M/K, selain itu juga diketahui sebagai file seek.
• Menghapus Berkas (Delete):
Untuk menghapus sebuah berkas kita mencari dalam direktori untuk nama berkas tersebut. Setelah ditemukan, kita melepaskan semua spasi berkas sehingga dapat digunakan kembali oleh berkas-berkas lainnya dan menghapus entry direktori.
• Menghapus Sebagian Isi Berkas (Truncate):
User mungkin mau menghapus isi dari sebuah berkas, namun menyim- pan atributnya. Daripada memaksa pengguna untuk menghapus berkas tersebut dan membuatnya kembali, fungsi ini tidak akan mengganti atribut, kecuali panjang berkas dan mendefinisikan ulang panjang berkas tersebut menjadi nol.
Keenam operasi diatas merupakan operasi-operasi dasar dari sebuah berkas yang nantinya dapat dikombinasikan untuk membentuk operasi- operasi baru
lainnya. Contohnya, apabila kita ingin menyalin sebuah berkas, maka kita memakai operasi create untuk membuat berkas baru, read untuk membaca berkas yang lama, dan write untuk menulisnya pada berkas yang baru.
4.Struktur Direktori
Beberapa sistem komputer menyimpan banyak sekali berkas-berkas dalam disk, sehingga diperlukan suatu struktur pengorganisasian data agar lebih mu- dah diatur.
Direktori atau folder merupakan suatu entitas dalam sebuah berkas sistem yang mengandung berkas atau mengandung direktori lain. Sebenarnya, pada hakikatnya berkas atau berkas terdapat dalam disk, direktori hanya menyedi- akan link atau menunjuk pada berkas yang ada.
Dengan demikian, dapat disimpulkan bahwa direktori digunakan sebagai sarana untuk pengorganisasian berkas pada suatu sistem komputer. Dengan direktori, berkas-berkas dapat dikelompokkan. Berkas tersebut dapat berisi berkas ataupun direktori lain, sehingga direktori dapat juga disebut sebagai
berkas istimewa.
Gambar 2.2: File Organization
Pada atribut, perbedaan pada direktori dan atribut pada berkas yaitu di- rektori tidak mempunyai tipe, sedangkan berkas mempunyai banyak tipe.
Direktori pada Unix
Struktur direktori yang digunakan dalam Unix adalah struktur direktori tradisional. Seperti yang terdapat dalam gambar direktori entri dalam Unix, setiap entri berisi nama berkas dan nomor inode yang bersangkutan. Semua informasi dari jenis, kapasitas, waktu dan kepemilikan, serta block disk yang berisi inode. Sistem Unix terkadang mempunyai penampakan yang berbe- da,tetapi pada beberapa kasus, direktori entri biasanya hanya string ASCII dan nomor inode.
Gambar 2.3: Direktori Unix
Saat berkas dibuka, sistem berkas harus mengambil nama berkas dan men- galokasikan block disk yang bersangkutan, sebagai contoh, nama path /usr/ast/ mbox dicari, dan kita menggunakan Unix sebagai contoh, tetapi algoritma yang digunakan secara dasar sama dengan semua hirarki sistem direktori sis- tem.
Pertama, sistem berkas mengalokasikan direktori root. Dalam Unix inode yang bersangkutan ditempatkan dalam tempat yang sudah tertentu dalam disk. Kemudian, Unix melihat komponen pertama dari path, usr dalam direk- tori root menemukan nomor inode dari direktori /usr. Mengalokasikan sebuah nomor inode adalah secara straight-forward, sejak setiap inode mempunyai lokasi yang tetap dalam disk. Dari inode ini, sistem mengalokasikan direk- tori untuk /usr dan melihat komponen berikutnya, dst. Saat dia menemukan entri untuk ast, dia sudah mempunyai inode untuk direktori /ust/ast. Dari inode ini, dia dapat menemukan direktorinya dan melihat mbox. Inode un- tuk berkas ini kemudian dibaca ke dalam memori dan disimpan disana sampai berkas tersebut ditutup.
Nama path dilihat dengan cara yang relatif sama dengan yang absolut.
Dimulai dari direktori yang bekerja sebagai pengganti root directory. Seti- ap direktori mempunyai entri untuk. dan ”..” yang dimasukkan ke dalam saat direktori dibuat. Entri ”.” mempunyai nomor inode yang menunjuk ke direktori di atasnya/orangtua (parent ), ”.” kemudian melihat ../dick/prog.c hanya melihat tanda ”..” dalam direktori yang bekerja, dengan menemukan nomor inode dalam direktori di atasnya/parent dan mencari direktori disk. Tidak ada mekanisme spesial yang dibutukan untuk mengatasi masalah nama ini. Sejauh masih di dalam sistem direktori, mereka hanya merupakan ASCII string yang biasa. Dari nomor inode ini kita memperoleh inode yang meru- pakan suatu struktur data yang menyimpan informasi berkas. Penghapusan berkas dilakukan dengan cara melepas inode. Inode ini berisi informasi tentang
:
• tipe
• ukuran
• waktu
• owner
• blok-blok disk
Gambar 2.4: Bagaimana file di UNIX ditampilkan
5.Konsep Mounting
5.1Mounting
Mounting adalah proses mengkaitkan sebuah sistem berkas yang baru dite- mukan pada sebuah piranti ke struktur direktori utama yang sedang dipakai. Piranti-piranti yang akan di-mount dapat berupa cd-rom, disket atau sebuah zip-drive. Tiap-tiap sistem berkas yang akan di-mount akan diberikan sebuah mount point, atau sebuah direktori dalam pohon direktori sistem Anda, yang sedang diakses. Sistem berkas yang dideskripsikan di /etc/fstab(fstab adalah singkatan dari filesystem tables) biasanya akan di-mount saat komputer baru dimulai dinyalakan, tapi dapat juga me-mount sistem berkas tambahan dengan menggunakan perintah:
mount[nama_piranti]
Atau dapat juga dengan menambahkan secara manual mount point ke berkas /etc/fstab. Daftar sistem berkas yang di-mount dapat dilihat kapan saja dengan menggunakan perintah mount. Karena izinnya hanya diatur read- only di berkas fstab, maka tidak perlu khwatir pengguna lain kana menco- ba mengubah dan menulis mount point yang baru. Seperti biasa saat ingin mengutak-atik berkas konfigurasi seperti mengubah isi berkas fstab, pastikan untuk membuat berkas cadangan untuk mencegah terjadinya kesalahan teknis yang dapat menyebabkan suatu kekacauan. Kita dapat melakukannya dengan cara menyediakan sebuah disket atau recovery-disk dan mem-back-up berkas fstab tersebt sebelum membukanya di editor teks untuk diutak-atik. Pada linux, isi sebuah berkas dibuat nyata tersedia dengan mengabungkan sistem berkas ke dalam sebuah sistem direktori melalui sebuah proses yang disebut mounting.
5.2 Mounting Overview
Mounting membuat sistem berkas, direktori, piranti dan berkas lainnya menjadi dapat digunakan digunakan di lokasi-lokasi tertentu, sehingga memu- ngkinkan direktori itu menjadi dapat diakses. Perintah mount mengintruk- sikan sistem operasi untuk mengkaitkan sebuah sistem berkas ke sebuah direk- tori khusus.
5.3 Mounting point
Mount point adalah sebuah direktori dimana berkas baru menjadi da- pat diakses. Untuk me-mount suatu berkas atau direktori, titik mountnya harus berupa direktori,dan untuk me-mount sebuah berkas,mount pointnya juga harus berupa berkas.
Ada dua jenis mounting, yaitu remote mounting dan mounting lokal. Re- mote mounting dilakukan dengan sistem remote dimana data dikirimkan melalui jalur komunikasi. Network sistem berkas seperti Network File System (NFS), menharuskan agar file diekspor dulu sebelum dimount. Mounting lokal di- lakukan di sistem lokal.
Biasanya, sebuah sistem berkas, direktori, atau sebuah berkas di-mount ke sebuah mount point yang kosong, tapi biasanya hal tersebut tidak diperlukan. Jika sebuah berkas atau direktori yang akan menjadi mount point berisi da- ta, data tersebut tidak akan dapat diakses selama direktori/berkas tersebut sedang dijadikan mount point oleh berkas atau direktori lain. Sebagai ak- ibatnya, berkas yang di-mount akan menimpa apa yang sebelumnya ada di direktori/berkas tersebut. Data asli dari direktori itu dapat diakses kembali bila proses mounting sudah selesai.
Saat sebuah sistem berkas di-mount ke sebuah direktori, izin direktori root dari berkas yang di-mount akan mengambil alih izin dari mount point. Penge- cualiannya adalah pada direktori induk akan memiliki atribut .. (double dot). Agar sistem operasi dapat mengakses sistem berkas yang baru, direktori induk dari mount point harus tersedia.
Gambar 2.5: Mount Point
5.4 Mounting Sistem Berkas, Direktori, dan Berkas
Ada dua jenis mounting: remote mounting dan mounting lokal. Remote mounting dilakukan dengan sistem remote dimana data dikirimkan melalui jalur telekomunikasi. Remote sistem berkas seperti Network File Systems (NFS), mengharuskan agar file diekspor dulu sebelum di-mount. mounting lokal dilakukan di sistem lokal.
Tiap-tiap sistem berkas berhubungan dengan piranti yang berbeda. Se- belum kita menggunakan sebuah sistem berkas, sistem berkas tersebut harus dihubungkan dengan struktur direktori yang ada (dapat root atau berkas yang lain yang sudah tersambung). Sebagai contoh, kita dapat me-mount dari
/home/server/database ke mount point yang dispesifikasikan sebagai /home/user1,
/home/user2, and /home/user3 :
• /home/server/database /home/user1
• /home/server/database /home/user2
• /home/server/database /home/user3
0 komentar:
Post a Comment