Laman

Kamis, 06 Januari 2011

LINUX


Sejarah
Sistem operasi Unix dikembangkan dan diimplementasikan pada tahun 1960-an dan pertama kali dirilis pada 1970. Faktor ketersediaannya dan kompatibilitasnya yang tinggi menyebabkannya dapat digunakan, disalin dan dimodifikasi secara luas oleh institusi-institusi akademis dan pada pebisnis.
Proyek GNU yang mulai pada 1984 memiliki tujuan untuk membuat sebuah sistem operasi yang kompatibel dengan Unix dan lengkap dan secara total terdiri atas perangkat lunak bebas. Tahun 1985, Richard Stallman mendirikan Yayasan Perangkat Lunak Bebas dan mengembangkan Lisensi Publik Umum GNU (GNU General Public License atau GNU GPL). Kebanyakan program yang dibutuhkan oleh sebuah sistem operasi (seperti pustaka, kompiler, penyunting teks, shell Unix dan sistem jendela) diselesaikan pada awal tahun 1990-an, walaupun elemen-elemen tingkat rendah seperti device driver, jurik dan kernel masih belum selesai pada saat itu. Linus Torvalds pernah berkata bahwa jika kernel GNU sudah tersedia pada saat itu (1991), dia tidak akan memutuskan untuk menulis versinya sendiri.


Perkembangan
Perkembangan Linux dimulai pada tahun 1991, ketika mahasiswa Finlandia bernama Linus Torvalds menulis Linux, sebuah kernel untuk prosesor 80386, prosesor 32-bit pertama dalam kumpulan CPU intel yang cocok untuk PC.
Pada awal perkembangannya, source code Linux disediakan secara bebas melalui Internet. Hasilnya, sejarah Linux merupakan kolaborasi banyak user dari seluruh dunia, semuanya dilakukan secara eksklusif melalui Internet. Dari kernel awal yang hanya mengimplementasikan subset kecil dari sistem UNIX, sistem Linux telah bertumbuh dimana sudah mampu memasukkan banyak fungsi UNIX.
Kernel Linux perlu dibedakan dari sebuah sistem Linux: kernel Linux merupakan sebuah perangkat lunak orisinil yang dibuat oleh komunitas Linux sedangkan sistem Linux, yang diketahui saat ini, mengandung banyak komponen yang dibuat sendiri atau dipinjam dari proyek lain.
Sistem Linux
Dalam banyak hal, kernel Linux merupakan inti dari proyek Linux, tetapi komponen lainlah yang membentuk secara komplit sistem operasi Linux. Dimana kernel Linux terdiri dari kode-kode yang dibuat khusus untuk proyek Linux, kebanyakan perangkat lunak pendukungnya tidak eksklusif terhadap Linux, melainkan biasa dipakai dalam beberapa sistem operasi yang mirip UNIX. Contohnya, sistem operasi BSD dari Berkeley, X Window System dari MIT, dan proyek GNU dari Free Software Foundation.
Pembagian (sharing) alat-alat telah bekerja dalam dua arah. Sistem perpustakaan utama Linux awalnya dimulai oleh proyek GNU, tetapi perkembangan perpustakaannya diperbaiki melalui kerjasama dari komunitas Linux terutama pada pengalamatan, ketidak efisienan, dan bugs. Komponen lain seperti GNU C Compiler, gcc, kualitasnya sudah cukup tinggi untuk dipakai langsung dalam Linux. Alat-alat administrasi network dibawah Linux berasal dari kode yang dikembangkan untuk 4.3BSD, tetapi BSD yang lebih baru , salah satunya FreeBSD, sebaliknya meminjam kode dari Linux, contohnya adalah perpustakaan matematika Intel floating-point-emulation.
Sistem Linux secara keseluruhan diawasi oleh network tidak ketat yang terdiri dari para pengembang melalui internet, dengan grup kecil atau individu yang memiliki tanggung jawab untuk menjaga integritas dari komponen- komponen khusus. Dokumen ‘File System Hierarchy Standard’ juga dijaga oleh komunitas Linux untuk memelihara kompatibilitas keseluruh komponen sistem yang berbeda-beda. Aturan ini menentukan rancangan keseluruhan dari sistem berkas Linux yang standar.
Linux Saat Ini
Saat ini, Linux merupakan salah satu sistem operasi yang perkembangannya paling cepat. Kehadiran sejumlah kelompok pengembang, tersebar di seluruh dunia, yang selalu memperbaiki segala fiturnya, ikut membantu kemajuan sistem operasi Linux. Bersamaan dengan itu, banyak pengembang yang sedang bekerja untuk memindahkan berbagai aplikasi ke Linux (dapat berjalan di Linux).
Masalah utama yang dihadapi Linux dahulu adalah interface yang berupa teks (text based interface). Ini membuat orang awam tidak tertarik menggunakan Linux karena harus dipelajari terlebih dahulu untuk dapat dimengerti cara penggunaannya (tidak user-friendly). Tetapi keadaan ini sudah mulai berubah dengan kehadiran KDE dan GNOME. Keduanya memiliki tampilan desktop yang menarik sehingga mengubah persepsi dunia tentang Linux.

