Selasa, 13 Mei 2008

PERINTAH DASAR LINUX

HAFIDUN
2007420066


Perintah-Perintah Dasar Linux

chgrp

Perintah ini digunakan untuk merubah kepemilikan kelompok file atau direktori. Misalnya untuk memberi ijin pada kelompok atau grup agar dapat mengakses suatu file. Sintaks penulisannya adalah sbb:

# chgrp

chmod

Digunakan untuk menambah dan mengurangi ijin pemakai untuk mengakses file atau direktori. Anda dapat menggunakan sistem numeric coding atau sistem letter coding. Ada tiga jenis permission/perijinan yang dapat dirubah yaitu:



1. r untuk read,

2. w untuk write, dan

3. x untuk execute.

Dengan menggunakan letter coding, Anda dapat merubah permission diatas untuk masing-masing u (user), g (group), o (other) dan a (all) dengan hanya memberi tanda plus (+) untuk menambah ijin dan tanda minus (-) untuk mencabut ijin.

Misalnya untuk memberikan ijin baca dan eksekusi file coba1 kepada owner dan group, perintahnya adalah:

$ chmod ug+rx coba1

Untuk mencabut ijin-ijin tersebut:

$ chmod ug-rx coba1

Dengan menggunakan sitem numeric coding, permission untuk user, group dan other ditentukan dengan menggunakan kombinasi angka-angka, 4, 2 dan 1 dimana 4 (read), 2 (write) dan 1 (execute).

Misalnya untuk memberikan ijin baca(4), tulis(2) dan eksekusi(1) file coba2 kepada owner, perintahnya adalah:

$ chmod 700 coba2

Contoh lain, untuk memberi ijin baca(4) dan tulis(2) file coba3 kepada user, baca(4) saja kepada group dan other, perintahnya adalah:

$ chmod 644 coba3

Perhatian: Jika Anda hosting di server berbasis Linux, perintah ini sangat penting sekali bagi keamanan data Anda. Saya sarankan semua direktori yang tidak perlu Anda tulis di chmod 100 (jika Apache jalan sebagai current user (Anda)) atau di chmod 501 jika Apache jalan sebagai www-data atau nobody (user lain).

chown

Merubah user ID (owner) sebuah file atau direktori

$ chown


fg

Mengembalikan suatu proses yang dihentikan sementar(suspend) agar berjalan kembali di foreground. Lihat juga perintah bg diatas.

find

Untuk menemukan dimana letak sebuah file. Perintah ini akan mencari file sesuai dengan kriteria yang Anda tentukan. Sintaksnya adalah perintah itu sendiri diikuti dengan nama direktori awal pencarian, kemudian nama file (bisa menggunakan wildcard, metacharacters) dan terakhir menentukan bagaimana hasil pencarian itu akan ditampilkan. Misalnya akan dicari semua file yang berakhiran .doc di current direktori serta tampilkan hasilnya di layar:

$ find . -name *.doc -print

Contoh hasil:

. /public/docs/account.doc

. /public/docs/balance.doc

. /public/docs/statistik/prospek.doc

./public/docs/statistik/presconf.doc


gzip

ini adalah software kompresi zip versi GNU, fungsinya untuk mengkompresi sebuah file. Sintaksnya sangat sederhana:

$ gzip

Walaupun demikian Anda bisa memberikan parameter tertentu bila memerlukan kompresi file yang lebih baik, silakan melihat manual page-nya. Lihat juga file tar, unzip dan zip.

halt

Perintah ini hanya bisa dijalankan oleh super useratau Anda harus login sebagai root. Perintah ini untuk memberitahu kernel supaya mematikan sistem atau shutdown.

hostname

Untuk menampilkan host atau domain name sistem dan bisa pula digunakan untuk mengesset nama host sistem.

Contoh pemakaian:

[user@localhost mydirectoryname] $ hostname

localhost.localdomain


less

Fungsinya seperti perintah more.

login

Untuk masuk ke sistem dengan memasukkan login ID atau dapat juga digunakan untuk berpindah dari user satu ke user lainnya.

logout

Untuk keluar dari sistem.


man

Untuk menampilkan manual page atau teks yang menjelaskan secara detail bagaimana cara penggunaan sebuah perintah. Perintah ini berguna sekali bila sewaktu-waktu Anda lupa atau tidak mengetahui fungsi dan cara menggunakan sebuah perintah.

$ man

mesg

Perintah ini digunakan oleh user untuk memberikan ijin user lain menampilkan pesan dilayar terminal. Misalnya mesg Anda dalam posisi y maka user lain bisa menampilkan pesan di layar Anda dengan write atau talk.

$ mesg y atau mesg n

Gunakan mesg n bila Anda tidak ingin diganggu dengan tampilan pesan-pesan dari user lain.


more

Mempaging halaman, seperti halnya less



pwd

Print working directory, atau untuk menampilkan nama direktori dimana Anda saat itu sedang berada.



shutdown

Perintah ini untuk mematikan sistem, seperti perintah halt. Pada beberapa sistem anda bisa menghentikan komputer dengan perintah shutdown -h now dan merestart sistem dengan perintah shutdown -r now atau dengan kombinasi tombol Ctr-Alt-Del.

su

