Sistem Operasi Linux

Daftar isi 

a. Sejarah Sistem Operasi Linux
oleh Januar Karimata (1101221119)

b. Kekurangan dan Kelebihan OS Linux
oleh Ayu Sri Wahyuni (1101221107)
link : http://kelompok3d.blogspot.com/2011/10/kekurangan-dan-kelebihan-os-linux.html

c. Cara Menginstal Ubuntu
oleh Nova Afriana (1101221126)
http://kelompok3d.blogspot.com/2011/10/cara-menginstal-linux-ubuntu.html

d. Fitur - Fitur pada Linux
oleh Mayland Fristina (1101221121)
http://kelompok3d.blogspot.com/2011/10/fitur-pada-linux.html

e. Perintah dasar Linux
oleh  Nur Annisa (1101221128)
http://kelompok3d.blogspot.com/2011/10/fitur-pada-linux.html

f. Management Linux
oleh Irfan Ahmad Fadilah (1101221118)
http://kelompok3d.blogspot.com/2011/10/management-linux-dan-file-system.html

g. Kernel Linux
oleh Ira Rubiyanti Wijaya  (1101221117)
http://kelompok3d.blogspot.com/2011/10/kernel-linux.html

dapat dilihat secara keseluruhan pada http://tinyurl.com/os-linux

Kernel Linux


Kernel adalah suatu perangkat lunak yang menjadi bagian utama dari sebuah sistem operasi. Tugasnya melayani bermacam program aplikasi untuk mengakses perangkat keras komputer secara aman. Selain itu, kernel bertugas untuk mengatur kapan dan berapa lama suatu program dapat menggunakan satu bagian perangkat keras tersebut. Hal tersebut dinamakan sebagai multiplexing.

Ada 4 kategori kernel :

1. Monolithic kernel
Kernel yang menyediakan abstraksi perangkat keras yang kaya dan tangguh. Kernel monolitik mengintegrasikan banyak fungsi di dalam kernel dan menyediakan lapisan abstraksi perangkat keras secara penuh terhadap perangkat keras yang berada di bawah sistem operasi,kernel monolitik juga sering disebut sebagai kernel yang menyediakan abstraksi perangkat keras yang kaya dan tangguh.. Kernel monolitik digunakan oleh sistem operasi antaralin:
  • Kernel sistem operasi UNIX tradisional, seperti halnya kernel dari sistem operasi UNIX keluarga BSD (NetBSD, BSD/I, FreeBSD, dan lainnya).
  • Kernel sistem operasi GNU/Linux, Linux.
  • Kernel sistem operasi Windows (versi 1.x hingga 4.x; kecuali Windows NT)

2. Microkernel
Kernel yang menyediakan hanya sekumpulan kecil abstraksi perangkat keras sederhana, dan menggunakan aplikasi-aplikasi yang disebut sebagai server untuk menyediakan fungsi-fungsi lainnya.
Mikrokenel menyediakan sedikit saja dari abstraksi perangkat keras dan menggunakan aplikasi yang berjalan di atasnya yang disebut dengan server untuk melakukan beberapa fungsionalitas lainnya.Beberapa sistem operasi yang digunakan oleh mikrokenel antaralain:
  • IBM AIX, sebuah versi UNIX dari IBM
  • Amoeba, sebuah kernel yang dikembangkan untuk tujuan edukasi
  • Kernel Mach, yang digunakan di dalam sistem operasi GNU/Hurd, NexTSTEP, OPENSTEP, dan Mac OS/X
  • Minix, kernel yang dikembangkan oleh Andrew Tanenbaum untuk tujuan edukasi
  • Symbian OS, sebuah sistem operasi yang populer digunakan pada hand phone, handheld device, embedded device, dan PDA Phone.

3. Hybrid (modifikasi dari microkernel)
Kernel yang mirip microkernel, tetapi ia juga memasukkan beberapa kode tambahan di kernel agar ia menjadi lebih cepat.
Kernel hibrida adalah pendekatan desain mikrokernel yang dimodifikasi. Pada hibrida kernel, terdapat beberapa tambahan kode di dalam ruangan kernel untuk meningkatkan performanya.Dapat diungkapkan bahwa Kernel hibrida merupakan turunan dari konsep desain kernel monolitik dan mikrokernel. Kernel hibrida memiliki secara spesifik teknologi pertukaran pesan (message passing) yang digunakan dalam mikrokernel, dan juga dapat memindahkan beberapa kode yang seharusnya bukan kode kernel ke dalam ruangan kode kernel karena alasan kinerja.
Di bawah ini adalah beberapa sistem operasi yang menggunakan kernel hibrida:
  • BeOS, sebuah sistem operasi yang memiliki kinerja tinggi untuk aplikasi multimedia.
  • Novell NetWare, sebuah sistem operasi yang pernah populer sebagai sistem operasi jaringan berbasis IBM PC dan kompatibelnya.
  • Microsoft Windows NT (dan semua keturunannya).

4. Exokernel
Kernel yang tidak menyediakan sama sekali abstraksi hardware, tapi ia menyediakan sekumpulan pustaka yang menyediakan fungsi-fungsi akses ke perangkat keras secara langsung atau hampir-hampir langsung.
Dari keempat kategori kernel yang disebutkan diatas, kernel Linux termasuk kategori monolithic kernel. Kernel Linux berbeda dengan sistem Linux. Kernel Linux merupakan sebuah perangkat lunak orisinil yang dibuat oleh komunitas Linux, sedangkan sistem Linux, yang dikenal saat ini, mengandung banyak komponen yang dibuat sendiri atau dipinjam dari proyek pengembangan lain.

Kernel Linux pertama yang dipublikasikan adalah versi 0.01, pada tanggal 14 Maret 1991. Sistem berkas yang didukung hanya sistem berkas Minix. Kernel pertama dibuat berdasarkan kerangka Minix (sistem UNIX kecil yang dikembangkan oleh Andy Tanenbaum). Tetapi, kernel tersebut sudah mengimplementasi proses UNIX secara tepat.

Pada tanggal 14 Maret 1994 dirilis versi 1.0, yang merupakan tonggak sejarah Linux. Versi ini adalah kulminasi dari tiga tahun perkembangan yang cepat dari kernel Linux. Fitur baru terbesar yang disediakan adalah jaringan. Versi 1.0 mampu mendukung protokol standar jaringan TCP/IP. Kernel 1.0 juga memiliki sistem berkas yang lebih baik tanpa batasan-batasan sistem berkas Minix. Sejumlah dukungan perangkat keras ekstra juga dimasukkan ke dalam rilis ini. Dukungan perangkat keras telah berkembang termasuk diantaranya floppy-disk, CD-ROM, sound card, berbagai mouse, dan keyboard internasional. Dukungan juga diberikan terhadap modul kernel yang loadable dan unloadable secara dinamis.

