Ketika pertama kali bisa login ke sistem Linux, saya sedikit bingung karena tidak menemukan drive A:, B: atau hard disk C: maupun D:. Mungkin bagi newbie yang lain hal membingungkan ini bisa saja terjadi. Bagi mereka yang telah lama mengenal sistem operasi DOS /Windows ini merupakan sesuatu yang sungguh berbeda, di lingkungan Linux dan juga UNIX, semua device atau hardware device di komputer kita akan dianggap sebagai file. Jadi itulah yang menyebabkan drive-drive tersebut tidak tampak. File-file khusus yang merupakan simbol untuk semua device tersebut disimpan dalam direktori /dev. Device-device tersebut dapat berupa block device ataupun character device.

Character device itu serangkain karakter yang dibaca berurut misalnya serangkaian karakter yang kita tekan dari keyboard atau serangkaian data byte yang dikirim berurutan melalui serial line. Sedangkan block device atau sering disebut random access device adalah alat yang dapat menyimpan data dan menawarkan akses keseluruh bagian secara acak. Contoh block deviceadalah hard disk dan disket. Dengan menggunakan hard disk kita dapat mengakses data yang tersimpan secara acak sedangkan bila menggunakan serial line misalnya, kita hanya dapat mengakses data sesuai urutannya.

Masing-masing device node memiliki major dan minor number device. Major number memberitahu kernel, device apa yang mewakili node tersebut. Misalnya major number 3 adalah IDE hard disk dan major number 8 adalah SCSI disk. Minor number mewakili nomor partisi, minor number 0 adalah keseluruhan hard disk yang pertama dan minor number 1 hingga 15 adalah partisi yang mungkin bisa dibuat di hard disk tersebut. Contohnya, saya memiliki 2 buah IDE hard disk maka hard disk pertama adalah /dev/hda dan hard disk kedua adalah /dev/hdb. Jika masing-masing hard disk tersebut memiliki 2 buah partisi maka saya memiliki /dev/hda1, /dev/hda2, /dev/hdb1 dan /dev/hdb2.

Di bawah ini isi dari direktori /dev di komputer saya. Perhatikan huruf b di bagian paling kiri, menunjukkan bahwa itu adalah block device sedangkan character device akan ditunjukkan dengan huruf c.

[zakaria@linux zakaria]$ ls -l --sort=none /dev/hd[ab]{?,??}
brw-rw----   1 root     disk       3,   1 May  6  1998 /dev/hda1
brw-rw----   1 root     disk       3,   2 May  6  1998 /dev/hda2
brw-rw----   1 root     disk       3,   3 May  6  1998 /dev/hda3
brw-rw----   1 root     disk       3,   4 May  6  1998 /dev/hda4
brw-rw----   1 root     disk       3,   5 May  6  1998 /dev/hda5
brw-rw----   1 root     disk       3,   6 May  6  1998 /dev/hda6
brw-rw----   1 root     disk       3,   7 May  6  1998 /dev/hda7
brw-rw----   1 root     disk       3,   8 May  6  1998 /dev/hda8
brw-rw----   1 root     disk       3,   9 May  6  1998 /dev/hda9
brw-rw----   1 root     disk       3,  65 May  6  1998 /dev/hdb1
brw-rw----   1 root     disk       3,  66 May  6  1998 /dev/hdb2
brw-rw----   1 root     disk       3,  67 May  6  1998 /dev/hdb3
brw-rw----   1 root     disk       3,  68 May  6  1998 /dev/hdb4
brw-rw----   1 root     disk       3,  69 May  6  1998 /dev/hdb5
brw-rw----   1 root     disk       3,  70 May  6  1998 /dev/hdb6
brw-rw----   1 root     disk       3,  71 May  6  1998 /dev/hdb7
brw-rw----   1 root     disk       3,  72 May  6  1998 /dev/hdb8
brw-rw----   1 root     disk       3,  73 May  6  1998 /dev/hdb9
brw-rw----   1 root     disk       3,  10 May  6  1998 /dev/hda10

Filesystem

Untuk mengorganisasi file-file pada device diperlukan suatu metode yang disebut dengan filesystem. Jika Anda mengenal FAT selama ini di sistem operasi Windows maka Anda akan mengenal beberapa metode filesystem di Linux, seperti ext fs, ext2 fs atau xia fs dll. Saat ini ext2 fs adalah filesystem yang banyak digunakan untuk Linux karena terkenal sangat efisien. Meskipun demikian Red Hat Linux tetap menyediakan dukungan terhadap filesystem lain seperti msdos yang sudah built in di kernel atau dalam bentuk modul seperti vfat (Windows95 native fs), ext,umsdos dan sebagainya.

Mount & Umount Command

Untuk menggunakan filesystem tersebut kita lebih dahulu harus me-mount sebuah block device yang memiliki filesystem. Perintahnya adalah sebagai berikut:

 # mount [-t] [-o] device mount_point