Untuk login sementara sebagai user lain. Bila user ID tidak disertakan maka komputer menganggap Anda ingin login sementara sebagai super user atau root. Bila Anda bukan root dan user lain itu memiliki password maka Anda harus memasukkan passwordnya dengan benar. Tapi bila Anda adalah root maka Anda dapat login sebagai user lain tanpa perlu mengetahui password user tersebut.


talk

Untuk mengadakan percakapan melalui terminal. Input dari terminal Anda akan disalin di terminal user lain, begitu sebaliknya.

tar

Menyimpan dan mengekstrak file dari media seperti tape drive atau hard disk. File arsip tersebut sering disebut sebagai file tar. Sintaknya sebagai berikut:

$ tar

Jumat, 09 Mei 2008

RUN LEVEL

HAFIDUN

2007420066



RUN LEVEL


RunLevel pada UNIX/Linux

Run level dapat di anggap status jalannya (larinya) daripada sebuah mesin.

Pada unix di definisikan 6 run level yang terbagi atas:


* runlevel 0: halt

* runlevel 1: single user mode

* runlevel 2-5: normal, bisa dikustomise sesuai kebutuhan. di debian yg dipakai (default) 2

* runlevel 6: reboot


Maka daripada itu bila mesin berada pada runlevel 0 berarti mesinnya sedang mati alias turned off, sedangkan kalau berada pada runlevel 6 berarti mesin sedang reboot, runlevel 1 single user mode, 2-5 normal.


OO, silakan dicoba dengan account root (tentu saja di mesin sendiri :):

# init 0, bisa digunakan untuk shutdown,

# init 6, maka mesin akan di reboot.

init x, masuk ke run level x


Tiap runlevel mempunyai direktori sendiri-sendiri tempat menyimpan script apa yg mesti dijalankan. Direktori tersebut biasanya di /etc/ (kalau redhat mungkin di /etc/rc.d/). Umpamanya untuk runlevel 0 ada di /etc/rc0.d/, 1 di /etc/rc1.d/ dan seterusnya.


Pada direktori tersebut nama arsip biasanya berbentuk seperti ini:

SXXnamascript atau KXXnamascript

yang merupakan symlink ke /etc/init.d/namascript.


S di situ artinya start, yg berarti init akan menjalankan /etc/init.d/namascript dengan argumen start


K artinya kill, yang berarti init akan menjalankan /etc/init.d/namascript dengan argumen stop


Umpamanya kalau ada arsip bernama S90apache berarti init akan menjalan /etc/init.d/apache start


Saat masuk suatu run level init akan menjalankan terlebih dahulu arsip-arsip yang namanya diawali huruf K kemudian baru yang diawali huruf S. Tapi kan yang namanya diawali K atau S banyak oom? Nah XX itu menyatakan urutan jalannya juga, lebih kecil lebih dulu. Jadi bila ada file S20ssh dan S90apache, maka ssh akan jalan terlebih dahulu.


Trus gimana kalau mau bikin startup script untuk program yang aku buat sendiri? Bikin suatu shell script yg menerima argumen start dan stop. kalau start jalankan programnya, kalau stop shutdown programnya. setelah itu simpan di /etc/init.d. (Di debian terdapat arsip /etc/init.d/skeleton yang bisa dijadikan starting poin). Setelah itu buat symlink2 berikut (misalnya nama scriptnya programku):


* ln -s /etc/init.d/programku /etc/rc2.d/S90programku

* ln -s /etc/init.d/programku /etc/rc0.d/K10programku

* ln -s /etc/init.d/programku /etc/rc1.d/K10programku

* ln -s /etc/init.d/programku /etc/rc6.d/K10programku


ganti rc2.d dengan runlevel yg sesuai (biasanya defaultnya mesin: grep initdefault /etc/inittab Kenapa S-nya 90 K-nya 10? nggak papa sebenarnya, tapi kalau menurut hemat aku sih, kalau jalan-nya belakangan, ya mati-nya mesti dulu (LIFO). Lalu di rc0-6 dibuat K karena kita ingin bila mesin di shutdown/restart/masuk single user mode, maka program distop dulu.









LILO/GRUB



Apa Itu LILO?


Untuk memuat kernel diperlukan sebuah program loader khusus. RedHat telah menyediakan sebuah program yang dinamakan LILO atau Linux Loader (Werner Almesberger). LILO digunakan untuk mesin Intel-compatible, sedangkan mesin lain seperti Digital Equipment Corp. menggunakan MILO. Alpha PC, SPARCH-compatible dapat menggunakan SILO.


Saya menggunakan LILO karena mesin saya adalah Intel-compatible.


Pada saat instalasi RedHat Linux ada pilihan untuk menginstalasi LILO Bila saat instalasi pilihan ini dilewati atau Skip, LILO bisa di instalasi sekarang dengan perintah /sbin/lilo.


Disamping dengan LILO, kernel juga dapat dimuat dari DOS dengan menggunakan program LOADLIN.EXE. Cara yang mudah adalah mencopy kernel dan LOADLIN. EXE ke partisi DOS, lalu untuk memboot komputer cukup dengan mengetikkan perintah ini dari prompt DOS:


c:loadlin c:vmlinuz root=/dev/hda3 ro


/dev/hda3 bisa diganti sesuai dengan partisi root Linux.



Instalasi


LILO dapat diistalasi dan ditempatkan pada salah satu partisi sbb:

Master Boot Record (MBR) dari hard disk.

Root Partisi Linux.

Floppy disk.

Untuk menginstalasinya sangat mudah yaitu dengan perintah lilo (terdapat di direktori /sbin). Dokumentasinya dapat dibaca di /usr/doc. Ada shell script, QuickInst yang digunakan untuk mengganti LILO yang telah di instalasi.

Edit dan konfigurasi sesuai kebutuhan file /etc/lilo.conf

Jalankan /sbin/lilo untuk mengaktifkannya

Beberapa file akan berubah selama instalasi LILO, berikut ini file-file yang dibuat atau berubah selama instalasi LILO:

/sbin/lilo -- map installer; keterangan lihat man lilo

/boot/boot.b -- boot loader

/boot/map -- boot map, berisi lokasi kernel

/etc/lilo.conf -- file konfigurasi LILO

Untuk mencegah kerusakan sistem atau sistem tidak bisa di boot maka sebaiknya buat dulu emergency boot disk



Konfigurasi


Sebelum mengkonfigurasi LILO, sebaiknya mengetahui sistem operasi yang ada di setiap partisi hard disk serta menentukan partisi untuk meletakkan LILO. Pada umumnya LILO diletakkan pada MBR. Bila ada sistem lain seperti OS/2, sebaiknya LILO diletakkan pada superblock partisi root karena MBR akan ditempati boot loader OS/2.


Bila Linux satu-satunya sistem operasi yang ada di hard disk atau memiliki sistem operasi Windows 95/NT, LILO bisa diletakkan di MBR. Perhatikan partisi masing-masing dengan cermat, misal Windows di /dev/hda1 dan Linux di /dev/hda2.


Umumnya LILO di instalasi setelah partisi hard disk dibuat dan setelah sistem operasi Linux atau yang lain sudah di instalasi.



Mengedit lilo.conf


Login sebagai root sebelum mengedit file ini. Buka dengan sembarang editor teks ASCII, misal vi.


Contoh file lilo.conf:


# Start LILO global section

Boot = /dev/hda

Prompt

Vga = normal

Ramdisk = 0

# End LILO global section

image = /vmlinuz

root = /dev/hda3

label = linux

other = /dev/hda1

label = dos

tabel = /dev/hda


Parameter selengkapnya:


boot=

memberitahu device yang memiliki boot sector. Boot sector dibaca dari device ini dan di mount sebagai root.

linear

Mengenerate linear sector addrress. Lihat dokumentasi LILO.

install=

Menginstal file yang telah ditentukan sebagi boot sector yang baru. Jika install tidak dipakai, /etc/lilo/boot.b dipakai sebagi default.

message=

Untuk menampilkan file teks, besarnya maksimum 65,535 byte.

verbose=

Menampilkan progress reporting. Option lain seperti -v dan -q. Lihat dokumentasi LILO.

backup=

Menyalin boot sector asli ke file .

force-backup

Sama dengan backup. Option ini menimpa salinan backup yang telah dibuat dan akan mengabaikan option backup bila keduanya dipakai.

prompt

Meminta masukan saat boot.

timeout=

Mengeset waktu tunggu keyboard sebelum menjalankan option berikutnya. Defaultnya 5 detik. Masukkan value 0 jika ingin LILO menunggu sampai ada masukkan dari keyboard.

serial=

Mengijinkan masukan dari serial line dan keyboard ke LILO.

ignore-table

Mengabaikan tabel partisi yang corrupt.

password=

Memasang password untuk melindungi boot images.



Uninstall LILO


Menghapus atau menguninstalasi LILO dari sistem sangat mudah, dengan perintah:


lilo -u


atau dari partisi aktif Linux yang lain atau partisi DOS dengan menggunakan fdisk.


Bila LILO di instalasi sebagai MBR, maka MBR asli sebelum ditempati LILO dapat di restore dengan cara mem-boot sistem dengan DOS, kemudian jalankan.


macam-macam shell
1.Bourne shell
2.Bourne again shell
3.C shell
4.Tenex C shell
5. Korn shell

Bourne shell
Bourne shell atau sh, merupakan shell Unix default pada Unix Version 7 dan menggantikan Thompson shell yang mana nama file eksekusinya adalah sama, yaitu sh juga. Bourne shell dibuat oleh Stephen Bourne dari AT&T Bell Laboratories dan pertama kali dirilis pada tahun 1977 pada rilis UNIX Version 7 dan didistribusikan ke kalangan universitas. Shell ini akhirnya menjadi shell default pada Unix yang populer. Program binary dari Bourne shell terletak pada direktori /bin/sh pada sebagian besar versi Unix.
Tujuan utama dibuatnya Bourne shell ini adalah untuk memanfaatkan fitur yang ada pada kernel Version 7 saat itu, yaitu:
List (argumen) parameter yang lebih besar, yang mana pada versi sebelumnya hanya terbatas sampai 127 bytes dan pada Version 7 ini dibatasi sampai dengan 8192 bytes.
Adanya environment variables. Fitur yang baru ada pada Version 7 ini bisa berguna untuk pertukaran informasi bagi program ketika sistem berjalan pertama kali.
Bourne shell juga pertama kali memperkenalkan fitur konvensi penggunaan file descriptor for error message, yang mana hal ini akan membolehkan kontrol secara program yang lebih luas selama proses scripting dengan jalan menjaga agar error message selalu terpisah dengan data.
Meskipun awalnya Bourne shell ditujukan sebagai sebuah command interpreter yang interaktif, tetapi Bourne shell mendapatkan popularitasnya sebagai suatu scripting language, apalagi dengan adanya publikasi buku yang berjudul The UNIX Programming Environment oleh Brian W. Kernighan dan Rob Pike. Ini merupakan buku komersial pertama yang membeberkan shell sebagai sebuah bahasa pemrograman dalam bentuk tutorial.
Selain Bourne shell, ada pula C shell (csh) yang didistribusikan dengan 4.1 BSD dan memanfaatkan fitur job control yang ada pada kernel BSD. Job control adalah suatu kemampuan untuk menghentikan sebuah program secara interaktif dan kemudian merestartnya pada beberapa waktu kemudian. Ini merupakan alasan dimana kemudian C shell mendapatkan popularitasnya sebagai suatu command interpreter. C shell menggunakan sintaks yang "seperti bahasa C" dalam pemrogramannya, tetapi ia tidak kompatibel dengan Bourne shell.
Selain C shell, ada pula Korn shell (ksh) yang ditulis kemudian oleh David Korn. Shell ini merupakan jalan tengah antara kedua shell sebelumnya, dimana sintaks lebih banyak mengacu pada Bourne shell dan fitur job controlnya banyak diambil dari C shell.
Shell yang lainnya adalah Bash, atau yang dikenal dengan Bourne-Again shell yang kemudian dibangun untuk GNU project. Shell ini mengambil fitur-fitur yang ada pada Bourne shell, csh dan ksh.

Bourne-Again shell
Bourne-Again shell lebih sering disebut dengan bash. Bash ini salah program dalam GNU Project yang menjadi shell yang paling banyak digunakan pada lingkungan *NIX. Bourne-Again shell merupakan pengembangan dari Bourne shell. Namanya diambil dari penciptanya, yakni Stephen Bourne. bash sendiri kemudian dikembangkan Brian Fox.
Saat ini, bash menjadi script' primer pada sistem Linux dan telah disertakan pula di Mac OS X Tiger.

C shell
C shell, yang di sebut sebagai csh, merupakan bagian dari Berkeley UNIX, yang dibuat untuk mengatasi keterbatasan dari shell Bourne terdahulu. Shell ini bukanlah Bourne Again Shell, yang menggunakan sebuah syntax yang mirip dengan C programming language.
Banyak distribusi linux menyertakan csh sebagaimana tcsh, sebuah versi perbaikan dari csh. Dalam csh, sebuah command “set” atau unset” menetapkan variable dan kata set atau unset harus di ketikkan : % set workdir /home/kaos/work dan % unset workdir.
Script startup dalam C shell mirip dengan yang terdapat pada bash. Sebuah script yang bernama cshrc di jalankan saat sebuah csh session dimulai.
Shell lainnya, termasuk korn shell, atau ksh , dan zsh(sebuah shell dengan sejumlah fitur yang tidak ada pada shell lainnya yang berguna untuk scripting), psh, perl shell, dan ash, yang menggunakan sebuah bahasa baik bagi penggunaan interaktif dan non interaktif.
Untuk mengetahui apakah anda memiliki shell ini, ketikkan info ksh, zsh, psh, atau ash dalam sebuah terminal dan lihatlah jika ada info yang muncul. Jika tidak, anda bisa mengakhirinya dengan man ‘shellname’ dan apropos ‘shellname’ untuk mengetahui lebih lanjut.




Selasa, 15 April 2008

FILE SYSTEM


Nama : Hafidun
Nim : 2007420066


FILE SYSTEM

Sistem berkas (Inggris:File System) adalah metoda untuk memberi nama pada berkas dan meletakkannya pada media penyimpanan.Semua sistem operasi mulai dari DOS, Windows, Macintosh dan turunan UNIX memiliki Sistem berkas sendiri untuk meletakkan file dalam sebuah struktur hirarki. Contoh dari sistem berkas termasuk di dalamnya FAT, NTFS, HFS dan HFS+, ext2, ext3, ISO 9660, ODS-5, dan UDF. Beberapa sistem berkas antara lain juga journaling file system atau versioning file system.
Sistem berkas juga menentukan konvensi penamaan berkas dan peletakan berkas pada stuktur direktori.Berkas komputer atau berkas (Inggris: file) adalah entitas dari data yang disimpan di dalam sistem berkas yang dapat diakses dan diatur oleh pengguna. Sebuah berkas memiliki nama yang unik dalam direktori di mana ia berada. Alamat direktori dimana suatu berkas ditempatkan diistilahkan dengan path.
Sistem berkas akan memberikan sebuah nama terhadap sebuah berkas agar dapat dikelola dengan mudah. Meski oleh sistem berkas penamaan dilakukan dengan menggunakan angka-angka biner, sistem operasi dapat menerjemahkan angka-angka biner tersebut menjadi karakter yang mudah dipahami.Sebuah berkas berisi aliran data (atau data stream) yang berisi sekumpulan data yang saling berkaitan serta atribut berkas (yang bersifat wajib atau opsional), yang kadang-kadang disebut properties yang berisi informasi yang berkaitan dengan berkas yang bersangkutan. Informasi mengenai kapan sebuah berkas dibuat adalah contoh dari atribut berkas.
Ukuran sebuah berkas umumnya direpresentasikan dalam satuan byte (bita). Jika bilangan terlalu besar untuk direpresentasikan dalam satuan byte, maka dapat menggunakan satuan KiB (Kibibyte, yang berarti 1,024 byte), MiB (Mebibyte, yang berarti 1,048,576 byte), GiB (Gibibyte, yang berarti 1,073,741,824 byte), dan TiB (Tebibyte, yang berarti 1,099,511,627,776 byte), selain tentunya menggunakan satuan KB (kilobyte, yang berarti 1,000 byte), MB (Megabyte, yang berarti 1,000,000 byte), GB (Gigabyte, yang berarti 1,000,000,000 byte), dan TB (Terabyte, yang berarti 1,000,000,000,000 byte).

* Ukuran berkas
Dalam mekanisme penyimpanan berkas, komputer akan menyimpan berkas dalam dua jenis ukuran: ukuran fisik dan ukuran logis. Ukuran fisik berkas merujuk kepada ukuran aktual dari berkas, yakni berapa banyak byte yang terdapat di dalam berkas. Sementara ukuran logis merujuk kepada jumlah ruangan yang dialokasikan oleh sistem berkas untuk menempatkan berkas yang bersangkutan di dalam media penyimpanan. Ukuran berkas fisik umumnya lebih besar dibandingkan dengan ukuran berkas logisnya. Sebagai contoh, untuk mengalokasikan berkas berukuran logis 5125 byte, dalam sebuah media penyimpanan yang diformat dengan sistem berkas yang menggunakan ukuran unit alokasi 4096 byte, komputer akan mengalokasikan dua buah unit alokasi, yang berukuran 4096 dan 4096, sehingga menghabiskan 8192 byte. Meski ukuran logis berkas tersebut 5125 byte, komputer mengalokasikan 8192 byte, membuat 3067 byte tidak digunakan (disebut sebagai wasted space atau slack space).

* Manajemen berkas
Contoh dari manajer berkas: MS-DOS Shell
Contoh dari manajer berkas: MS-DOS Shell

Berkas komputer secara fisik dapat diatur oleh sistem berkas yang digunakan oleh media penyimpanan di mana berkas disimpan. Secara logis, pengguna membutuhkan sebuah utilitas untuk melakukan manajemen berkas, yang sering disebut sebagai "File Manager", atau manajer berkas. Contoh dari file manager adalah Windows Explorer dalam sistem operasi Windows, Norton Commander, Konqueror (dalam KDE), Nautilus (dalam GNOME), Midnight Commander, dan DOS Shell (dalam sistem operasi DOS).


NTFS

NTFS atau Windows NT File System, merupakan sebuah sistem berkas yang dibekalkan oleh Microsoft dalam keluarga sistem operasi Windows NT, yang terdiri dari Windows NT 3.x (NT 3.1, NT 3.50, NT 3.51), Windows NT 4.x (NT 4.0 dengan semua service pack miliknya), Windows NT 5.x (Windows 2000, Windows XP, dan Windows Server 2003), serta Windows NT 6.x (Windows Vista).
Sistem berkas NTFS memiliki sebuah desain yang sederhana tapi memiliki kemampuan yang lebih dibandingkan keluarga sistem berkas FAT. NTFS menawarkan beberapa fitur yang dibutuhkan dalam sebuah lingkungan yang terdistribusi, seperti halnya pengaturan akses (access control) siapa saja yang berhak mengakses sebuah berkas atau direktori, penetapan kuota berapa banyak setiap pengguna dapat menggunakan kapasitas hard disk, fitur enkripsi, serta toleransi terhadap kesalahan (fault tolerance). Fitur-fitur standar sebuah sistem berkas, seperti halnya directory hashing, directory caching, penggunaan atribut direktori, dan atribut berkas tentu saja telah dimiliki oleh NTFS. Bahkan, Microsoft telah menambahkan kemampuan yang hebat ke dalam NTFS agar memiliki kinerja yang tinggi, lebih tinggi daripada sistem berkas yang sebelumnya semacam HPFS atau FAT, khususnya pada ukuran volume yang besar, tetapi juga tetap mempertahankan kemudahan pengoperasiannya. Salah satu keunggulan NTFS dibandingkan dengan sistem berkas lainnya adalah bahwa NTFS bersifat extensible (dapat diperluas) dengan menambahkan sebuah fungsi yang baru di dalam sistem operasi, tanpa harus merombak desain secara keseluruhan (perombakan mungkin dilakukan, tapi tidak secara signifikan).


Bagian berikut akan memberikan informasi sedikit mengenai beberapa fitur NTFS:

* NTFS dapat mengatur kuota volume untuk setiap pengguna (dalam NTFS disebut dengan Disk Quota).
* NTFS mendukung sistem berkas terenkripsi secara transparan dengan menggunakan jenis beberapa jenis algoritma enkripsi yang umum digunakan.
* NTFS mendukung kompresi data transparan yang, meskipun tidak memiliki rasio yang besar, dapat digunakan untuk menghemat penggunaan ruangan hard disk. Selain itu, NTFS mendukung pembuatan berkas dengan atribut sparse (berkas yang berisi banyak area kosong di dalam datanya) yang umumnya dibutuhkan oleh aplikasi-aplikasi ilmiah.
* NTFS mendukung hard link (tautan keras) serta symbolic link (tautan simbolis) seperti halnya sistem berkas dalam sistem operasi keluarga UNIX, meskipun dalam NTFS, implementasinya lebih sederhana. Fitur symbolic link dalam NTFS diimplementasikan dengan menggunakan Reparse Point yang awalnya hanya dapat diterapkan terhadap direktori. Windows Vista mengizinkan penggunaan symbolic link terhadap berkas.
* NTFS mendukung penamaan berkas dengan metode pengodean Unicode (16-bit UCS2) hingga 255 karakter. Berbeda dengan sistem berkas FAT yang masih menggunakan pengodean ANSI (8-bit ASCII) dan hanya berorientasi pada format 8.3. Penggunaan nama panjang dalam sistem berkas FAT akan menghabiskan lebih dari dua entri direktori. Tabel di bawah ini menyebutkan karakteristik perbandingan antara NTFS dengan sistem berkas FAT32 dan FAT16.
* NTFS memiliki fitur untuk menampung lebih dari satu buah ruangan data dalam sebuah berkas. Fitur ini disebut dengan alternate data stream.
Selama 16 tahun perkembangan Windows NT (1991-2007), NTFS telah beberapa kali mengalami perbaikan fungsi dan fitur. Meskipun terjadi beberapa kali perbaikan fungsi dan fitur, antar setiap versi tersebut masih terdapat kompatibilitas yang sangat dibutuhkan oleh sistem-sistem lama. Berikut ini adalah beberapa versi NTFS:

* NTFS versi 1.0 merupakan versi yang datang bersama dengan Windows NT 3.1. Versi ini menawarkan fungsi yang sangat dasar, tetapi sudah jauh lebih baik dibandingkan dengan sistem berkas FAT yang saat itu telah digunakan.
* NTFS versi 1.1 merupakan versi yang datang bersama dengan Windows NT 3.50. Versi ini menambahkan dukungan terhadap pengaturan akses secara diskrit (discretionary access control).
* NTFS versi 1.2 merupakan versi yang datang bersama dengan Windows NT 4.0. Versi ini menambahkan dukungan terhadap auditing setiap berkas dan juga kompresi transparan.
* NTFS versi 2.0 tidak dirilis secara umum, karena berbagai kendala yang dialaminya, yang tidak diumumkan oleh Microsoft (Microsoft menggagalkan proyek NTFS versi 2.0, dan langsung menginjak NTFS versi 3.0, mengingat banyaknya fitur yang ditambahkan ke dalam versi 3.0).
* NTFS versi 3.0 merupakan versi yang datang bersama dengan Windows 2000. Versi ini menawarkan banyak peningkatan dibandingkan dengan versi sebelumnya. Di antaranya adalah penetapan kuota kepada setiap pengguna, Encrypting File System (EFS), sistem keamanan yang dapat diatur dari server pusat, fitur indeksasi terhadap properti dan isi setiap berkas, dan lain-lain. Selain itu, versi 3.0 juga menawarkan dukungan kepada struktur selain MBR (Master Boot Record), yakni GPT (GUID Partition Table) dan LDM (Logical Disk Management).
* NTFS versi 3.1 merupakan versi yang datang bersama dengan Windows XP Service Pack 1 dan Windows Server 2003. Versi ini menawarkan perbaikan yang minor yang terjadi dalam versi sebelumnya (khususnya di bidang performa), dan juga penggantian algoritma enkripsi yang digunakan oleh EFS dari DESX atau 3DES menjadi AES-256.Meskipun memiliki keunggulan dibandingkan dengan sistem berkas FAT, desain internal NTFS sebenarnya didasarkan pada struktur disk berbasis Master Boot Record, sama seperti halnya sistem berkas FAT16 atau FAT32. Dengan menggunakan struktur yang didasarkan atas penggunaan MBR untuk mengolah semua berkas yang dapat disimpan di dalam sebuah disk, maka perpindahan atau migrasi dari sistem berkas FAT menuju NTFS pun mudah dilakukan: hanya mengubah beberapa komponen sistem FAT menjadi NTFS saja. Selain itu, struktur MBR merupakan salah satu cara pengalokasian berkas-berkas dalam hard disk yang sangat populer dan paling umum digunakan, karena skema pengalokasian disk dengan MBR digunakan pada platform Intel x86. Ada lima buah program yang dapat digunakan untuk membuat sebuah volume NTFS, yaitu Disk Administrator (pada Windows NT 3.1, Windows NT 3.5 dan Windows NT 3.51, Disk Management snap-in (pada versi keluarga Windows NT 5.x), serta tiga buah utilitas yang berbasis command-line yaitu format.com (pada semua versi Windows NT), utilitas diskpart.exe, dan utilitas convert.exe.
Sistem berkas FAT atau FAT File System adalah sebuah sistem berkas yang menggunakan struktur tabel alokasi berkas sebagai cara dirinya beroperasi. Untuk penyingkatan, umumnya orang menyebut sistem berkas FAT sebagai FAT saja. Kata FAT sendiri adalah singkatan dari File Allocation Table, yang jika diterjemahkan secara bebas ke dalam Bahasa Indonesia menjadi Tabel Alokasi Berkas. Sistem berkas ini digunakan oleh sistem operasi MS-DOS (hanya versi FAT12 dan FAT16), Windows (hampir semua versi Windows; untuk versi FAT yang didukung olehnya lihat pada bagian versi), GNU/Linux, dan masih banyak sistem operasi lainnya yang juga mendukung termasuk Macintosh OS/X.
Ada beberapa versi dari sistem berkas FAT, yang dibedakan dari berapa banyak unit alokasi yang didukungya, yakni sebagai berikut:

* FAT12
* FAT16
* FAT32



FAT16

FAT16 adalah sistem berkas yang menggunakan unit alokasi yang memiliki batas hingga 16-bit, sehingga dapat menyimpan hingga 216 unit alokasi (65536 buah). Sistem berkas ini memiliki batas kapasitas hingga ukuran 4 Gigabyte saja. Ukuran unit alokasi yang digunakan oleh FAT16 bergantung pada kapasitas partisi yang hendak diformat: jika ukuran partisi kurang dari 16 Megabyte, maka Windows akan menggunakan sistem berkas FAT12, dan jika ukuran partisi lebih besar dari 16 Megabyte, maka Windows akan menggunakan sistem berkas FAT16. Tabel berikut berisi informasi sistem operasi apa saja yang mendukung sistem berkas FAT16.


FAT32

FAT32 adalah versi sistem berkas FAT yang paling baru, yang diperkenalkan ketika Microsoft merilis Windows 95 OEM Service Release 2 (Windows 95 OSR2).
Karena menggunakan tabel alokasi berkas yang besar (32-bit), FAT32 secara teoritis mampu mengalamati hingga 232 unit alokasi (4294967296 buah). Meskipun demikian, dalam implementasinya, jumlah unit alokasi yang dapat dialamati oleh FAT32 adalah 228 (268435456 buah). Ukuran unit alokasi maksimum dapat mencapai 32768 byte (64 sektor), sehingga secara teoritis dapat mengalamati 8 terabytes (8192 Gigabytes), meski tidak disarankan. Selain itu, program instalasi beberapa keluarga sistem operasi Windows NT 5.x ke atas hanya mengizinkan pembuatan partisi FAT32 hingga 32 Gigabyte (jika partisi lebih besar dari 32 GB, maka program instalasi Windows hanya menyediakan sistem berkas NTFS). Dalam instalasi sistem operasi Windows NT 5.x ke atas, jika ukuran partisi di mana Windows diinstalasikan kurang dari 2 Gigabyte, program instalasi akan menggunakan sistem berkas FAT16; dan berlaku sebaliknya, jika partisi di mana Windows hendak diinstalasikan lebih dari 2 Gigabyte, program instalasi akan menggunakan sistem berkas FAT32.
Program pengonversi FAT16 menjadi FAT32 dalam sistem operasi Windows 98
Program pengonversi FAT16 menjadi FAT32 dalam sistem operasi Windows 98
FAT32 menggunakan ukuran unit alokasi yang lebih kecil dibandingkan dengan sistem berkas FAT12/FAT16, sehingga FAT32 lebih efisien ketika diaplikasikan pada partisi yang besar (ukurannya lebih besar dari pada 512 Megabyte). Penghematan yang dilakukan oleh FAT32 dibandingkan dengan FAT16/FAT12 kira-kira adalah 20% hingga 27%. Windows 98 memiliki utilitas yang dapat digunakan untuk mengonversi partisi FAT16 menjadi FAT32 tanpa kehilangan data.
Tabel alokasi berkas atau File Allocation Table merupakan sebuah tabel yang dipelihara di dalam hard disk atau media penyimpanan lainnya oleh sistem operasi yang bertindak sebagai "daftar isi media penyimpanan", yang menunjukan di mana direktori dan berkas disimpan di dalam disk.Ketika sebuah media penyimpanan diformat dengan menggunakan FAT, sistem berkas ini akan membuat sebuah tabel alokasi berkas yang disimpan pada lokasi yang dekat dengan permulaan media penyimpanan tersebut. Media penyimpanan yang dimaksud adalah media penyimpanan seperti sebuah hard disk, sebuah partisi dalam sebuah hard disk, atau media penyimpanan portabel. Selain membuat satu tabel alokasi berkas, sistem berkas tersebut juga membuat salinan dari sistem berkas tersebut, dan berada pada media penyimpanan yang sama. Jika salah satu salinan mengalami kerusakan, maka sistem berkas akan menggunakan salinan yang lain, dan mengganti tabel yang rusak tersebut dengan salinan yang masih baik (cara kerja ini disebut dengan FAT Mirroring, yang bekerja seperti layaknya RAID 1). Lokasi tabel alokasi berkas ditentukan di dalam sebuah area yang disebut dengan BIOS Parameter Block (BPB) dalam boot sector sebuah media penyimpanan yang menggunakan sistem berkas FAT.FAT16 akan membuat dua buah tabel alokasi berkas, yang diberi nama FAT1 dan FAT2. Tabel alokasi berkas akan diletakkan pada area tertentu, yakni pada lokasi yang berdekatan dengan boot sector. Dalam strukturnya, FAT16 membedakan antara direktori akar (root directory) dan direktori lainnya, karena memang desain FAT16 menentukan lokasi direktori akar pada lokasi yang spesifik, dan memiliki batasan jumlah entri yang dapat disimpan (hanya dapat menampung 512 entri).
Direktori akar pada sistem berkas FAT16 terdiri dari sebuah ukuran yang tetap dan diketahui, karena berkas-berkas sistem operasi biasanya langsung diletakkan segera setelah direktori akar tersebut. Lokasi yang diketahui untuk berkas-berkas sistem operasi ini mengizinkan sistem operasi DOS, OS/2, atau Windows NT untuk langsung memulai proses booting sistem operasi. Tetapi, keputusan desain ini juga membatasi jumlah file yang dapat ditampung di dalam sebuah direktori akar dari sebuah volume FAT16.
Entri-entri di dalam direktori akar dan juga sub-direktori tidak diurutkan sehingga proses pencarian terhadap berkas-berkas tertentu dapat memakan waktu yang lama, apalagi jika volume tersebut mengandung banyak berkas dalam sebuah direktori.Tabel alokasi berkas dan juga direktori akar selalu diletakkan pada awal sebuah volume, atau biasanya terletak pada lokasi track terluar dari sebuah disk. Entri-entri tersebut merupakan entri-entri yang sering sekali dibaca dari sebuah disk, utamanya pada sistem operasi yang mendukung multitasking, yang membutuhkan banyak pergerakan head hard disk yang lamban.
Sistem berkas FAT-16 menggunakan unit alokasi (atau cluster) sebagai unit terkecil bagaimana ia dapat menyimpan berkas. FAT-16 mendukung ukuran cluster dari 1 hingga 128 sektor. Selanjutnya, ada juga entri direktori yang menyediakan ruangan yang cukup untuk menampung berkas dengan nama berkas berformat 8.3 (delapan nama berkas plus tiga nama ekstensi). Entri direktori pada sistem berkas FAT-16 memiliki entri sebesar 32 byte untuk setiap berkas dan subdirektori yang dikandung oleh direktori tersebut.
Struktur organisasi dalam sistem berkas FAT16 tidaklah terlalu rumit rumit. Berkas-berkas akan diberikan lokasi yang pertama kali ditemukan oleh sistem berkas dalam sebuah partisi. Selanjutnya, sistem berkas akan memberikan nomor terhadap lokasi tersebut, yang disebut dengan cluster number, yang merupakan alamat lokasi cluster di mana berkas dimulai. Setiap cluster berisi penunjuk (pointer) terhadap cluster berikutnya untuk berkas yang sama, atau indikasi bahwa cluster yang bersangkutan merupakan akhir dari rangkaian cluster sebuah berkas yang ditandai dengan bilangan basis 16 (hexadecimal) 0xFFFF (FAT16), atau 0xFFF (FAT12). Sebagai contoh, pada sebuah berkas yang menggunakan 10 buah cluster, berkas tersebut akan memiliki 10 buah entri di dalam tabel alokasi file, dan juga 9 buah tautan terhadap tabel alokasi file tersebut, sedangkan 1 cluster terakhir berisi tanda bahwa ia adalah cluster terakhir, dan berisi bilangan 0xFFFF. Umumnya, struktur sistem berkas seperti ini disebut sebagai struktur linked-list.



EXT3

ext3 adalah filesystem ext2 versi journal, memiliki journal metadata untuk pemulihan sistem yang cepat dan juga beberapa tambahan modus journal seperti journal data terstruktur dan data penuh. ext3 menggunakan Htree index yang dapat meningkatkan performa pada hampir semua situasi. Pendek kata, ext3 adalah filesystem yang sangat bagus dan dapat dihandalkan.



SWAP

Swap merupakan sebuah Virtual Memory (memory bayangan), yang mempunyai fungsi sebagai memori tambahan untuk memori fisik (RAM) dikomputer kita. Di semua system operasi (termasuk Linux) memori mempunyai fungsi sebagai tempat untuk penyimpanan sementara berbagai macam modul dan driver-driver yang dibutuhkan untuk menjalankan suatu system operasi, yang sekaligus juga digunaka untuk menjalankan aplikasi-aplikasi yang kita jalankan, kekurangan dari memori fisik adalah kapasitasnya yang relatif kecil, sehingga terkadang system terasa lambat dikarenakan penggunaan memori fisik di system telah penuh terpakai, untuk mengatasi hal tersebut maka digunakanlah suatu metode yang dikenal dengan Virtual Memori, di sistem Linux memori bayangan ini biasanya merupakan suatu partisi di hardisk yang mempunyai tipe file sistem Linux Swap, akan tetapi sebenarnya di Linux kita bisa membuat ataupun menambahkan Virtual Memori tanpa mengubah partisi di hardisk yaitu dengan menggunakan file yang mempunyai ekstensi (jenis file).