Linux di negara-negara berkembang mengalami kemajuan yang sangat pesat. Harga perangkat lunak (misalkan sebuah sistem operasi) bisa mencapai US $100 atau lebih. Di negara yang rata-rata penghasilan per tahun adalah US $200-300, US $100 sangatlah besar. Dengan adanya Linux, semua berubah. Karena Linux dapat digunakan pada komputer yang kuno, dia menjadi alternatif cocok bagi komputer beranggaran kecil. Di negara-negara Asia, Afrika, dan Amerika Latin, Linux adalah jalan keluar bagi penggemar komput
Srtuktur direktori
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.



File linux
Halaman manual ini dokumen versi 3,39 dari perintah file.
Berkas tes setiap argumen dalam upaya untuk mengklasifikasikan itu. Ada tiga set tes, dilakukan dalam urutan ini: filesystem tes, tes angka ajaib, dan tes bahasa. Uji pertama yang berhasil menyebabkan jenis file yang akan dicetak.

Jenis dicetak biasanya akan berisi salah satu dari kata-kata teks (file hanya berisi mencetak karakter dan beberapa karakter kontrol umum dan mungkin aman untuk membaca pada sebuah terminal ASCII), executable (file berisi hasil kompilasi sebuah program dalam bentuk dimengerti untuk beberapa kernel UNIX atau yang lain), atau data yang berarti hal lain (data biasanya `biner 'atau non-cetak). Pengecualian adalah format file terkenal (file inti, arsip tar) yang diketahui mengandung data biner. Ketika memodifikasi file / usr / share / magic atau program itu sendiri, melestarikan kata kunci tersebut. Orang-orang bergantung pada tahu bahwa semua file dapat dibaca dalam sebuah direktori memiliki teks kata ''dicetak. Jangan melakukan seperti Berkeley lakukan dan mengubah teks perintah shell '' untuk shell script. Perhatikan bahwa file / usr / share / magic dibangun secara mekanis dari sejumlah besar file kecil di Magdir subdirektori dalam distribusi sumber dari program ini.

Pengujian sistem berkas didasarkan pada memeriksa kembali dari stat (2) system call.Memeriksa program untuk melihat apakah file kosong, atau jika itu semacam file khusus. Setiap jenis file yang dikenal sesuai dengan sistem anda berjalan pada (soket, link simbolik, atau pipa bernama (FIFOs) pada sistem-sistem yang mengimplementasikannya) yang berintuisi jika mereka didefinisikan dalam sistem file header Lt sys] /] stat.hGt .

Pengujian angka ajaib yang digunakan untuk memeriksa file dengan data dalam format tetap tertentu. Contoh kanonik ini adalah executable biner (program yang dikompilasi) file a.out, format yang didefinisikan dalam a.out.h dan mungkin exec.h dalam standar ini termasuk direktori. File-file ini memiliki sejumlah `ajaib 'disimpan di tempat tertentu dekat awal file yang memberitahukan sistem operasi UNIX bahwa file tersebut adalah executable biner, dan yang dari beberapa jenis daripadanya. Konsep `angka ajaib 'telah diterapkan oleh ekstensi untuk file data. Setiap file dengan invarian beberapa identifier di kecil tetap offset ke dalam file biasanya dapat digambarkan dengan cara ini. Informasi mengidentifikasi file ini dibaca dari file sihir dikompilasi / usr / share / magic.mgc, atau / usr / share / magic jika mengkompilasi file tidak ada.

Jika file tidak cocok dengan salah satu entri di file sihir, ia diperiksa untuk melihat apakah hal itu tampaknya menjadi file teks. ASCII, ISO-8859-x, non-ISO 8-bit extended-set karakter ASCII (seperti yang digunakan pada sistem Macintosh dan IBM PC), Unicode UTF-8-encoded, Unicode UTF-16-encoded, dan karakter EBCDIC set dapat dibedakan dengan rentang yang berbeda dan urutan byte yang merupakan teks dicetak di setiap set. Jika sebuah file melewati salah satu tes, set karakter yang dilaporkan.ASCII, ISO-8859-x, UTF-8, dan diperpanjang-ASCII file diidentifikasi sebagai teks ``''karena mereka akan kebanyakan dibaca di hampir setiap terminal; UTF-16 dan EBCDIC hanya data karakter karena ``'' , sementara mereka berisi teks, maka teks yang akan memerlukan terjemahan sebelum bisa dibaca. Selain itu, file akan mencoba untuk menentukan karakteristik lain dari file teks-tipe. Jika baris file tersebut diakhiri oleh CR, CRLF, atau Nel, bukan Unix-LF standar, ini akan dilaporkan. File yang mengandung escape sequence tertanam atau overstriking juga akan diidentifikasi.

Setelah file telah menetapkan set karakter yang digunakan dalam file teks-type, maka program akan mencoba menentukan dalam bahasa apa file ditulis. Tes bahasa mencari string tertentu (names.h cf) yang dapat muncul di mana saja di beberapa blok pertama dari file. Misalnya, kata kunci br menunjukkan. Bahwa file tersebut kemungkinan besar troff (1) file input, sama seperti kata kunci struct menunjukkan program C. Tes ini kurang dapat diandalkan dibandingkan dengan dua kelompok sebelumnya, sehingga mereka terakhir dilakukan. Tes Bahasa rutin juga menguji untuk beberapa varia (seperti tar (1) arsip).

Setiap file yang tidak dapat diidentifikasi sebagai telah ditulis dalam karakter set yang tercantum di atas hanya dikatakan data ``''.








PILIHAN

-B
Jangan tambahkan nama file ke baris output (mode singkat).
-C
Penyebab printout memeriksa dari bentuk diurai dari file sihir. Ini biasanya digunakan bersama dengan-m untuk debug file ajaib baru sebelum memasangnya.
-C
Menulis file output magic.mgc yang berisi versi pre-parsing file.
-F namefile
Bacalah nama-nama file yang akan diperiksa dari namefile (satu per baris) sebelum daftar argumen. Entah namefile atau setidaknya satu argumen nama file harus hadir, untuk menguji masukan digunakan, standar ``-'' sebagai argumen nama file.
-I
Penyebab perintah file untuk string jenis keluaran mime daripada yang lebih tradisional mudah dibaca manusia. Sehingga dapat dikatakan `` text / plain; charset = us-ascii''daripada''`` teks ASCII. Agar opsi ini untuk bekerja, perubahan file cara menangani file diakui oleh perintah itu sendiri (seperti banyak jenis file teks, direktori dll), dan membuat penggunaan sihir''`` alternatif file. (Lihat `` bagian FILES'', di bawah).
-K
Jangan berhenti pada pertandingan pertama, terus berjalan.
-M daftar
Tentukan daftar alternatif file berisi angka ajaib. Ini bisa menjadi file tunggal, atau daftar dipisahkan oleh titik dua file.
-N
Angkatan stdout akan memerah setelah memeriksa setiap file. Ini hanya berguna jika memeriksa daftar file. Hal ini dimaksudkan untuk digunakan oleh program yang ingin filetype output dari pipa.
-V
Cetak versi program dan keluar.
-Z
Cobalah untuk melihat ke dalam file yang dipadatkan.
-L
pilihan menyebabkan symlink yang harus diikuti, karena seperti-nama pilihan di ls (1).(Pada sistem yang mendukung link simbolik).
-S
Biasanya, file hanya berusaha untuk membaca dan menentukan jenis file argumen yang stat (2) Laporan adalah file biasa. Hal ini mencegah masalah, karena membaca file khusus dapat memiliki konsekuensi yang aneh. Menentukan pilihan-s menyebabkan file untuk juga membaca file argumen yang memblokir atau karakter file khusus. Hal ini berguna untuk menentukan jenis filesystem data dalam partisi disk mentah, yang blok file khusus. Opsi ini juga menyebabkan file untuk mengabaikan ukuran file seperti yang dilaporkan oleh stat (2) karena pada beberapa sistem itu laporan ukuran nol untuk partisi disk mentah.
 



LIHAT JUGA

deskripsi format file megic.
string (1), od (1), hexdump (1) - alat untuk memeriksa non-Berkas Teks.
STANDAR Kesesuaian

Program ini diyakini melebihi System V Interface Definisi FILE (CMD), sedekat yang bisa menentukan dari bahasa samar terkandung di dalamnya. perilaku adalah sebagian besar kompatibel dengan program System V dengan nama yang sama. Versi ini lebih tahu sihir, bagaimanapun, sehingga akan menghasilkan yang berbeda (meskipun lebih akurat) output dalam banyak kasus.
Perbedaan yang signifikan antara versi ini dan System V adalah bahwa versi ini memperlakukan setiap ruang putih sebagai pembatas, sehingga ruang dalam string pola harus diganti. Misalnya,
Gt] 10 bahasa string terkesan (Impress data)