device berupa block device, mount_point berupa sebuah direktori untuk menampilkan filesystem. t adalah type atau jenis filesystem dan o adalah option, keduanya boleh saja tidak disertakan bila Anda sudah mengkonfigurasi file /etc/fstab yang berisi keterangan detail mengenai device,jenis filesystem, mount point yang digunakan dan sebagainya.

Misalnya saya akan mengakses sebuah file di disket di drive A: maka pertama kali saya harus me-mount dulu disk tersebut ke sebuah direktori yang sudah saya buat misalnya /mnt/floppy:

 # mount /dev/fd1 -t vfat /mnt/floppy

<enter>

  mount: block device /dev/fd1 is write-protected, mounting read-only

Setelah perintah itu barulah saya bisa membaca disket di drive A: tersebut di direktori /mnt/floppy. Misalnya dengan mengetikkan perintah ls maka akan ditampilkan isi disket di drive A:

 # ls /mnt/floppy

Untuk membatalkan perintah mount digunakan perintah umount

 # umount /mnt/floppy

Setelah perintah tersebut dieksekusi, otomatis drive A: tidak bisa digunakan, cobalah dengan mengetikkan perintah ls lagi. Pesan kesalahan akan ditampilkan seperti dibawah ini.

 # ls /mnt/floppy
 filesystem not mounted

mtools

Bila Anda memiliki filesystem DOSdan ingin mengunakannya tanpa harus melakukan mount maka gunakan mtools. Dengan cara ini Anda tidak perlu lagi melakukan mount bila ingin mengakses filesystem DOS dan partisi yang belum diformat sekalipun. Setelah menginstalasi mtools tersebut, Anda cukup menjalankan perintah-perintah seperti di DOS untuk mengakses filesystem DOS tersebut, misalnya mdir, mcopy dan sebagainnya.

Filesystem Support

Linux memiliki dukungan terhadap beberapa filesystem lain sehingga kita dapat menggunakan atau mengakses filesystem yang berbeda tanpa harus melakukan konversi lebih dulu. Berikut ini adalah beberapa filesystem yang bisa di dukung Linux sejak kernel 2.0.30 di keluarkan: (Anda dapat mengkonfigurasi dukungan filesystem ini saat konfigurasi kernel )

Minix Merupakan filesystem Linux yang pertama dan saat ini masih banyak digunakan untuk boot disk dan beberapa format disket.
Extended fs Tidak banyak yang menggunakannya lagi dan sebaiknya tidak perlu di kompile dalam kernel.
Second Extended fs Saat ini merupakan filesystem default untuk Linux dan seharusnya di kompile dalam kernel karena filesystem root tidak bisa bekerja bila berupa modul.
xiafs filesystem Diperkenalkan bersamaan dengan second extended fs dan dimaksudkan untuk menggantikan extended fs. Saat ini jarang digunakan dan sebaiknya tidak di kompile dalam kernel kecuali Anda membutuhkannya.
DOS FAT fs Pada dasarnya bukan merupakan sebuah filesystem tapi merupakan dasar bagi filesystem berbasis FAT lainnya seperti MS-DOS FAT, VFAT (Windows95) atau umsdos.
MS-DOS FAT fs Jika Anda menginginkan Linux dapat mengakses sistem berbasis DOS maka Anda dapat menkompilenya dalam kernel. Sangat berguna untuk komputer yang memiliki sistem dual-boot.
VFAT (Windows95) fs Merupakan peningkatan dari MS-DOS FAT fs dan mendukung format long filename. Ini juga berguna untuk komputer yang memiliki sistem dual-boot.
umsdos Dukungan ini dibutuhkan bila ingin menjalankan Linux diatas partisi DOS tapi sepertinya RedHat Linux tidak akan bisa berjalan pada sebuah filesystem umsdos.
/proc Filesystem ini dipakai oleh kernel untuk menyediakan informasi mengenai sistem kepada user program, seperti ps, top, xload, free atau netstat. Filesystem ini memang seharusnya selalu ada dan walaupun ada isinya tapi tidak akan mengisi spasi hard disk.
NFS Dibutuhkan bila Anda akan mengakses remote filesystem dan untuk sebuah server dukungan ini merupakan suatu keharusan.
SMB Sangat berguna bila Anda menginginkan memiliki akses langsung ke Windows95 atau NT.
NCP Dukungan terhadap NetWare melalui protokol NCP.
ISO9660 Bila Anda memiliki CD-ROM sebaiknya memanfaatkan dukungan ini karena banyak sekali CD-ROM yang ada dipasaran menggunakan format ISO9660 ini.
OS/2 HPFS Mendukung filesystem OS/2 dan HPFS. Linux hanya dapat membaca filesystem tersebut (read-only).
System V & Coherent Merupakan filesystem UNIX generasi lama dan dukungan ini hanya diperlukan bila Anda memiliki data-data lama dan ingin memindahkannya ke filesystem yang baru.
Amiga FFS Masih berupa experimental code dan sebaiknya gunakan dengan hati-hati.
UFS Filesystem ini digunakan oleh beberapa sistem UNIX, Solaris dan SunOS(4.2). Linux hanya dapat membaca filesystem ini.