Satu tahun kemudian dirilis kernel versi 1.2. Kernel ini mendukung variasi perangkat keras yang lebih luas. Pengembang telah memperbaharui networking stack untuk menyediakan support bagi protokol IPX, dan membuat implementasi IP lebih lengkap dengan memberikan fungsi accounting dan firewalling. Kernel 1.2 ini merupakan kernel Linux terakhir yang PC-only. Konsentrasi lebih diberikan pada dukungan perangkat keras dan memperbanyak implementasi lengkap pada fungsi-fungsi yang ada.

Pada bulan Juni 1996, kernel Linux 2.0 dirilis. Versi ini memiliki dua kemampuan baru yang penting, yaitu dukungan terhadap multiple architecture dan multiprocessor architectures. Kode untuk manajemen memori telah diperbaiki sehingga kinerja sistem berkas dan memori virtual meningkat. Untuk pertama kalinya, file system caching dikembangkan ke networked file systems, juga sudah didukung writable memory mapped regions. Kernel 2.0 sudah memberikan kinerja TCP/IP yang lebih baik, ditambah dengan sejumlah protokol jaringan baru. Kemampuan untuk memakai remote netware dan SMB (Microsoft LanManager) network volumes juga telah ditambahkan pada versi terbaru ini. Tambahan lain adalah dukungan internal kernel threads, penanganan dependencies antara modul-modul loadable, dan loading otomatis modul berdasarkan permintaan (on demand). Konfigurasi dinamis dari kernel pada run time telah diperbaiki melalui konfigurasi interface yang baru dan standar.

Semenjak Desember 2003, telah diluncurkan Kernel versi 2.6, yang dewasa ini (2008) telah mencapai patch versi 2.6.26.1 ( http://kambing.ui.edu/kernel-linux/v2.6/). Hal-hal yang berubah dari versi 2.6 ini ialah:
  • Subitem M/K yang dipercanggih.
  • Kernel yang pre-emptif.
  • Penjadwalan Proses yang dipercanggih.
  • Threading yang dipercanggih.
  • Implementasi ALSA (Advanced Linux Sound Architecture) dalam kernel.
  • Dukungan sistem berkas seperti: ext2, ext3, reiserfs, adfs, amiga ffs, apple macintosh hfs, cramfs, jfs, iso9660, minix, msdos, bfs, free vxfs, os/2 hpfs, qnx4fs, romfs, sysvfs, udf, ufs, vfat, xfs, BeOS befs (ro), ntfs (ro), efs (ro).

Modul Kernel Linux

Modul kernel Linux adalah bagian dari kernel Linux yang dapat dikompilasi, dipanggil dan dihapus secara terpisah dari bagian kernel lainnya saat dibutuhkan. Modul kernel dapat menambah fungsionalitas kernel tanpa perlu me-reboot sistem. Secara teori tidak ada yang dapat membatasi apa yang dapat dilakukan oleh modul kernel. Kernel modul dapat mengimplementasikan antara lain device driver, sistem berkas, protokol jaringan.

Modul kernel Linux memudahkan pihak lain untuk meningkatkan fungsionalitas kernel tanpa harus membuat sebuah kernel monolitik dan menambahkan fungsi yang mereka butuhkan langsung ke dalam image dari kernel. Selain hal tersebut akan membuat ukuran kernel menjadi lebih besar, kekurangan lainnya adalah mereka harus membangun dan me-reboot kernel setiap saat hendak menambah fungsi baru. Dengan adanya modul maka setiap pihak dapat dengan mudah menulis fungsi-fungsi baru dan bahkan mendistribusikannya sendiri, di luar GPL.
Kernel modul juga memberikan keuntungan lain yaitu membuat sistem Linux dapat dinyalakan dengan kernel standar yang minimal, tanpa tambahan device driver yang ikut dipanggil. Device driver yang dibutuhkan dapat dipanggil kemudian secara eksplisit maupun secara otomatis saat dibutuhkan.

Terdapat tiga komponen untuk menunjang modul kernel Linux. Ketiga komponen tersebut adalah :
a. Manajemen modul

Manajemen modul akan mengatur pemanggilan modul ke dalam memori dan berkomunikasi dengan bagian lainnya dari kernel. Memanggil sebuah modul tidak hanya memasukkan isi binarinya ke dalam memori kernel, namun juga harus dipastikan bahwa setiap rujukan yang dibuat oleh modul ke simbol kernel atau pun titik masukan diperbaharui untuk menunjuk ke lokasi yang benar di alamat kernel. Linux membuat tabel simbol internal di kernel. Tabel ini tidak memuat semua simbol yang didefinisikan di kernel saat kompilasi, namun simbol-simbol tersebut harus diekspor secara eksplisit oleh kernel. Semua hal ini diperlukan untuk penanganan rujukan yang dilakukan oleh modul terhadap simbol-simbol.

Pemanggilan modul dilakukan dalam dua tahap. Pertama, utilitas pemanggil modul akan meminta kernel untuk mereservasi tempat di memori virtual kernel untuk modul tersebut. Kernel akan memberikan alamat memori yang dialokasikan dan utilitas tersebut dapat menggunakannya untuk memasukkan kode mesin dari modul tersebut ke alamat pemanggilan yang tepat. Berikutnya system calls akan membawa modul, berikut setiap tabel simbol yang hendak diekspor, ke kernel. Dengan demikian modul tersebut akan berada di alamat yang telah dialokasikan dan tabel simbol milik kernel akan diperbaharui.

Komponen manajemen modul yang lain adalah peminta modul. Kernel mendefinisikan antarmuka komunikasi yang dapat dihubungi oleh program manajemen modul. Saat hubungan tercipta, kernel akan menginformasikan proses manajemen kapan pun sebuah proses meminta device driver, sistem berkas, atau layanan jaringan yang belum terpanggil dan memberikan manajer kesempatan untuk memanggil layanan tersebut. Permintaan layanan akan selesai saat modul telah terpanggil. Manajer proses akan memeriksa secara berkala apakah modul tersebut masih digunakan, dan akan menghapusnya saat tidak diperlukan lagi.

b. Registrasi driver

Untuk membuat modul kernel yang baru dipanggil berfungsi, bagian dari kernel yang lain harus mengetahui keberadaan dan fungsi baru tersebut. Kernel membuat tabel dinamis yang berisi semua driver yang telah diketahuinya dan menyediakan serangkaian routines untuk menambah dan menghapus driver dari tabel tersebut. Routines ini yang bertanggung-jawab untuk mendaftarkan fungsi modul baru tersebut.
Hal-hal yang masuk dalam tabel registrasi adalah:
  • device driver
  • sistem berkas
  • protokol jaringan
  • format binari

c. Mekanisme penyelesaian konflik / Resolusi konflik

Keanekaragaman konfigurasi perangkat keras komputer serta driver yang mungkin terdapat pada sebuah komputer pribadi telah menjadi suatu masalah tersendiri. Masalah pengaturan konfigurasi perangkat keras tersebut menjadi semakin kompleks akibat dukungan terhadap device driver yang modular, karena device yang aktif pada suatu saat bervariasi.
Linux menyediakan sebuah mekanisme penyelesaian masalah untuk membantu arbitrasi akses terhadap perangkat keras tertentu. Tujuan mekanisme tersebut adalah untuk mencegah modul berebut akses terhadap suatu perangkat keras, mencegah autoprobes mengusik keberadaan driver yang telah ada, menyelesaikan konflik di antara sejumlah driver yang berusaha mengakses perangkat keras yang sama.

Kernel membuat daftar alokasi sumber daya perangkat keras. Ketika suatu driver hendak mengakses sumber daya melalui M/K port, jalur interrupt, atau pun kanal DMA, maka driver tersebut diharapkan mereservasi sumber daya tersebut pada basis data kernel terlebih dahulu. Jika reservasinya ditolak akibat ketidaktersediaan sumber daya yang diminta, maka modul harus memutuskan apa yang hendak dilakukan selanjutnya. Jika tidak dapat melanjutkan, maka modul tersebut dapat dihapus.

Kompilasi Kernel Linux

Misalnya menggunakan Ubuntu Lucid Lynx LTS dengan kernel bawaan 2.6.32/31 rt sementara kernel terbaru telah mencapai 2.6.38.
1. Untuk mengecek versi kernel Anda ketikkan “ uname –r” di terminal.
2. Download tarball 2.6.38 dari kernel.org
3. Install paket pendukung kompilasi :

sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install kernel-package
sudo apt-get install gcc
sudo apt-get install libncurses5
sudo apt-get install libncurses5-dev
sudo apt-get install libqt3-mt-dev

4. Dari terminal
cd/usr/src taruh tarball disini, lalu lakukan extrak
sudo tar -- bzip2 –vxf linux-source-2.6.38.tar.bz2
sudo ln –s /usr/src/linux-source-2.6.38 /usr/src/linux
cd /usr/src/linux

jika ada keterangan file exist, lakukan penghapusan folder di linux di source
sudo rm /usr/src/linux, lalu lakukan perintah ekstrak lagi

5. Ketikkan
sudo make oldconfig (supaya settingan kernel lama otomatis masuk)

6. Ketikkan
sudo make menuconfig

7. Lakukan setup kernel seperti yang anda kehendaki, misalnya jenis prosesor, DMA, driver2, grafis, dan sebagainya. Lalu simpan konfigurasi tersebut.

8. Ketikkan
sudo make-kpkg clean
sudo make-kpkg --initrd –append-to-version=-name_kernel kernel_image kernel_header

Beri nama sesuai yang diinginkan
9. Nanti Anda akan ditanya:
“By default, I assume you know what you are doing, and I
apologize for being so annoying. Should I abort[Ny]?”
jawab dg enter, atau N
silakan menunggu bbrp waktu, antara 1-3 jam tergantung kecepatan prosesor Anda. nanti di folder src akan ada file
kernel-image-2.6.38-nama_kernel_10.00.Custom_i386.deb
kernel-headers-2.6.38-nama_kernel_10.00.Custom_i386.deb

sumber :
http://kambing.ui.ac.id/bebas/v06/Kuliah/SistemOperasi/BUKU/SistemOperasi-4.X-1/ch09s02.html [ 4 oktober 2011 / 11:28]
http://kambing.ui.ac.id/bebas/v06/Kuliah/SistemOperasi/BUKU/SistemOperasi-4.X-1/ch09s06.html [ 4 oktober 2011 / 11:28]
http://danangdk.blog.uns.ac.id/2011/06/24/tutorial-kompilasi-kernel-linux/ [ 4 oktober 2011 / 11:23]
http://blog.ub.ac.id/ahmadyazidbustomy/2010/03/29/kernel-dan-perkembangannya/ [ 4 oktober 2011 / 11:50]


Nama : Ira Rubiyanti Wijaya
NIM : 1101221117

Management Linux dan File System

Pengertian File

File adalah sekumpulan data/informasi yang saling berhubungan sesuai dengan tujuan pembuatnya.

Data pada file bisa berupa numerik, alpha numerik binary atau text. Setiap File memiliki nama dan pengacuan terhadap suatu file menggunakan nama file tersebut. Pada Linux penamaan File bersifat case sensitif yaitu membedakan antara lower case dan upper case letters sehingga file-file Tugas, tugas, TUGAS, TUGas merupakan file-file yang berbeda. Sebagai perbandingan, pada MS-DOS, file-file tadi dianggap sama.

Pemberian nama dan extention pada Linux tidak dibatasi jumlah karakternya dan suatu file dapat memiliki lebih dari satu extention. Contohnya: prog.c.z yairu prog.c yang sudah dikompres. Selain nama, file memiliki atribut seperti tipe, size, time, date, dan user identification, protection dll. Tipe dari file dikenal dari extentionnya. Dengan tipe inilah OS dapat merespon file secara tepat.

File biasanya disimpan dalam media disk (floppy disk, harddisk, atau CD).
Operasi-operasi file yang biasa dilakukan antara lain: OPEN, CLOSE, CREATE, DELETE, COPY, RENAME, READ, WRITE, UPDATE, INSERT, APPEND.
Pathname
Setiap file memiliki pathname ada 2 macam pathname yaitu:
  • Pathname absolut suatu file didapat dari menelusuri path dari root directory, melewati semua direktori sampai ke file yang diinginkan. Pathname absolute diawali dengan /.
  • Pathname relatif menelusuri path dari direktori yang sedang digunakan(direktori kerja). Suatu pathname yang tidak diawali / adalah suatu pathname relatif. Seperti pathname absolute, pathname ini mendeskripsikan path melalui direktori yang dilewati.
Pembagian File
Pada umunya, ada dua macam file yang berada pada struktur file, yaitu file direktori dan file biasa. File biasa menyimpan data, sedang file direktori meyimpan nama file yang terdapat pada direktori tersebut.
Sebagian besar file, hanya merupakan file biasa yang disebut file regular yang berisi data biasa sebagai contoh file text, file executable, atau program, input atau output dari program dan lainnya. Selain file biasa ada file-file khusus seperti berikut :
  • Directories: file yang berisi daftar dari file lain.
  • Special files: mekanisme yang digunakan untuk input dan output. Sebagian besar terdapat pada direktori /dev.
  • Links: Sistem untuk membuat file atau direktori dapat terlihat di banayk bagian dari pohon file sistem.
  •  (Domain) sockets: Jenis file khusus, mirip dengan soket TCP/IP, yang menyediakan jaringan antar proses yang terproteksi oleh file system's access control.
  • Named pipes: berfungsi kurang lebih seperti soket dan membentuk jalur untuk proses komunikasi.
Tabel Subdirektori dari Direktori Root
Direktori
Isi
/bin
Program-program umum, dipakai oleh system, administrator dan user
/boot
File startup dan kernel, vmlinuz. Pada distribusi sekarang ini termasuk grub data. Grub adalah GRand Unified Boot loader dan dapat menggantikan banyak boot-loaders yang berbeda yang kita ketahui sekaranag ini.
/dev
Berisi referensi kepada semua komponen hardware CPU, yang direpresentasikan dengan property khusus.
/etc
File konfigurasi sistem paling penting terdapat pada /etc, direktori ini meyimpan data yang mirip dengan Control Panel pada Windows.
/home
Direktori home untuk semua user umum.
/initrd
(pada beberapa distribusi) Berisi informasi untuk booting. Tidak boleh dihapus!
/lib
File library, termasuk file – file untuk semua jenis program yang dibutuhkan oleh sistem dan user.
/lost+found
Setiap partisi memiliki sebuah lost+found pada setiap direktori diatasnya. File – file yang tersimpan sebelum terjadi crash tersimpan disini.
/misc
Untuk pengunaan serba guna.
/mnt
Titik penyambungan standar untuk file sistem eksternal, seperti CD-ROM, kamera digital, floppy, USB
/net
Titik penyambungan standar untuk file sistem remote
/opt
Pada umumnya berisi software ekstra dan pihak ketiga (tambahan)
/proc
Sebuah virtual file system yang mengandung informasi mengenai system resource. Informasi lebih lanjut mengenai pengertian dari file pada proc diketahui dengan memasukkan perintah man proc pada terminal. File proc.txt membicarakan detil dari virtual file system.
/root
Direktori home dari user administrator. Perlu dibedakan antara /,direktori root dan /root, direktori home dari user root
/sbin
Program-program yang dipakai oleh sistem dan administrator
/tmp
Memori sementara yang dipakai oleh sistem.
/usr
Program-program, libraries, dokumentasi dll. Untuk semua program yang terkait dengan user.
/var
Media penyimpanan untuk semua file variabel dan file sementara yang dibuat oleh user seperti file log, antrian mail, print spooler area, memori untuk penyimpanan sementara dari file yang sudah di download dari internet atau untuk menyimpan image dari CD sebelum dibakar.

Struktur File
Adapun struktur dari file dapat dilihat seperti berikut ini:
 struct file {
       struct list_head        f_list;
       struct dentry           *f_dentry;
struct file_operations *f_op;
atomic_t                f_count;
unsigned int            f_flags;
mode_t                  f_mode;
       loff_t                  f_pos;
unsigned long           f_reada,f_ramax,f_raend,f_ralen,f_rawin;
struct fown_struct      f_owner;
unsigned int            f_uid,f_gid;
int                     f_error;
unsigned long           f_version;
       /* needed for tty driver and maybe others */
void                    *private_data;
};


Penjelasan dari struktur file diatas:
  • f_list :              menyambungkan semua file ke dalam beberapa list
  • f_dentry :         pointer yang menunjuk pada objek dentry yang berkaitan
  • f_op :               pointer yang menunjuk pada tabel operasi tabel
  • f_mode :          mode proses akses
  • f_pos :             current file offset (pointer file)
  • f_count :          counter penggunaan obyek file
  • f_flags :           flag yang dibuat saat file dibuka
  • f_reada :          flag yang digunakan untuk read head
  • f_ramax :         jumlah maksimum page yang akan di-read ahead
  • f_raend :          pointer file setelah read ahead terakhir
  • f_ralen :           jumlah byte yang di-read ahead
  • f_rawin :          jumlah page yang di-read ahead
  • f_owner :         data untuk I/O asynchronous melalui signal
  • f_uid :              ID user pemilik file
  • f_gid :              ID grup user pemilik file
  • f_error :           kode kesalahan untuk operasi write network


FILE SISTEM
Gambaran Umum File Sistem
Selain format fisik, hard diskjuga menyimpan struktur datanya dalam suatu format lojik. Format yang dipakai ini diberi nama File Sistem. Jadi, File Sistem adalah suatu struktur yang digunakan sistem operasi untuk menyimpan dan membaca data dari hard disk.

Adapun contoh-contoh format file system sebagai berikut : FAT (File Allocation Table), FAT32 (File Allocation Table 32), NTFS (New Technology File System) (Ketiga varian ini umum digunakan untuk platform Windows), Ext, Ext2, Ext3 (Ketiga varian ini umum digunakan untuk platform Linux), OS/2, HPFS, Reiser dll.


Pembagian File Sistem Secara Ortogonal
Shareable dan Unshareable
  1. Shareable : Isinya dapat di-share (digunakan bersama) dengan sistem lain, gunanya untuk menghemat tempat.
  1. Unshareable : Isinya tidak dapat di-share(digunakan bersama) dengan sistem lain, biasanya untuk alasan keamanan.
Variabel dan Static
  1. VariabelIsinya sering berubah-ubah.
  1. Static Sekali dibuat, kecil kemungkinan isinya akan berubah. Bisa berubah jika ada campur tangan sistem admin.

Langkah-langkah Optimasi File Sistem
·         Kurangi jumlah I/O yang mengakses storage device sebanyak mungkin
·         Kelompokkan I/O menjadi kelompok yang besar
·         Optimasi pola pencarian blok untuk mengurangi seek time
·         Gunakan cache semaksimal mungkin untuk mengurangi beban I/O device

Virtual File System pada Linux
Kernel Linux telah mengembangkan VFS (Virtual File System) yang dapat mengenali data yang menggunakan File Sistem lain. File Sistem yang dikenali oleh Virtual File System Linux terbagi menjadi 3jenis, yaitu:
  1. Disk Based filesystem
Tipe file sistem ini memanage space memori yang bisa digunakan pada partisi disk local. Tipe file sistem ini yang lumrah adalah Ext2. Tipe lain yang dikenal dengan baik oleh
VFS adalah :
1.      File system bagi varian Unix seperti system V dan BSD.
2.      Microsoft filesystem seperti MS-DOS, VFAT (Windows 98) dan NTFS (Windows NT).
3.      File system ISO96660 CD-ROM.
4.      File system lain seperti HPFS (IBM’s, OS/2), HFS (Apple Machintosh), FFS (Amiga’s Fast Filesystem) dan ADFS (Acorn’s machines).
  1. Network Filesystem
Tipe sistem file ini memungkinkan akses yang mudah ke suatu file yang terdapat pada
jaringan komputer lain. Beberapa filesystem jenis ini yang dikenal dengan baik oleh VFS adalah : NFS, Coda, AFS (Andrews Filesystem), SMB (Microsoft’s Windows dan IBM’s OS/2 LAN Manager) dan NCP (Novell’s NetWare Core Protocol).
  1. Special Filesystem
Tipe ini tidak mengijinkan mengatur space disk. Pada direktori /proc menyediakan interface yang mengijinkan user untuk mengakses struktur data kernel. Direktori /dev/pts digunakan sebagai pendukung terminal semu. Seperti yang digambarkan pada standar Open Group’s Unix98.

Mounting dan Unmounting

Agar suatu file system dapat dikenali oleh Virtual File System Linux, perlu dilakukan suatu proses yang disebut mounting.
Proses mounting sebenarnya adalah merepresentasikan file yang terdapat pada device eksternal (misal: disket) yang menggunakan file sistem lain menjadi inode sementara agar dapat dibaca seperti layaknya file lainnya oleh Virtual File System Linux.
Jika kita melakukan perubahan pada file (menambah, mengurangi, mengganti), hal tersebut tidak dilakukan langsung pada device tapi disimpan dalam media sementara. Untuk meyimpan perubahan, harus dilakukan proses unmounting, yaitu menghapus inode sementara yang dipakai sebelumnya dan menyimpan perubahan (jika ada) yang telah dilakukan pada device. Karena itu proses unmounting sangat perlu dilakukan.


II.                 LINUX EXTENDED FILE SYSTEM

Sejarah perkembangan Extended File System

Versi mLinux yang pertama berbasis pada file sistem  Minix. Setelah Linux semakin berkembang, Extended File System (Ext FS) diperkenalkan. Ada beberapa perubahan signifikan tetapi kinerjanya masih kurang memuaskan. Pada tahun 1994 Second Extended Filesystem (Ext2) diperkenalkan. Di samping adanya beberapa fitur  baru, Ext2 sangat efisien, handal dan fleksibel sehingga menjadi file sistem Linux yang paling banyak digunakan.

Linux Second Extended File System (Ext2FS)

Untuk sebagian besar user dan system administration tasks yang umum, file dan direktori mudah untuk diterima seperti struktur pohon. Komputer bagaimanapun tidak bisa melihat hal tersebut seperti struktur pohon.
Setiap partisi memiliki sistem file sendiri. Dengan membayangkan sistem file bersamaan, kita dapat membentuk sebuah ide mengenai struktur pohon dari seluruh sistem, tapi tidak sesederhana itu. Dalam sebuah sistem file, file direpresentasikan dengan inode, sejenis nomor seri unik yang berisi informasi tentang data sebenarnya yang membentuk sebuah file: milik siapa file tersebut, dan dimana file tersebut terletak pada harddisk.

Setiap partisi memiliki himpunan inode tersendiri, pada sistem yang memiliki banyak partisi, bisa terdapat beberapa file dengan nomor inode yang sama.

Setiap inode menggambarkan struktur data pada harddisk, menyimpan properti dari file, termasuk lokasi fisik dari data file. Ketika harddisk disiapkan untuk menerima peyimpanan data, biasanya selama proses instalasi sistem awal atau ketika menambahkan disket tambahan ke dalam sistem yangada, sejumlah inode per partisi yang pasti diciptakan. Jumlah ini akan menjadi jumlah maksimum file, dari berbagai tipe (termasuk direktori, file khusus, link, dll.) yang dapat muncul pada saat yang sama pada sebuah partisi. Pada umumnya terdapat 1 inode setiap 2 sampai 8 KB.

Mekanisme Second Extended File System (Ext2FS)

Ext2fs menggunakan mekanisme yang mirip dengan BSD Fast File System (ffs) dalam mengalokasikan blok-blok data dari file, yang membedakan adalah :
  • Pada ffs, file dialokasikan ke disk dalam blok sebesar 8KB, dan blok-blok itu dibagi menjadi fragmen-fragmen 1KB untuk menyimpan file-file berukuran kecil atau blok-blok yang terisi secara parsial di bagian akhir file.
  • Ext2fs tidak menggunakan fragmen, pengalokasian dalam unit-unit yang lebih kecil. Ukuran blok secara default pada ext2fs adalah 1KB, meskipun mendukung juga pengalokasian 2KB dan 4KB.
  • Alokasi pada Ext2fs didesain untuk menempatkan blok-blok lojik dari file ke dalam blok-blok fisik pada disk, dengan demikian I/O request untuk beberapa blok-blok disk secagai operasi tunggal.

Kehandalan Second Extended File System Ext2FS
·   Administrator sistem dapat memilih ukuran blok yang optimal (dari 1024 sampai 4096 bytes), tergantung dari panjang file rata-rata, saat membuat file sistem.
·         Administrator dapat memilih banyak inode dalam setiap partisi saat membuat file sistem.
·         Strategi update yang aman dapat meminimalisasi dari system crash.
·         Mendukung pengecekan kekonsistensian otomatis saat booting.
·         Mendukung file immutable (file yang tidak dapat dimodifikasi)dan append-only (file yang isinya hanya dapat ditambahkan pada akhir file tersebut).

Informasi yang Disimpan pada Inode
·         Device tempat inode berada
·         Mode file
·         Locking information
·         Pemilik dan grup pemilik dari file tersebut.
·         Jenis file (regular, direktori, dll.)
·         Hak akses atas file.
·         Waktu pembuatan, pembacaan, dan perubahan terakhir.
·         Waktu perubahan informasi pada inode.
·         Jumlah link yang menunjuk ke file ini.
·         Ukuran file.
·         Alamat yang menunjukan lokasi sebenarnya dari data file.
Satu – satunya informasi yang tidak tersimpan pada inode adalah nama file dan direktori. Informasi ini tersimpan pada file direktori khusus. Dengan membandingkan nama file dan nomor inode, sistem dapat membangun struktur pohon yang dapat dimengerti user. User dapat melihat nomor inode dengan menggunakan opsi –i pada perintah ls. Masing-masing inode memiliki ruang memori yang terpisah pada disk.
Pembagian Blok

Setiap partisi terbagi menjadi:
  • Boot block, yang merupakan blok pertama, dipakai untuk booting, sehingga tidak diurusi oleh Ext2FS.
  • Block group sebanyak n buah. Setiap block group berukuran sama dan terdiri dari:
    • Super Block, disimpan dalam struktur ext2_super_block
    • Group Descriptor, disimpan dalam bentuk xt2_group_desc
    • Data Block Bitmap
    • Inode Bitmap
    • Inode Table, terdiri dari kumpulan block yang berurutan, dan masing-masing blok mengandung sejumlah inode yang terlah terdefinisi sebelumnya. Semua inode memiliki ukuran sama.
    • Data Blocks, menyimpan data sebenarnya dari file.

Struktur inode dalam Linux diimplementasikan sebagai berikut :
struct inode {
struct list_head i_hash;
struct list_head i_list;
struct list_head i_dentry;
unsigned long i_ino;
unsigned int i_count;
kdev_t i_dev;
umode_t i_mode;
nlink_t i_nlink;
uid_t i_uid;
gid_t i_gid;
kdev_t i_rdev;
off_t i_size;
time_t i_atime;
time_t i_mtime;
time_t i_ctime;
unsigned long i_blksize;
unsigned long i_blocks;
unsigned long i_version;
unsigned long i_nrpages;
struct semaphore i_sem;
struct inode_operations *i_op;
struct super_block *i-sb;
wait_queue_head_t i_wait;
struct file_lock *i_flock;
struct vm_area_struct *i_mmap;
struct page *i_pages;
spinlock_t i_shaerd_lock;
struct dquot *i_dquot(MAXQUOTAS);
struct pipe_inode_info *i_pipe;
unsigned long i_state;
unsigned long i_flags;
unsigned char i_sock;
atomic_t i_writecount;
unsigned int i_attr_flags;
_u32 i_generation;
union {
...
struct extfs_inode_info ext2_i;
...
struct socket socket_i;
void *generic)ip;
}u;
};

Linux Third Extended File System (Ext3FS)
Ext3FS merupakan pengembangan dari Ext2FS. Ext3FS memiliki beberapa kelebihan antara lain:
  • Optimasi waktu pengecekan jika terjadi kegagalan sumber daya, kerusakan sisem atau unclean shutdown.
Setelah mengalami kegagalan sumber daya, unclean shutdown, atau kerusakan sistem, Ext2FS harus melalui proses pengecekan. Proses inidapat membuang waktu sehingga proses booting menjadi sangat lama, khususnya untuk disk besar yang mengandung banyak sekali data. Dalam proses ini, semua data tidak dapat diakses. Jurnal yang disediakan oleh EXT3 menyebabkan tidak perlu lagi dilakukan pengecekan data setelah kegagalan sistem. EXT3 hanya dicek bila ada kerusakan hardware seperti kerusakan hard disk, tetapi kejadian ini sangat jarang. Waktu yang diperlukan EXT3 file sistem setelah terjadi unclean shutdown tidak tergantung dari ukuran file sistem atau banyaknya file, tetapi tergantung dari besarnya jurnal yang digunakan untuk menjaga konsistensi. Besar jurnal default memerlukan waktu kira-kira sedetik untuk pulih, tergantung kecepatan hardware.
  • Integritas data dan kecepatan akses yang fleksibel.
    • Ext3FS menjamin adanya integritas data setelah terjadi kerusakan atau unclean shutdown. Ext3FS memungkinkan kita memilih jenis dan tipe proteksi dari data.
  • Mudah melakukan migrasi dari Ex2FS.
    • Kita dapat berpindah dari EXT2 ke sistem EXT3 tanpa melakukan format ulang.
  • Cepat
    • Daripada menulis data lebih dari sekali, EXT3 mempunyai throughput yang lebih besar daripada EXT2 karena EXT3 memaksimalkan pergerakan head hard disk. Kita bisa memilih tiga jurnal mode untuk memaksimalkan kecepatan, tetapi integritas data tidak terjamin.
  By:Irfan Ahmad Fadilah
        NIM : 1101221118


Perintah-Perintah Dasar Linux


Perintah-Perintah Dasar Linux

Semua konfigurasi dan setelan di Linux tersimpan di dalam berkas teks. Walaupun biasanya Anda menyunting konfigurasi ini melalui antarmuka berbasis grafik, sesekali mungkin Anda harus menyuntingnya secara manual. Gedit adalah editor teks baku di Ubuntu, yang dapat Anda luncurkan dengan mengeklik Applications->Accessories->Mousepad di sistem menu desktop.
Anda juga dapat menjalankan Mousepad lewat baris perintah menggunakan gksudo, yang akan menjalankan Mousepad dengan hak akses administratif, dengan tujuan untuk mengubah berkas konfigurasi.
Jika Anda ingin menggunakan editor teks dari baris perintah, Anda dapat menggunakan nano, editor teks sederhana yang mudah dipakai. Saat menjalankannya dari baris perintah, selalu gunakan perintah berikut, untuk memastikan editor tidak memasukkan jeda baris:
nano -w
Selain ini ada juga beberapa editor berbasis terminal yang tersedia di Ubuntu, paling populer adalah seperti VIM dan Emacs.Aplikasi ini lebih kompleks untuk digunakan dibandingkan nano, akan tetapi lebih handal.

Terminal
Tidak dibutuhkan pengetahuan khusus untuk mengetahui bagaimana menggunakan baris perintah, ini adalah program seperti yang lainnya. Semua tugas di Linux dapat diselesaikan menggunakan baris perintah, walaupun telah ada alat berbasis grafik untuk semua program, tetapi kadang-kadang itu semua tidak cukup. Disinilah baris perintah akan membantu Anda.
Terminal berada di Applications->Terminal. Terminal sering disebut command prompt atau shell. Dulu, hal ini adalah cara pengguna untuk berinteraksi dengan komputer, dan para pengguna Linux berpendapat bahwa penggunaan perintah melalui shell akan lebih cepat dibanding melalui aplikasi berbasis grafik dan hal ini masih berlaku sampai sekarang. Disini Anda akan mempelajari bagaimana menggunakan terminal.
Kegunaan awal dari terminal adalah sebagai peramban (browser) berkas dan kenyataannya saat ini masih digunakan sebagai peramban berkas, di saat lingkungan berbasis grafik tidak tersedia. Anda dapat menggunakan terminal sebagai peramban berkas untuk melihat berkas dan membatalkan perubahan yang telah dibuat.

Perintah linux
·         Command adalah program yang berinteraksi dengan kernel, yang disediakan oleh Linux dan melakukan fungsi yang bisa dipanggil oleh user
·         Command bisa berupa built-in shell command atau shell script
·         Shell adalah command line enterpreter yang menjembatani userdengan kernel
·         Shell berada diantara user dan operating system dan bertindak sebagai penerjemah perintah
·         Shell membaca input dari terminal dan menterjemahkan command ke bentuk tindakan oleh sistem. Shell adalah sebuah analog command prompt di DOS
·         Ketika anda login ke dalam sistem anda diberikan default shell
·         Ketika suatu shell mulai berjalan, ia membaca file startup dan melakukan seting environment variabel
·         Shell default adalah bourne shell(sh)
·         Bentuk prompt untuk bourne shell adalah $ dan # untuk root
·         Shell C default promptnya adalah %

User dapat menyimpan file dalam direktori nya masing-masing , karena direktori ini dimiliki oleh user yang bersangkutan dan merupakan tanggung jawab user tersebut. Bekerja dalam shell:
1.    Masuk atau log in kedalam system
2.    Mengetahui lingkungan kerja ( env )
3.    Melihat isi direktori ( ls )
4.    Perijinan dan proteksi 
5.    Pindah atau ganti direktori ( cd )
6.    Melihat lokasi kita berada saat bekerja ( pwd )
7.    Membuat direktori sendiri ( mkdir )
8.    Membuat file ( touch )
9.    Memindahkan atau mengganti nama file atau direktori ( nv )
10.    Mencopy file atau directory ( cp )
11.    Menghapus file atau direktori
12.    Melihat isi file
13.    Manual perintah atau man
Perintah-Perintah Dasar Linux
Menekan tab dua kali untuk melihat semua kemungkinan perintah yang dapat digunakan. Misalnya Anda ingin mengetahui perintah apa saja yang dimulai dengan huruf a, maka Anda cukup mengetikkan a lalu tekan tab dua kali.

Daftar Perintah Menurut Alfabet

&
Perintah & digunakan untuk menjalan perintah di belakang (background) Contoh:
wget http://id.wikibooks.org &
Perintah & dipakai dibelakang perintah lain untuk menjalankannya di background. Jalan  dibackground maksudnya adalah kita membiarkan sistem untuk menjalankan perintah sendiri tanpa partisipasi kita, dan membebaskan shell/command prompt agar bisa dipergunakan menjalankan perintah yang lain.

adduser
Perintah adduser digunakan untuk menambahkan user.Biasanya hanya dilakukan oleh root untuk menambahkan user atau account yg baru. Setelah perintah ini bisa dilanjutkan dengan perintah passwd, yaitu perintah untuk membuat password bagi user tersebut. Contoh:
# adduser nurannisa
# passwd nurannisa
Perhatikan bahwa semua perintah yang membutuhkan akses root, di sini saya tulis dengan dengan menggunakan tanda #, untuk memudahkan Anda membedakannya dengan perintah yang tidak perlu akses root.
Jika Anda menjalankan perintah adduser, Anda akan diminta memasukkan password untuk user yang Anda buat. Isikan password untuk user baru tersebut dua kali dengan kata yang sama.

alias
Digunakan untuk memberi nama lain dari sebuah perintah. Misalnya bila Anda ingin perintah ls dapat juga dijalankan dengan mengetikkan perintah dir, maka buatlah aliasnya sbb:
$ alias dir=ls
Kalau Anda suka dengan tampilan berwarna-warni, cobalah bereksperimen dengan perintah berikut:
$ alias dir=ls -ar –color:always
Untuk melihat perintah-perintah apa saja yang mempunyai nama lain saat itu, cukup ketikkan alias saja (tanpa argumen). Lihat juga perintah unalias.

bg
Untuk memaksa sebuah proses yang dihentikan sementara(suspend) agar berjalan di background. Misalnya Anda sedang menjalankan sebuah perintah di foreground (tanpa diakhiri perintah &) dan suatu saat Anda membutuhkan shell tersebut maka Anda dapat memberhentikan sementara perintah tersebut dengan Ctrl-Z kemudian ketikan perintah bg untuk menjalakannya di background. Dengan cara ini Anda telah membebaskan shell tapi tetap mempertahankan perintah lama berjalan di background. Lihat juga perintah fg.

cat
Menampilkan isi dari sebuah file di layar. Contoh:
$ cat /nama/suatu/file

cd
Perintah yang digunakan untuk mengubah direktori. Anda dapat berpindah dari satu direktori ke yang lain menggunakan perintah ini. Beberapa contoh diberikan di bawah ini.
Pertimbangkan Anda memiliki struktur direktori / home/user/test/test1/. menguji dan test1 adalah direktori di rumah pengguna.
Contoh 1:
Pertimbangkan Anda memiliki sebuah direktori "test" di/home/user. Direktori kerja Anda saat ini adalah /home/user. Anda ingin mengubah direktori Anda saat ini bekerja dari /home/user ke
/home/user/tes, gunakan perintah berikut:
[User @ ws26 ~] $ pwd
/ Home / user
[User @ ws26 ~] $ cd tes
[User @ ws26 ~] $ pwd
/ Home / user / test


Contoh 2:
Jika Anda ingin kembali ke /home/user, gunakan perintah berikut
[User @ ws26 ~] $ cd ..
[User @ ws26 ~] $ pwd
/ Home / user

Contoh 3:
Untuk kembali ke direktori home dari pengguna
[User @ ws26 ~] $ cd ~
[User @ ws26 ~] $ pwd
/Home/user.
 

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
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



cp
Perintah cp identik dengan perintah ‘copy’ pada MS-DOS. Perintah cp digunakan untuk mengcopy suatu file atau direktori.
$ cp

cp-R
Digunakan untuk mengcopy suatu direktori beserta seluruh isinya, misalnya :
$ cp –R /home/student_/data/backup
akan mengcopy direktori students yang berada dibawah direktori /home beserta seluruh isinya kedalam direktori/data/backup

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

grep
Global regular expresion parse atau grep adalah perintah untuk mencari file-file yang mengandung teks dengan kriteria yang telah Anda tentukan.
Format perintah:
$ grep

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

kill
Perintah ini akan mengirimkan sinyal ke sebuah proses yang kita tentukan.Tujuannya adalah menghentikan proses. Format penulisan:
$ kill
PID adalah nomor proses yang akan di hentikan. Tidak tahu PID proses mana yang mau dibunuh? Cobalah bereksperimen dengan perintah:
ps aux | grep

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.

ls
            Perintah ls adalah kependekan dari list digunakan untuk menampilkan isi suatu direktori. Perintah ini identik dengan  perintah ‘dir’ pada MS-DOS. Jika ls digunakan tanpa  parameter, ls akan menampilkan semua file dan direktori  didalam current direktory. Perintah ls jg bisa untuk  menampilkan daftar file dan direktori dibawah direktory  yang kita tentukanPenggunaan perintah ls juga bisa disertai option-option. Berikut option-option yang bisa menyertai perintah ls :     
a)      -a    menampilkan semua file atau direktori, termasuk yang berawalan dengan titik (.) pada sistem linux, file yang berawalan dengan titik dianggap sebagai hidden dan tidak akan terlihat oleh perintah ls tanpa option –a
b)      -F   menampilkan tanda slash (/) untuk direktory, tanda asterix (`) untuk file yang executable, tanda (@)untuk symbolic link, tanda (=) untuk socket, tanda (%) untuk whiteout, dan vertical bar (|) untuk FIFO -l menampilkan file dan direktori dalam tampilan lengkap yaitu terdiri dari nama file ukuran, tanggal di modifikasi, pemiliki, group, dan mode atributnya
c)      -R  jika terdapat direktori, isi direktori itu akan ditampilkan juga   

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 ls à Perintah ini digunakan untuk menampilkan bagaimana cara penggunaan perintah ls secara lengkap.

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.

mkdir
Perintah mkdir (MaKeDIRectory) untuk membuat direktori.
[User @ ws26 ~] $ mkdir directory3
Ini akan membuat direktori baru - directory3.

more
Mempaging halaman, seperti halnya less

mount
Perintah ini akan me-mount filesystem ke suatu direktori atau mount-point yang telah ditentukan. Hanya superuser yang bisa menjalankan perintah ini. Untuk melihat filesystem apa saja beserta mount-pointnya saat itu, ketikkan perintah mount. Perintah ini dapat Anda pelajari di bab mengenai filesystem. Lihat juga perintah umount.
$ mount
/dev/hda3 on / type ext2 (rw)
none on /proc type proc (rw)
/dev/hda1 on /dos type vfat (rw)
/dev/hda4 on /usr type ext2 (rw)
none on /dev/pts type devpts (rw,mode=0622)

mv
Untuk memindahkan file dari satu lokasi ke lokasi yang lain. Bila argumen yang kedua berupa sebuah direktori maka mv akan memindahkan file ke direktori tersebut. Bila kedua argumen berupa file maka nama file pertama akan menimpa file kedua. Akan terjadi kesalahan bila Anda memasukkan lebih dari dua argumen kecuali argumen terakhir berupa sebuah direktori.
 [User @ ws26 ~] $ mv directory2 directory1
Ini akan memindahkan seluruh directory2 ke directory1

passwd
Digunakan untuk mengganti password. Anda akan selalu diminta mengisikan password lama dan selanjutnya akan diminta mengisikan password baru sebanyak dua kali. Password sedikitnya terdiri dari enam karakter dan sedikitnya mengandung sebuah karakter.


pwd
Print working directory, atau untuk menampilkan nama direktori dimana Anda saat itu sedang berada.
Misalnya:
[User @ ws26 ~] $ pwd
/Home
/user 

rm
Perintah rm perintah (ReMove) akan menghapus setiap berkas yang Anda tentukan. Perintah rm -rf akan menghapus setiap direktori yang Anda tentukan.
rm
Sedangkan untuk menghapus sebuah direktori beserta seluruh isinya, gunakan  perintah sebagai berikut :rm –r

rmdir
Untuk menghapus direktori kosong.

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.

tail
Menampilkan 10 baris terakhir dari suatu file. Default baris yang ditampilkan adalah 10 tapi Anda bisa menentukan sendiri berapa baris yang ingin ditampilkan:
$ tail
·         contoh: tail –: melihat secara life baris-baris terakhir suatu file
·         contoh: tail -100 : melihat 100 baris terakhir suatu file

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
Contoh:
$ tar -czvf namaFile.tar.gz /nama/direktori/*
Perintah di atas digunakan untuk memasukkan semua isi direktori, lalu dikompres dengan format tar lalu di zip dengan gzip, sehingga menghasilkan sebuah file bernama namaFile.tar.gz
$ tar -xzvf namaFile.tar.gz
Perintah di atas untuk mengekstrak file namaFile.tar.gz

touch
Digunakan untuk menciptakan sebuah file baru yang belum pernah di buat atau belum ada
$ touch
$ touch belajar.txt

reboot
Perintah reboot digunakan untuk me-restart komputer
# reboot

umount
Adalah kebalikan dari perintah mount, yaitu untuk meng-unmount filesystem dari mount-pointnya. Setelah perintah ini dijalankan direktori yang menjadi mount-point tidak lagi bisa digunakan.
# umount

unalias
Kebalikan dari perintah alias, perintah ini akan membatalkan sebuah alias. Jadi untuk membatalkan alias dir seperti telah dicontohkan diatas, gunakan perintah:
$ unalias dir

unzip
Digunakan untuk mengekstrak atau menguraikan file yang dikompres dengan zip. Sintaknya sederhana dan akan mengekstrak file yang anda tentukan:
 $ unzip

vi editor
Editor Vi terutama digunakan untuk membuat file baru di Linux.
Contoh:
vi testfile
Perintah itu akan membuka jendela baru dan Anda dapat menyisipkan teks untuk itu.Untuk memulai tekan "i". Setelah menambahkan contect Anda tekan ": wq" untuk menyimpan file.

w
Perintah w digunakan untuk mengetahui siapa saja yang sedang bekerja (login) di komputer tersebut, misalnya :
Ex. [student@localhost student] $ w
  6:50pm   up   9:15       4 users        load average:
   USER               TTY          FROM                LOGIN     
    erik                   tty1               -                     12:00am
   risma                 tty2               -                     13:00am
    ade                   tty6               -                     15:00am 

wall
Mengirimkan pesan dan menampilkannya di terminal tiap user yang sedang login. Perintah ini berguna bagi superuser atau root untuk memberikan peringatan ke seluruh user, misalnya pemberitahuan bahwa server sesaat lagi akan dimatikan.
# wall Dear, everyone….. segera simpan pekerjaan kalian, server akan saya matikan 10 menit lagi.

who
Untuk menampilkan siapa saja yang sedang login. Perintah ini akan menampilkan informasi mengenai login name, jenis terminal, waktu login dan remote hostname untuk setiap user yang saat itu sedang login. Misalnya:
$ who
root ttyp0 May 22 11:44
flory ttyp2 May 22 11:59
pooh ttyp3 May 22 12:08

xhost +
Perintah ini digunakan untuk memberi akses atau menghapus akses(xhost -) host atau user ke sebuah server X.

xset
Perintah ini untuk mengeset beberapa option di X Window seperti bunyi bel, kecepatan mouse, font, parameter screen saver dan sebagainya. Misalnya bunyi bel dan kecepatan mouse dapat Anda set menggunakan perintah ini:
$ xset b
$ xset m

zip
Perintah ini akan membuat dan menambahkan file ke dalam file arsip zip. Lihat juga perintah gzip dan unzip.


by : Nur Annisa 
NIM : 1101221128