dalam file sihir yang ada harus diubah menjadi
Gt] 10 bahasa string \ terkesan (Impress data)

Selain itu, dalam versi ini, jika pola berisi string backslash, itu harus di-escape.Misalnya
0 string \ begindata Andrew Toolkit dokumen

dalam file sihir yang ada harus diubah menjadi
0 string \ \ begindata Andrew Toolkit dokumen

SunOS rilis 3.2 dan kemudian dari Sun Microsystems menyertakan file (1) perintah yang berasal dari System V satu, tetapi dengan beberapa ekstensi. versi saya berbeda dari Sun hanya dengan cara kecil. Ini mencakup perpanjangan operator `Am] ', yang digunakan sebagai, misalnya,
Gt] 16 longAm] 0x7fffffff Gt] 0 tidak dilucuti
 

MAGIC DIREKTORI

Entri magic file telah dikumpulkan dari berbagai sumber, terutama USENET, dan kontribusi dari berbagai penulis. Christos Zoulas (alamat di bawah) akan mengumpulkan tambahan atau diperbaiki entri magic file. Sebuah konsolidasi entri magic file akan didistribusikan secara berkala.
Urutan entri pada file sihir adalah signifikan. Tergantung pada sistem apa yang anda gunakan, agar mereka disatukan mungkin salah. Jika perintah berkas lama Anda menggunakan file sihir, membiarkan file sihir tua sekitar untuk tujuan perbandingan (rename ke / usr / share / magic.orig).






CONTOH

$ File file file.c / dev / {wd0a, hda}
file.c: C teks program
file: ELF 32-bit LSB executable, Intel 80386, versi 1 (SysV),
          terkait secara dinamis (menggunakan shared libs), stripped
/ Dev/wd0a: block spesial (0 / 0)
/ Dev / hda: block spesial (3 / 0)
$ File-s / dev/wd0 {b, d}
/ Dev/wd0b: data
/ Dev/wd0d: x86 boot sector
$ File-s / dev / hda {, 1,2,3,4,5,6,7,8,9,10}
/ Dev / hda: x86 boot sector
/ Dev/hda1: Linux/i386 ext2 filesystem
/ Dev/hda2: x86 boot sector
/ Dev/hda3: x86 sektor boot, tabel partisi extended
/ Dev/hda4: Linux/i386 ext2 filesystem
/ Dev/hda5: Linux/i386 file swap
/ Dev/hda6: Linux/i386 file swap
/ Dev/hda7: Linux/i386 file swap
/ Dev/hda8: Linux/i386 file swap
/ Dev/hda9: kosong
/ Dev/hda10: kosong



$ File-i file file.c / dev / {wd0a, hda}
file.c: text / x-c
file: application / x-executable, dynamically linked (menggunakan shared libs),
tidak dilucuti
/ Dev / hda: application / x-tidak-biasa-file
/ Dev/wd0a: application / x-tidak-biasa-file
Partisi linux
Partisi adalah space/ruang dalam hardisk yang dibagi-bagi dengan kapasitas tertentu dengan file system tertentu.
Secara dasar, hardisk anda dapat dibagi menjadi maksimal 4 partisi primer. Dan salah satu partisi primer anda bisa digunakan sebagai partisi primer extended yang dapat di bagi menjadi partisi-patisi sekunder/logical partition. Partisi logika ini tidak memiliki batasan jumlah. Anda bisa membuatnya sebanyak mungkin. Asal hardisk-nya kuat! :-P.
Partisi adalah bagian yang amat esensial dalam GNU/Linux. Secara minimal, Linux hanya memerlukan dua partisi saja. Partisi Swap dan root (/).
Secara verbose (rinci), anda bisa saja membuat lebih dari dua partisi untuk GNU/Linux. Misalnya, partisi khusus untuk direktori /boot, /home, /usr, /bin, /var, /etc atau partisi tambahan lainnya.
Tapi, bagi pemula seperti saya, cukup membagi-nya menjadi 3 partisi saja. Partisi swap (2x RAM komputer saya), partisi root (/) untuk bernaungnya direktori lain, dan partisi /home untuk menyimpan data-data.
Partisi khusus untu direktori /home diperlukan untuk menghindari kehilangan data saat sistem anda crash dan perlu di-reinstalasi.
Setiap partisi memiliki kebutuhan file sistem (fs) tersendiri. Partisi swap ber-fs swap. partisi root (/) dengan kapasitas minimal 2 Gb, ber-fs (pilih saja) ext2, ext3 atau Reiserfs.
Bila anda meng-instal sistem operasi lain dalam komputer anda (multi-OS) anda akan membutuhkan partisi primer FAT/NTFS untuk Windows. Partisi primer BSD, untuk *BSD. Dan satu partisi swap untuk digunakan bersama-sama jika anda menginsta Linux lebih dari satu.
Mungkin anda juga membutuhkan sebuah partisi khusus untuk menampung dan mem-pertukarkan data-data, pastikan partisi ini ber-tipe FAT/FAT 32. File sistem jenis FAT/FAT 32 merupakan jenis file sistem yang dapat di baca dengan mudah oleh OS mana-pun.



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. Variabel
Isinya 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.

1 komentar: